AWS

QuickSightを試してみる②【S3とサンプルデータ準備】

AWS

前回はQuickSightの申し込みまでを行いました。
https://syachiku.net/amazon-quicksight01/

今回は実際のデータを見える化するために必要なAmazon S3の準備を行っていきます。

1. S3バケットの作成

まず、見える化するデータを保存するためのバケットとフォルダを作成します。
今回は「quicksight-gogolon-test」という名前で作成して、その下にフォルダを作成します。

2. サンプルデータの作成スクリプトを準備

既にデータがある場合には不要ですが、サンプルデータを作成するためのスクリプトを作成します。

日時とランダム数字、あとはランダム数字に応じてHigh、Lowを判断するくらいのスクリプトを作成します。

主な仕様としては以下です。

  • 0~10の範囲でのランダム数字を取得、5以上ならHigh、4以下ならLowを記録
  • 実行時間とランダム数字、HighかLowの結果をCSVファイルに記載
  • 1秒に1回実施
  • 1分単位でファイル(datas/%Y%m%d_%H%M.csvに追記

スクリプトはこんな感じです。

import csv
import time
import random
from datetime import datetime

def quicksight_sample():
    while True:
        random_number = random.randint(0, 10)
        CSV_FILE = "datas/"+datetime.now().strftime('%Y%m%d_%H%M')+".csv"

        result = "Low"
        if random_number >= 5:
            result = "High"

        print(datetime.now().strftime('%Y-%m-%d %H:%M:%S')+","+str(random_number)+","+result)
        data = [datetime.now().strftime('%Y-%m-%d %H:%M:%S'), random_number,result]

        with open(CSV_FILE, 'a', newline='', encoding='utf-8') as f:
            writer = csv.writer(f)
            writer.writerow(data)

        time.sleep(1)

if __name__ == '__main__':
    quicksight_sample()

結果としてはこんな感じで1分単位でのファイルを蓄積されていきます。

今回は以上となります。

コメント