スティルハウスの書庫の書庫

はてなダイアリーで書いてた「スティルハウスの書庫」を移転してきました。

雑感

あまりパッとしたDremelクローンが出てこないので俺が考えた

ディスクI/Oの並列度が1000超えてないDremelクローンって… Apache DrillやCloudera ImpalaといったDremelインスパイア系のリアルタイム低遅延でカラム型なデータストア的何かがいくつか出てきて、最初はちょっと身構えた(Amazon RedshiftはRDBクラスタって…

App EngineやNoSQLはスケーラブルだからエラいのではない

…という視点で@ashigeruさんとつぶやいたまとめ。 kazunori_279scalabilityやスループットの高さよりも、すべてのアプリをpartition-tolerantに書くよう強制して巨大インフラに細粒度で集約し、桁違いの全体最適を実現できることが重要と思う。でないと大規…

Amazon Kindleを使ってみて

Amazon Kindleを衝動買いしてから2週間くらい経ちましたので、感想をまとめてみます。よい点: 紙ならぶ厚く重い本を何冊でもどこにでも携帯でき、気分に応じて好きな本を読める 速い!ワイヤレスなので日本全国いつでもどこでも本を買える 安い!(翻訳書30…

鈴木則久先生、GHC、FP

ついスヌープキャッシュというキーワードに反応してしまい、@kibayosさんと@takeokaさんとの間で鈴木則久先生の話からGHC(Haskellじゃない方)、そしてbackusのFPといった懐かし話で盛り上がってしまいました。とても貴重なお話もいただいて、もったいない…

Scala Hack-a-thon #1に行ってきた

@yuroyoroさん主催のScala Hack-a-thon #1に行ってきました。Scala触るのは初めてで今回私はお勉強に専念してましたが、yuroyoroさん作成の資料が力作!で、これ見ながらscalaインタプリタでお試しコードを叩いてると結構するする理解できました。会場は終始…

書籍「クラウド Amazon EC2/S3のすべて」

いまAmazon EC2でシステム構築するお仕事中です。この本がとても役に立ったのでご紹介:感想: 最近出た本なので情報が新しい 実際にEC2でシステム構築している方が書いているので実践的(例えばS3は300Kbps位しか出ないからCloudFrontと組み合わせるべし、…

Bigtableと分散KVS・その2

ありがたいことに古橋さんに前回のエントリをご覧いただいたようで、大変ためになるつぶやきをされてたので、ここで引用させていただきます。@frsyukiさん: 「分散KVS」という名前は何も考えていなくて、別に分散KVSにBigTableを含めても良くて、効率の話を…

Bigtableと分散KVS

首藤さんがUNIX managineに「key-valueストアという名前には、キーと値のペア(key-value pair)を格納するデータ格納ソフトウェアというくらいの意味しかない」と書かれていたように、KVSにはRDBのようなベースとなるデータモデルとか定義があるわけじゃあ…

分散KVS記事へのコメントへのコメント

ずいぶん前の話ですが、@ITの記事「もう1つの、DBのかたち、分散Key-Valueストアとは」のはてなブックマークに以下のようなコメントをいただいていました:kuenishiさん: "マジレスするとCouchDBもTTもKVSかもだけど分散ではない。レプリケーションするのを…

六本木ライブラリーでお仕事してみた

いつも都内でのミーティング場所や一時的な仕事場所の確保で困ることが多く、スタバとかホテルのラウンジとかマックとかルノワールとかを流浪してるわけですが、yossyさんのブログを読んでたら、六本木ライブラリーなる場所について書いてありました。 実際…

Task Queue君とmemcache君、疑って正直すまんかった

ここ2日くらいデバッグではまりました。もともとこんな処理してるコードです: a. クライアントが大量データダウンロードのリクエストを投げ、ポーリングをはじめる b. リクエストに基づいてTask Queueに数個〜数10個のタスクが積まれる c. 個々のタスクの結…

productionサーバーの移行が終わった

ここ2か月ほどは、AIRクライアント+Railsサーバーで動いていた既存サービスをappengineに移行する作業を地道に進めてきました。先週末はそのリリース(ってもユーザーさん的には変化がない)があり、なんとか大きな問題はなく移行が完了しました。リリース…

いつのまにかチケット駆動開発してた

チケット駆動開発のFAQ http://forza.cocolog-nifty.com/blog/2009/08/faq-611b.htmlチケット駆動開発って何だろう。。と思って読んだら、ここ数年の私の開発方法とよく似てた。私はこんな感じ: タスク(=チケット)管理ツールとしてJiraを使う 発注元の方…

Excelの高階関数とVisual FP

Excelに高階関数が備わっているのはご存じですか? 多くの人がよく使っている、式の一括コピーのことです。例えば数値が並んでいる列があるとき、その頭のセルの右となりに式を設定して、なにがしかの式を定義をします(例えば「=A1+1」など)。そしてCtrlを…

分散KVS、あるいは人の脳

Bigtable/Datastoreでプログラミングしつつ、トイレで「ブラックスワン」を読んでいると、分散KVSと人の脳が似ているとちょっと思った。 容量の心配はいらなくて、たくさん詰め込んでも遅くならない キーから値を取り出す(連想)のはまあまあ速い 書き込み…

BigtableとBigTable、GAEとApp Engine

ライティングの仕事をしているととても気になるのですが、「Bigtable」と「BigTable」のどっちが正式名でしょう?Bigtable論文では「Bigtable」表記なので、私はこれを使っています。でも、GoogleフェローJeff Dean様のプレゼン資料には「BigTable」と書いて…

分散キャッシュはあくまでキャッシュ

先の@ITの記事では、memcachedなど、分散キャッシュとして使われているKVSについては取り上げていません。なぜなら、一般的にはそれらは「RDBの置き換え」としては使われておらず、「スケールしにくいDBをスケールさせる手段」として使われているからです。…

KVSやMapReduceはクラウドの真価ではない

ちょっと逆説的に書きました。key-value store (KVS)やMapReduceは、クラウドにはなくてはならない重要な技術ではありますが、それらの技術単体では一般のエンジニアにとってそれほど価値はありません。もともと分散ストレージや分散処理技術は昔から学術研…

「クエリしたら負け」―RISCのようなBigtableとの付き合い方

昔のCISC vs RISCを思い出した。BigtableはかなりプリミティブなRISCのようなデータストア。高級な処理はできないが、それがひとつのブレークスルーを生み出している。RDB的発想だと、できるだけSQLの数を少なくしつつ、SQLでできることはコードでは書かない…

「Google」という名の巨大分散OSで始まる「IT補完計画」

「出来損ないの群体として行き詰った人類を、完全な単体生物へ人工進化させる」(エヴァンゲリオンの人類補完計画) 「出来損ないの群体として行き詰ったITシステムを、完全な単体インフラへ人工進化させる」(IT補完計画) (実はエヴァンゲリオンあまり見…

クラウド革命でITエンジニアは監獄行きです

「そんなに高いスケーラビリティはいらないのに、なぜBigtableとかMapReduceを使うの?」という疑問を持っている人(私を含めて)は、もしかして「パンがなければお菓子を食べれば」と言ったマリーアントワネットに近いのかもしれません。データセンターに1U…

クルマのATって「紙」でシフトチェンジしてるって知ってました?

私は知りませんでした。一般的なATの湿式クラッチ(ギアからギアへ切り替えるAT内部のクラッチ)は紙製なんだそうですよ。まあもちろん化学処理とかしてあるらしいですが。。この本は、元日産の技術者の方が書いた、ATの入門書。門外漢でもなんとか雰囲気は…

もしかして史上もっとも稼いだ言語、APL

APLの存在は昔から知ってましたが、ず〜っとマニアックでマイナーな言語とばかり思ってました(まず文字入力ができなさそうだし)。でも、この書籍を読んだらそんなステレオタイプはぶっとんでしまいました。もしかして、稼いだ(もしくはスッた)お金の額で…

仮想化+SSDで幸せになれました

もう5年ほどVMware Workstationを使っていますが、SSDの登場で、便利さが一気に2レベルくらいアップしました。VMのネックはディスクI/Oが遅いこと。Hyper-Vの最新版やIntegrity VMなどではネーティブ性能に近いディスクI/Oを達成しているという話も聞きまし…