RethinkDBのClientDriver(JavaScript)

表題の通り。先日インストールしたRethinkDBのClientDriverをインストールする。

■ 環境

  • RethinkDB 2.0.0
  • node v0.12.2
  • Mac OSX (10.9.5)

nodeは以前のエントリ『Homebrewでnodebrew』の通り、nodebrewで現時点での最新版をインストールした。

■ インストール

$ npm install rethinkdb
rethinkdb@2.0.0 node_modules/rethinkdb
└── bluebird@2.9.24

■ 動作確認

記載されているサンプルコードをそのまま使用してみる。

r = require('rethinkdb')
r.connect({ host: 'localhost', port: 28015 }, function(err, conn) {
  if(err) throw err;
  r.db('test').tableCreate('tv_shows').run(conn, function(err, res) {
    if(err) throw err;
    console.log(res);
    r.table('tv_shows').insert({ name: 'Star Trek TNG' }).run(conn, function(err, res)
    {
      if(err) throw err;
      console.log(res);
    });
  });
});

これをローカルに”rethinkdb.js“として保存した。

別途rethinkdbコマンドでサーバプロセスを起動し、下記のようにサンプルコードを実行する。

$ node rethinkdb.js
{ config_changes: [ { new_val: [Object], old_val: null } ],
  tables_created: 1 }
{ deleted: 0,
  errors: 0,
  generated_keys: [ '810104c1-ac45-4b7e-aeff-26d45db9db1d' ],
  inserted: 1,
  replaced: 0,
  skipped: 0,
  unchanged: 0 }

test“データベースに”tv_shows“テーブルを作成し、データを1件挿入する事ができたようである。

コンソールはそのまま返ってこなかった。ソースを見ると、データを挿入した後に特に”close“等の処理がないからであろう。”Ctrl-C“で中断させて終わらせた。

以上。

■ 関連

RethinkDBをMacにインストール

表題の通り。JSON型のデータベースで、リアルタイムWebアプリケーション向けだそうだ。気になる。”2.0“がリリースされたとの事なのでインストールしてどんなものか使ってみたい。

■ 環境

  • RethinkDB 2.0.0
  • Mac OSX (10.9.5)
  • Homebrew

■ インストール

公式ページにはパッケージもあるが、Homebrewでインストール可能なのでこちらで行う。

$ brew update
$ brew info rethinkdb
rethinkdb: stable 2.0.0-1 (bottled)
http://www.rethinkdb.com/
Not installed
From: https://github.com/Homebrew/homebrew/blob/master/Library/Formula/rethinkdb.rb
==> Dependencies
Build: boost ✘
Required: openssl ✘, icu4c ✘
==> Caveats
To have launchd start rethinkdb at login:
    ln -sfv /usr/local/opt/rethinkdb/*.plist ~/Library/LaunchAgents
Then to load rethinkdb now:
    launchctl load ~/Library/LaunchAgents/homebrew.mxcl.rethinkdb.plist
$
$ brew insall rethinkdb

■ 動作確認

公式ページの『Thirty-seconds quickstart』を読んでみると、rethinkdbのサーバプロセス起動後に”localhost:8080“にブラウザでアクセスしてみると何か見られるらしい。

$ rethinkdb
Recursively removing directory /Users/withsin/rethinkdb_data/tmp
Initializing directory /Users/withsin/rethinkdb_data
Running rethinkdb 2.0.0-1 (CLANG 6.0 (clang-600.0.57))...
Running on Darwin 13.4.0 x86_64
Loading data from directory /Users/withsin/rethinkdb_data
warn: Cache size does not leave much memory for server and query overhead (available memory: 359 MB).
warn: Cache size is very low and may impact performance.
Listening for intracluster connections on port 29015
Listening for client driver connections on port 28015
Listening for administrative HTTP connections on port 8080
Listening on addresses: 127.0.0.1, ::1
To fully expose RethinkDB on the network, bind to all addresses by running rethinkdb with the `--bind all` command line option.
Server ready, "sin_local_i4z" b486e3e1-807f-493f-a9a4-81390d374d6e

起動したのでブラウザでアクセスする。

rethinkdb-001

確かにアクセスできた。

でもその後の『Run some queries』がよくわからない。。GoogleChromeを使用しているのだが、”Data Explorer tab“が何を示しているのかがわからない。。”JavaScriptコンソール“で記載されているコマンドを実行してみたがイメージしている結果は得られなかったし、”test“データベースにテーブルも作成できていないようだ。

しかし、”localhost:8080“の画面からはテーブルを作成することもできた。とりあえずはよしとしておこう。次はClientDriverでアクセスし操作を行ってみたい。

以上。

■ 関連