CouchDB

cloudant.com のアカウントをゲットした。

cloudant.com は CouchDB のホスティングサービスです。数ヶ月前にprivate betaの応募はしていたのですが、特に向こうから反応があるわけでもなく、全然使えていませんでした。どうやったらアカウントがゲットできるのか、謎のまま。で、ふとしたことから、t…

最速追加

/_config と /_restart について追加しました。local.ini をいじるのはやめましょう。

External Process について

id:shase_lab さんの記事がでてました。http://www.atmarkit.co.jp/fdb/rensai/09_couchdb/03/couchdb01.htmlP.3にJScriptがでてきたり、Windowsへのインストール方法が説明されていたりするので、広まりそうですね。ところでExternal Processについては少し…

CouchDB上のCommonJS

(たしかRelaxed Incの) @mikell 先生がView Server作っていました。http://github.com/mikeal/node.couch.js/blob/master/viewserver/main.jsCouchDB ViewServer間のプロトコルって、こんなに簡単だったっけ?という感じではあるものの(CouchDBについている…

CouchDB基礎文法? 最速マスター

巷ではプログラミング言語の最速マスターが流行ってるので、CouchDBも参戦。ただしアプリケーション開発者向け*1。http://dl.dropbox.com/u/219436/CouchDB/PythonHackathon3/handson/_build/html/90_quickmaster.html どう考えても show とか list とか Cou…

単なる思いつきですが、

CouchDBをアプリケーションサーバー、MongoDBをデータベースサーバーとして、3層Webシステムを組む、というのは以外と面白いかもしれません。いままで、WebでCacheといえば、DBから読んだデータのRead Cacheだったわけですが、CouchDBをフロントにおくことで…

Mongoと比較

http://blog.madoro.org/mn/35 という記事を読みました。ここ数ヶ月CouchDBで作ったアプリをMongoに移してみたりしたりとかもあったので、もちょっとコメントします。 複雑なViewを作ろうとすると挫折する。(例えば、A:B=1:N と B:C=1:N のような構造で、Cを…

32bit環境で32bit以上のNumberが取り扱えない

CouchDBの問題というか、大本のSpiderMonkeyの問題のようです。以下のコードをSpiderMonkey上で実行したら、SEGVで落ちました。 var a = 2147483647; var b = 2147483648; print(a.toString()); print(b.toString());twitter のタイムラインのドキュメントで…

Pluggable CouchDB

自宅の録画機(Win)が6年目で寿命っぽいので、いままでサーバーに使っていたML115が録画機になってしまいました。Windows 7の時代です。といっても、サウンドカードもついていない、グラボもオンボードで1024x768しかない、というものですが、MacのWoLクライ…

OSC Tokyo 2010 Spring

http://www.ospn.jp/osc2010-spring/modules/eguide/event.php?eid=35ということで、KVSの影に隠れて実は使われ始めている(かつ、Dominoのように衰退しつつ?あるものも)、ドキュメント指向の集まりになりました。NoSQLに惑わされつつある人が、memcache系の…

node.js を使ってみる

CommonJSをCouchDB上で動かしてみる試み、ということで、node.js(http://nodejs.org/) を試します。Mac OS X 10.6, CouchDB 0.10.1, node.js 0.1.26 です。 $ ./configure $ make $ sudo make install でインストール完了。/opt/local/bin/node ができあがっ…

CommonJS

id:hagino_3000 さんの発表をきいて、確かに、CommonJSの動きでserver side js のライブラリが充実してくるのなら、CouchDBの上で動かないといろいろと不便になりそうだな、と思った次第なので、ちょっと調べてみよう。SpiderMonkey ベースの実装があれば、…

Hands-on

http://dl.dropbox.com/u/219436/CouchDB/PythonHackathon3/handson/_build/html/index.html typoだらけで、まだ完成していませんが。本の翻訳もネズミがかじったような抜け状態ですが、あわせてどうぞ。 http://dl.dropbox.com/u/673631/couchdb/html/index…

発表資料。

一度だけやってみたかった「CouchDBは21世紀のLotus Notes/Dominoである」というテーマで挑んだら、案の定、というかNotesユーザーいねぇーーーって状況で、ごめんなさい、でした。もうやりません。Couch DB in 15minutesView more documents from yssk22.最…

Python Hackation #3 で話します。

http://d.hatena.ne.jp/yssk22/20100108#1262965119 で少し書きましたが、来週23日(土)の予定がゲットできなそうな雰囲気(講演会の当選通知が来ない...)なので、Python Hackathon に行くことになります。CouchDBの紹介(15min)と、Hands-on やります。すごい…

Hackathon シナリオを Relaxon で作る。

やりながら更新。といっても、当日のお楽しみもあるので目次だけをこちらに転載。はじめての方がいるので、一緒に(というか私がごちゃごちゃいいながら)やってます。 13:30 - 14:30 基本操作 CouchDB のインストール Futon の操作 データベース作成削除 ドキ…

Relaxon その他ネタ。

最後は少し無理矢理気味に参加者の方にいろいろ話してもらいました。2chストレージの話。待ってます。というか2chまとめストレージでもいいかもw災害情報ストレージの話。bash 4.0 に実装されている配列機能を使おうとしているところを初めて見た。高度に発…

CouchDB何に使えるの、の追記。

id:shase_lab さんがいっていた、syslog ストアとか、システム管理系のサーバー実装にはすごく向いているんじゃないか、と確かに。 データ構造が柔軟なので、あらゆるイベントを管理できる。 _changes 等を使えば、管理サーバーに通知されたイベントをプッシ…

CouchDB Relaxon + Python Hackathon

http://d.hatena.ne.jp/Voluntas/20091116/1258353971お誘いいただいたので、前向きにネタ(CouchDB + Python = Raindropあたりで)ネタを作っていこうと思っているのですが、ちょうど同じ日の夕方に新潟にいかなければならなさそうなのです。atnd 見るとすご…

予想以上にたまる。

2日弱で15キーワード、37919 tweet、0.5 GB でした。 Disk は、クローリングタスク用のドキュメントが、何回もupdateをしているので、その分だけ履歴がたまっていっているためにディスクを消費していたので、コンパクション!と唱えてやることで50MBぐらいま…

Twitter の検索結果を保管しておいてくれるアプリケーション

http://d.hatena.ne.jp/yssk22/20100102#1262278416 の続きです。ひとまず、最低限は動くようになったので我が家にデプロイしておきました。http://www.yssk22.info/tstore/_design/search/_show/top/デモ用途なので、結果が飛んだらごめんなさい、ですが、…

update フィルタと validation のコンビネーションでHTTPを制御する。

http://d.hatena.ne.jp/yssk22/20091212/1260617233 に書いたupdateフィルターですが、こんなことをしたくなるかもしれません。 // test/updates/foo.js function(doc, req){ var v = parseInt(req.form.value) if( v > 0 ){ doc.value = v; return [doc, "O…

検索結果をCouchDBにとっておく。

昨日、twitter のTLで流れてはっとしたのですが、確かにtwitterの検索結果、履歴がさかのぼれなくなることがあって、これはこれで不便だなぁ、というときがあります。ということで、例によってCouchDBに放り込んじゃいましょう。今回は年も変わったというこ…

検索結果をCouchDBにとっておく。

昨日、twitter のTLで流れてはっとしたのですが、確かにtwitterの検索結果、履歴がさかのぼれなくなることがあって、これはこれで不便だなぁ、というときがあります。ということで、例によってCouchDBに放り込んじゃいましょう。今回は年も変わったというこ…

External Process もっと詳しく

http://d.hatena.ne.jp/yssk22/20090615#1245080242 や http://d.hatena.ne.jp/yssk22/20090708/1247078669 で、CouchDBのURIから外部プロセスをたたき起こすExternal Processについて調べました。最近、あらゆるデータをCouchDBへ、というのが自分の中の流…

Hackathon => アメーバナウのなうをCouchDBに複製する。

やってきました。Hackathon自体は参加者8人とこじんまりでしたが。まぁそれはともかく、アメーバナウのほうも"自分のデータなので”(著作権とかの規約まだ読んでないです)、我が家のCouchDBに放り込んでおきたい。http://www.nilab.info/zurazure2/001083.html…

今年1年

今年は趣味でも仕事でもCouchDBばっかりやっていた気がします。いや、仕事のやつは、CouchDB 以外にやることが多すぎたけれど、もう覚えてないだけです。 できたこと。 0.9.0 / 0.10.0 がでた。 dW の連載を無事終了できた。 いくつか ML に投稿もした。 ア…

CouchDB と MongoDB の比較 #3 ドキュメントで予約されたフィールド

CouchDBもMongoDBも、それぞれのドキュメントに対して一意キーである_idフィールドを持つようです。いずれも、ドキュメントの追加時に自動的にサーバー側で(UUID 32文字)付与させるか、クライアントから指定することができるようです(TODO: Mongo でもクライ…

CouchDB と MongoDB の比較 #2 取り扱い可能なデータ

項目 CouchDB MongoDB データタイプ null,bool,number,string,array,object(, binary) たくさん これまた、Mongoのほうがよさげ。CouchDBはJSONなのでJSONで規定されるデータタイプに準じます。ただし、添付ファイル機能があるので、binary も(いろいろ制約…

CouchDB と MongoDB の比較 #1 通信プロトコル

まずは、DBを利用するにあたって、どんな環境が必要なの?ということで、プロトコルについて比べます。 項目 CouchDB MongoDB 通信プロトコル HTTP 専用プロトコル 利用環境 HTTP クライアントが使える環境 各種ドライバあり いきなり比較が難しいですね。Co…