AWS データチームガイド
AWS データチームガイド
コンテキスト
データプラットフォームチームは以下をサポートするために AWS を使用しています:
- Snowplow
さらに、他のパイプラインがデータの保存に S3 バケットを使用しています:
- just global
- greenhouse
AWS へのアクセス取得
DataEngineeringAccessという役割名をリクエストする AR を記入する必要があります。詳細はこの Issue コメントをご覧ください。
AWS CLI
場合によっては、コマンドラインからアクションを実行する必要があります。たとえば、S3 内のファイルをクエリしたいが、UI の「S3 Select」を使用するためのファイルサイズ制限を超えている場合は、代わりにコマンドラインからクエリする必要があります。
AWS CLI のインストール
「オンボーディングテンプレート」で、すでに AWS CLI をインストールしているはずです。まだの場合は今すぐインストールしてください。
AWS CLI での認証
- Okta 経由で
AWS access portalに移動してください gitlab SaaS productionアカウントで、DataEngineeringAccessロールの横にあるAccess keysをクリックしてください- 以下の情報をコピーしてください
- SSO スタート URL
- SSO リージョン
- コマンドラインで
aws configure ssoを実行してください- 保存した情報を入力するよう求められます
- その後、インターネットブラウザに確認を求めるポップアップが表示されます
- 最後に、シェルで以下を選択・入力してください:
- プロジェクトを選択してください(例:
gitlab SaaS production) - ロールを選択してください(例:
DataEngineeringAccess) - リージョンなど残りのプロンプトは、<Enter> を入力してデフォルト値を使用してください
- プロジェクトを選択してください(例:
- 認証後、
--profile DataEngineeringAccess-8552xxxxx引数を追加して通常通り AWS CLI コマンドを実行してください。CLI プロンプトがこれを含めるよう通知します。
コマンド例
CLI を使用した「S3 select」コマンドの例:
aws s3api select-object-content \
--bucket datateam-just-global-campaigns \
--key datateam-just-global-campaignsInfo/2024-12-19-GitLab_Analytics_Export_JG-from-2023-07-01-until-2024-12-15.csv \
--expression "SELECT * FROM s3object LIMIT 5" \
--expression-type 'SQL' \
--input-serialization '{"CSV": {"FileHeaderInfo": "NONE"}}' \
--output-serialization '{"CSV": {}}' \
--profile DataEngineeringAccess-8552xxx \
output.csv
