A collection of notes and resources
# Glue Data Catalogからデータを取得する
dynamic_frame = glueContext.create_dynamic_frame.from_catalog(
database="my_database",
table_name="my_table"
)
# DynamicFrameをS3にParquet形式で書き出す
glueContext.write_dynamic_frame.from_options(
frame=dynamic_frame,
connection_type="s3",
connection_options={"path": "s3://my_bucket/output/"},
format="parquet"
)
# Glue Data Catalogから直接データ取得する
glueContext.write_dynamic_frame.from_catalog(
database="my_database",
table_name="my_table",
connection_options={"path": "s3://my_bucket/output/"},
format="parquet"
)
OPTIMIZE sales_data REWRITE DATA USING BIN_PACK;
-- athenaからParquet形式でS3にデータをエクスポート
UNLOAD 's3://my-bucket/output/'
SELECT * FROM customer_data
WHERE age > 30
WITH (format = 'PARQUET');
Amazon Data Firehose 配信ストリームを設定し、Lambda バックエンドで必要な変換をして Splunk を宛先として使用します。CloudWatch Logs のサブスクリプションフィルタを作成して、ログイベントを配信ストリームに送信します。DMS のレプリケーションインスタンスは、ターゲットリージョン(データが転送される側)に作成するのが一般的なベストプラクティスである。このケースでは、ターゲットリージョンは us-west-1 であるため、us-west-1 リージョンでレプリケーションインスタンスを作成する。
異なるアカウント間でのデータレプリケーションを行うには、必要な権限をクロスアカウントで設定する必要がある。ソースアカウント(us-east-1)において、DMS レプリケーションインスタンスが RDS にアクセスできるよう、IAM ロールで適切なポリシーを設定する。ターゲットアカウント(us-west-1)にも同様のアクセス権限を付与する。
また、us-east-1 の RDS インスタンスと us-west-1 の DMS レプリケーションインスタンスが通信できるように、必要なネットワーク設定を行う必要がある。
EC2 -> Kinesis DataStreams -> Firehose->CloudWatch Logsの Firehose でのデータ変換過程とか