OSSの技術カンファレンス、縦串横串
カーネル読書会とよしおかの野望に平さんからトラックバックをいただいた。ありがとうございます。
弊社の場合、Linux OSのベンダーなのでLinuxの専門家がいるわけだが、同時にOracleとかRDBMSの専門家もいて、それを一つのウリにしている(わたしも元はと言えばRDBMSの開発者だったので、データベースには土地勘がある)。
SIをしていると当然ながら様々なコンポーネントの組み合わせ問題が発生し、その時々にノウハウTipsを組み合わせて対処するわけだが、それぞれの部品がブラックボックスだと、正直言って問題が発生しないようなバッドノウハウを組み合わせることがSIになってしまい、全体最適を目指すと言うことはなかなかできない。
トラブルが起こったときブラックボックスだと対処のしようがないので、結果として定番の部品の組み合わせでなるべく冒険をしないようにする。万が一ドラブったとしてもワークアラウンドに終始して抜本的な対策が取られることは少ない。定番の部品はそのようなバッドノウハウが積み重なっているのである意味安心して使われてさらにバッドノウハウが積み重なるというフィードバックがかかる。
そこでOSSだ。OSSはホワイトボックスなので業者に技術力さえあればとことん原因を追究できる。性能上の問題だろうが機能上の問題だろうが時間とコストの制約の元最適化ができる。OS層、RDBMS層、Web層、アプリケーション層、そして運用それぞれの層で「すり合わせ」が可能である。ある場合はRDBMS側で対処するのが最適だとか、OS側で対処するのが正しいとかそのような判断がホワイトボックスがゆえにできる。
オープンシステムというのが既存のプロプライエタリな定番製品の「部品の組み合わせ」であったのが、OSSで構築したシステムの場合は「部品のすり合わせ」である。従ってシステムとしてより最適なものを構築できる可能性がある。
徐々にOSSの開発者コミュニティも量的にも質的にも増えてきたので日本で一つ集まっちゃおうということである。それぞれの層で困っている問題を公開して共有してみんなでわいわい考えようということである。プラットフォームから見ると下から上まで縦串を通している感じだし、それぞれの層で見るとPostgreSQLだMySQLだ、あるいはJBOSSだTomcatだ、さらにはPerlだRubyだPHPだというような横串でもある。そのメッシュの中で共通の問題、例えばスケーラビリティをどう確保するかとか、運用コストをどう下げるかとか、あるいは楽しいハックの方法とか、さらにはプログラマとして幸せな社会とはとか、まあなんでもいいのだけどごった煮風にいろいろ議論できたら楽しいのではないかなあなどと思った次第である。
僕はカーネル専門だが、カーネルを読んでいると特定アプリ(DBMSとか)のパフォーマンス
を上げるための工夫を見つける。
そういったものを見ていると、どうしてもカーネル単体として説明するのではなく、ア
プリを含めた全体として説明したくなる。そうなるとすごく面白いんじゃないかと。中略
つまり、上から下まで、特定アプリからCPUレイヤまで通して説明したい。縦串である。
でも実際問題、こういうのは難しいと思ってた・・・。
ところが7月のLMSに、難しいと思ってたコラボが実現できた。kosakiさんが、遠方はる
ばる参加してくれることによりアプリ→glibc→カーネル→CPUのストーリーを作ること
ができる。縦に上から下まで説明できる。これは本当にすごいことだ。
ひら/縦串 http://d.hatena.ne.jp/hira_sosuke/20060702/1151836228
弊社の武田のブログも微妙にからんできて、
今回は、mixiのシステムの成長に関するお話ということで、ちょっと興味があります。ここ数年カーネルのお仕事中心でやってきましたが、この知識をもっと上のレイヤに生かせないかと思っていた丁度このごろでした。ぜひ、現実のシステムでの課題を聞いてみたいと思います。最近mixiを使い始めたこともあって、私の琴線にものすごくヒットしています。
カーネルとアプリケーションの関係 http://blog.miraclelinux.com/uraura/2006/07/post_98f8.html
いい感じである。
日本にはGoogleはないけど、OSの専門家やRDBMSの専門家やWebアプリケーションの専門家がバーチャルにコラボレートして世界にないものを創造していく、そーゆー緩い場ができると面白いなあなどど最近思っているのだ。それを東京と言う地域でやれないかなあと。




コメント