こんにちは、SSTDの大村です。この記事はTreasure Dataを使ってみよう! その1の続きです。
ログイン
それでは次はチュートリアルのステップ2に従って、自分の領域を利用するためにログインしましょう。
>td account -f
コマンドラインに上のコマンドを入力したら
Enter your Treasure Data credentials.
Email:
と表示されるので登録したメールアドレスを入力します。
Password (typing will be hidden):
次はパスワードです。入力しても何も表示されませんが、パスワードを打ち終わったらEnterしましょう。
Authenticated successfully.
Use ‘td db:create ‘ to create a database.
と表示されれば成功です。
データーベースとテーブルの作成
次にチュートリアルのステップ3に沿って、データベース、テーブルの作成とサンプルデータのインポートを行ってみましょう。
まずはデータベースを作成します。この辺はよくあるデータベースの利用方法と同じですね。
>td db:create testdb
Database ‘testdb’ is created.
Use ‘td table:create testdb <table_name>’ to create a table.
testdbという名前のデータベースを作成しました。確認してみます。
>td db:list
+——–+——-+
| Name | Count |
+——–+——-+
| testdb | 0 |
+——–+——-+
1 row in set
次はテーブルを作成します。
>td table:create testdb www_access
Table ‘testdb.www_access’ is created.
testdbデータベースにwww_accessというテーブルを作成しました。確認してみます。
>td table:list
+———-+————+——+——-+——–+————-+——–+
| Database | Table | Type | Count | Size | Last import | Schema |
+———-+————+——+——-+——–+————-+——–+
| testdb | www_access | log | 0 | 0.0 GB | | |
+———-+————+——+——-+——–+————-+——–+
1 row in set
テーブルができたことが確認できました。
サンプルデータのインポート
それではすでに用意されているサンプルデータを先ほど作成したwww_accessテーブルにインポートしてみましょう。
まずはサンプルデータを取得します。
>td sample:apache apache.json
このコマンドを打つと、コマンドプロンプトの実行フォルダにapache.jsonというファイルが作成されます。実行フォルダはWindowsだとコマンドプロンプトの>の左側に書いてあるパスです。同じパスの場所をエクスプローラで探してみてください。メモ帳などでapache.jsonを開いてみましょう。
{“host”:”128.XXX.XXX.XX”,”user”:”-“,”method”:”GET”,”path”:”/item/sports/2511″,”code”:200,”referer”:”https://www.google.com/search?ie=UTF-8&q=google&sclient=psy-ab&q=Sports+Electronics&oq=Sports+Electronics&aq=f&aqi=g-vL1&aql=&pbx=1&bav=on.2,or.r_gc.r_pw.r_qf.,cf.osb&biw=3994&bih=421″,”size”:95,”agent”:”Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.7 (KHTML, like Gecko) Chrome/16.0.912.77 Safari/535.7″,”time”:1366101658}
{“host”:”224.XXX.XXX.XX”,”user”:”-“,”method”:”GET”,”path”:”/category/electronics”,”code”:200,”referer”:”-“,”size”:43,”agent”:”Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)”,”time”:1366101657
apacheのログのようなサンプルデータが確認できると思います。ここで見ていただきたいのはこのデータがjson形式だということです。json形式の説明はインターネットにお任せしますが、Treasure dataにデータをインポートするときはこのjson形式かmessagepack形式でインポートすることになります。この辺についてはまた後ほどの記事で触れていきますね。
それでは作ったテーブルにデータをインポートしましょう。
>td table:import testdb www_access –json apache.json
importing apache.json…
uploading 117365 bytes…
imported 5000 entries from apache.json.
done.
5000件のデータをインポートできました!早速確認してみましょう。
C:\Users\admin>>td table:list
+———-+————+——+——-+——–+—————————+——–+
| Database | Table | Type | Count | Size | Last import | Schema |
+———-+————+——+——-+——–+—————————+——–+
| testdb | www_access | log | 5,000 | 0.0 GB | 2013-04-03 13:58:39 +0900 ||
+———-+————+——+——-+——–+—————————+——–+
1 row in set
先ほど0だったCountが5,000になっていることが確認できました。これでTreasure Dataにデータをいれることができました。
クエリーを書いてみよう
通常のデータベースのようにSQLを利用して内容を確認することができます。早速、クエリSQLを送信してみましょう。
>td query -w -d testdb “SELECT v[‘code’] AS code, COUNT(1) AS cnt FROM www_access GROUP BY v[‘code’]”
testdbに対してその後のSQLを送っています。SQLの意味はcode別の件数の一覧を取得するものですね。Treasure Dataではjson形式のまま保存されているカラムはv[‘code’]のようにv[]で囲んで指定する必要があります。
しばらく待っていると結果が表示されます。
Status : success
Result :
+——+——+
| code | cnt |
+——+——+
| 200 | 4981 |
| 500 | 2 |
| 404 | 17 |
+——+——+
3 rows in set
Treasure Dataを活用していこう!
ここまでチュートリアルを実行するとTreasure Dataのダッシュボードの変化に気がつくと思います。左側にメニューが表示され、ダッシュボードではjobの様子やデータ量を確認することができるようになります。
ここからあなたのTreasure Dataライフがはじまります。Treasure Dataにビッグデータをためてさまざまなことに利用してください!!