Download ppt - 03 Getting Started

Transcript
Page 1: 03 Getting Started

03.Getting Started

- for RelaxCafe@CouchDB break.1 - 2009/9/11(Fri)

z.ohnami

Page 2: 03 Getting Started

z.ohnami( ゼットオオナミ ) といいます• 本名 → 大波 誠 • DB に縁がある人生

o DB2( メインフレーム )o DB 設計の標準化o CouchDB

• @IT にて最近記事を書きました • いくつか勉強会を開催しています

o 社内勉強会 o 天下イヒ仮想化技術大会  9 月 29 日  19:30 よりo  

Page 3: 03 Getting Started

CouchDB といえばリラックスですよね。と、いうことで、話の途中でリラックスできるかもしれない内容を随所に盛り込みました。こちらも一緒にみてみましょう。

Page 4: 03 Getting Started
Page 5: 03 Getting Started
Page 6: 03 Getting Started
Page 7: 03 Getting Started

この章の構成• All systems are go !!• Welcome to Futon • Your First database and document• Running a Query Using Map & Reduce• Triggering Replication

Page 8: 03 Getting Started

All systems are go !!

Raw API

Page 9: 03 Getting Started

All systems are go !!

Everything is done   using GET, PUT, POST and DELETE with a URI

Page 10: 03 Getting Started

こんな DB だよHTTP メソッドでアクセス• GET• PUT• POST• DELETE

JSON 形式のデータが返ってくる。{  name:"z.ohnami",  phone:"555",  blood:"AA"}

http:// サーバー名 :5984/DB 名 / ドキュメント名

Page 11: 03 Getting Started

All systems are go !!

• curl コマンドは -v オプションを付けると、詳細が表示されてデバッグに便利です。

Page 12: 03 Getting Started
Page 13: 03 Getting Started
Page 14: 03 Getting Started

Beer bar TALO http://www.toritoku.com/talo/index.html

Page 15: 03 Getting Started

Welcome to Futon

Page 16: 03 Getting Started

Welcome to Futon

• ひととおり、なんでもできるo ビュー作成 o CRUDo レプリケーション、コンパクション

 • テストスイートまで用意されている

o 稼動確認としてo ベンチマークとして

Page 17: 03 Getting Started
Page 18: 03 Getting Started

Your First database and document

• Hello world 的なものを促す • _id と _rev についてo_id → uuid を使えるよ

プログラムする場合は uuid を使おう!!

o_rev → ドキュメントを変更すると自動的に変わるよ

Page 19: 03 Getting Started
Page 20: 03 Getting Started
Page 21: 03 Getting Started

Running a Query Using Map & Reduce

• View を使ってドキュメントの出力を変更o Map & Reduceo View で key を指定

ドキュメント群に複数の Key を指定できるo 最初は Index の構築をするから時間がかかる o temp_view もあるよ

Page 22: 03 Getting Started

あるドキュメント{   "_id" : "bc2a41170621c326ec68382f846d5764",   "_rev" : "2612672603",   "item" : "orange",   "prices" : {     "Fresh Mart" : 1.99,     "Price Max" : 3.19,     "Citrus Circus" : 1.09   }}

Page 23: 03 Getting Started

そのドキュメントをさばくビュー (map)function(doc) {   var store, price, value;   if (doc.item && doc.prices) {     for (store in doc.prices) {       price = doc.prices[store];       value = [doc.item, store];       emit(price, value);     }   }}

Page 24: 03 Getting Started
Page 25: 03 Getting Started

rit barhttp://rit-bar.net/main.html ピアノ演奏 渾身のカクテル

Page 26: 03 Getting Started

Bar ICEhttp://orange.zero.jp/zab32985.sky/index.html すこしカジュアル  3~4 人も OK

Page 27: 03 Getting Started

Triggering Replication

• Futon から実行できますo Push,Pull の両方が可能

• localhost だとたまに失敗するらしい。o 127.0.0.1 のほうがいいらしい。

• 大量データをレプリケーションする場合o 時間がかかる

Futon はブラウザをそのままにしてねcurl でバッチ処理にしたほうがいい 途中でコネクションが切れたら、再実行

再実行時は残っているものだけが対象!!ハラショー!!

Page 28: 03 Getting Started

おしまい