ダウンロードとインストール
AWS Documentation: コンピュータでの DynamoDB の実行
bash
wget http://dynamodb-local.s3-website-us-west-2.amazonaws.com/dynamodb_local_latest.tar.gz
tar xzvf dynamodb_local_latest.tar.gz
起動
java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -sharedDb
-
-dbPath
を指定すると、DBファイル格納フォルダを指定できるため、Vagrantでフォルダ共有とかする場合は便利。 -
-sharedDb
をつけると指定されたリージョンごとのDBファイルではなく、単一のファイルにデータが格納される。
アクセス方法
CLIから
AWS Documentation:ローカルエンドポイントの設定
aws dynamodb list-tables --endpoint-url http://localhost:8000
JavaScript(node)SDKから
aws_sdk
var AWS = require("aws-sdk");
AWS.config.endpoint = new AWS.Endpoint('http://localhost:8000');
var db = new AWS.DynamoDB();
db.listTables(function(err, data) {
console.log(data.TableNames);
});
dynamooseモジュールから
with_dynamoose
var dynamoose = require("dynamoose");
dynamoose.AWS.config.endpoint = new dynamoose.AWS.Endpoint('http://localhost:8000');
var Cat = dynamoose.model('Cat', { id: Number, name: String });
var garfield = new Cat({id: 666, name: 'Garfield'});
garfield.save();
Cat.get(666)
.then(function (badCat) {
console.log('Never trust a smiling cat. - ' + badCat.name);
});
GUI(SQLite browser)から
stackoverflow:dynamodb-client-in-local-with-ui-like-phpmyadmin
DynamoDB LocalはSQLiteをバックグランドで使っているのでSQLite Database Browser上で中を見ることが出来るようです!!!!!!
ローカルのDynamoDBをデータベースパスを指定して起動
java -Djava.library.path=. -jar DynamoDBLocal.jar -dbPath /vagrant_data/dynamodb_data
SQLite Database Browserを起動、Open DatabaseからDynamoDB起動時に指定したパスのXXX.dbファイルを開く
- Windows上のVagrantで起動しているDynamoDB localでも、Vagrantの共有フォルダにDBファイルを出力するようにしておけば、GUIで見れるし、SQLが使えます。
- DynamoDB localのデフォルトでは、起動したjarファイルと同じ場所にDBファイルが出力されます。
Javascript Shellから
インタラクティブなチュートリアルが用意されています。優し~い!
ブラウザから以下にアクセスするとWebからJSのコードでDynamoDB localをいじれます
http://localhost:8000/shell
Vagrantや、リモートの場合は動いているサーバーのURLに適宜変えてくださいませ~。