マルチマシン上のライブラリ

仕事の分割 - 計算機と戯れる日々を考えてたんだが、並列プログラムを組むためのスキルというよりはそのためのテンプレートとか例題とかが不足してるんだな。


シングルマシン上におけるマルチタスクはOSがやってくれているため、ライブラリを使えば十分(と、おもう)。
マルチマシン上のマルチタスクを行うOSは…ってプラン9 - Wikipediaはリソースの問題だもんな、計算資源をSIMDに使うライブラリとかは定義されているんだろうか…聞いたことないしな。


多数の人間が生み出す多数のデータを多数の計算機にどのように保存、検索、表示、修正するかというテンプレートはとりあえず各web企業に隠蔽されていると。
まあ、それこそが彼らのノウハウなんだけど。


おそらく、ここでやらなければならないのは、現在のRDBが提供しているSQLレベルの言語(=API)を持ったマルチマシン上のデータ操作ライブラリの構築なんだろう。
http://code.google.com/intl/ja/appengine/ーこれが近いかと思ったが違うな。その他のものは1ユーザとしてのAPIのみが提供されているな。
マルチマシン上ではテーブルのジョインつまりデータの直積をいやがるはずだ。これをリアルタイムにユーザに提供するのはgoogleにとってもリスクが高いのか。


あ、そうか、googleで直積をやっているのは検索のとき(ページランク=行列計算)だけ…ここだけ計算速度をあげる工夫をしていて後はデータを素に保持しているな。


以上のように現時点では推測する。