Amazon Timestream のテーブルへ、AWS CLI からデータ書き込みする方法です。
知っておくと、素早く Amazon Timestream の検証ができます。
動作確認
WSL2 の Ubuntu 20.04 と AWS CloudShell で確認しています。
※ uuidgen
コマンドはだいたい入ってるっぽいですね。
WSL2側
❯ aws --version
aws-cli/2.2.40 Python/3.8.8 Linux/5.10.16.3-microsoft-standard-WSL2 exe/x86_64.ubuntu.20 prompt/off
AWS_CloudShell側
$ aws --version
aws-cli/2.2.15 Python/3.8.8 Linux/4.14.243-185.433.amzn2.x86_64 exec-env/CloudShell exe/x86_64.amzn.2 prompt/off
書き込みの条件は以下の通り
Amazon Timestream 側
- データベース名 =
tsdb1
- テーブル名 =
data1
書き込みデータ
- ディメンション 1つめ
- 名前:
iid
- 値: uuidgen で生成した値
- 名前:
- ディメンション 2つめ
- 名前:
d1
- 値:
example1
- 名前:
- メジャー (1つのみとしました)
- 名前:
val1
- 値:
$RANDOM
で動的生成した値 - 値の型:
BIGINT
- タイムスタンプ:
date +%s%3N
で動的生成した値
- 名前:
実際のコマンドライン
export DB="tsdb1"
export TBL="data1"
export IID=$(uuidgen)
aws timestream-write write-records --database-name ${DB} --table-name ${TBL} --records "Dimensions=[{Name=iid,Value=${IID}},{Name=d1,Value=example1}],Time=$(date +%s%3N),MeasureName=val1,MeasureValueType=BIGINT,MeasureValue=${RANDOM}"
確認 (Amazon Timestream のクエリー)
SELECT * FROM "tsdb1"."data1" ORDER BY time DESC LIMIT 10
結果
あとがき
--records
のオプションはRecord - Amazon Timestreamをご覧ください。
EoT