0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

DQLでAWS DynamoDBからローカルにファイルを保存

Last updated at Posted at 2021-03-25

DynamoDB上にあるテーブルから大量のデータをエクスポートしようとすると手動ではとても大変です。

そういう時にDynamoDBを操作するツールDQLを使う便利なので、DQLを使ってダウンロードしてきたデータをファイルに保存する方法を明記します。

開発環境
OS: Mac
DQL: version 0.6.1
saml2aws: version 2.26.3

DQLのインストール

terminal
$ pip3 install dql
terminal
dql --version
0.6.1

AWSへの接続はsaml2awsを使います。

(saml2awsインストール方法はこちらを参考にしてください)

$ saml2aws login

これでAWSの自分のアカウントと接続できているので接続先のリージョンを指定します。

export AWS_PROFILE=saml (←自分で決めたプロファイル名)
export AWS_REGION=ap-northeast-1 (←Dynamoを設置しているリージョン)

環境変数の設定が終わったらDQLでDynamoにアクセスできるようになります。

$ dql
ap-northeast-1>

あとはデータをセレクトして、保存するコマンドを実行します。
("table_name"という名前のテーブルから全件検索し、"file_name.csv"というファイルでローカルに保存します。

この時、少し注意したいのがコマンドを実行した時にカレントディレクトリにファイルが保存されます。
必要に応じてディレクトリを移ってください。
opt allow_select_scan trueはスキャンをするためのオプションなのでコマンド実行前に設定しておきます。

opt allow_select_scan true
SELECT * FROM table_name SAVE file_name.csv;
Saved 100000 records to file_name.csv
ap-northeast-1>

このように出たら完了です。

参考ページ
saml2awsでSAML認証を用いたaws cliの利用を簡単にした

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?