2006-02-19
■ OSSコミュニティとの協調 
OSSのコミュニティの力学と企業の力学。まったく別々の力学で動いているのだから、それを束ねることは難しいけれど、だからと言ってまったく協力できないと言うわけでもない。バザールのわっかの中に企業が入ってきても拒まれることはない。
OSSのどの分野の開発が進んで、どの分野の開発が進みにくいのか?
OSSは趣味で作っているんだから別に開発が進まなかろうが、必要としている人が必要としているときに開発すればいいので、ほっといてくれ、という立場もわからなくもない。しかし、その分野を誰かが開発しても自分は興味がないだろうが邪魔にはなるまい。といういささか消極的な立場になってしまうのだけど、そのスタンスで話を進める。
カーネル2.2のころLinusはSMPなんて興味がないのでやりたい人がやってくれみたいなことを言っていた。(大昔の話ですまん)スケーラビリティがどうだこうだというのは、自分のワークステーションではあんまり関係ない。そーゆー分野は必要としている企業が、がんがん開発してくれ。みたいなことである。
実際IBMをはじめとする大手ハードウェアベンダがLSE (Linux Scalability Effort) http://lse.sourceforge.net/ でいろいろ開発をした。企業にとってはLinuxをスケーラビリティの必要な分野に投入することは経済的なインセンティブがあるので自社内のOS専門家を多数投入してLinux開発を加速した。良く知られている例でいえば、カーネルのグローバルロックを徹底的に見直してより粒度の小さいロックにしたり、ロックそのものをなくしたりしている。IOスケジューリングについてもいろいろ改良を重ねた。そのような分野はコミュニティと言うより企業の得意としているところである。
PostgreSQLのカンファレンスに行って、コアメンバーとも親睦を深めた。PostgreSQLの実装が、わたしの個人的な印象ではあるけど、メモリの使い方が貧弱な感じがする。shared_buffersというデータベースサーバが利用する共用メモリバッファのサイズをしていするパラメータのデフォルト値が低すぎる。というような事を、あーだこーだ議論した。「最近のサーバなんかは4GBぐらい平気でつんでいるんだから、shared_buffersなんてパラメータなんかもう必要ないでしょう。あるだけメモリどんどん使うような実装にするべきっすよ。」「うーん」「ムーアの法則つうのはメモリがコンスタントに安くなる法則なんだから、メモリをいっぱい積んだとき、一切実装を変えないで自動的に速くなるような実装にするべきでしょう。そのためにshared_buffersみたいなメモリ利用を制限するパラメータはいかんですよ。いかん。意味ない。」「うーん」「だって、そうでしょう。性能でない。じゃあ、メモリを追加しよう。メモリ安いんですから」「うーん、でもコアチームのメンバのPCは貧弱だから、そーゆー実装をあんまり評価できないんですよねえ」
つまりそーゆー分野は企業がやればいいのである。
今までは、コミュニティと企業が相互補完関係を持って発展してきたのである。企業にとっても効率よく開発が進んで利益があった。
一方でOSSそのもののマーケティングなどは商用製品ではない以上誰かが統一的なイメージ戦略をもって推進するというようなことは原理的に不可能である。不可能ではあるが必要でないと言うことはない。OSSの価値を正しく利用者に届けると言う意味でのマーケティング活動は必要だと思うが個々の企業がばらばらにやっているというのも重複が発生し効率的ではない。そこで業界でOSDLのようなNPOを設立し共通の課題について議論し解決策を探ると言うことが重要になってくる。我国ではそれを日本OSS推進フォーラムという産官学の任意団体が行っている。別に日本OSS推進フォーラムだけがそのような活動をしているわけではなく、日本Linux協会とか似たような団体はいくつかある。
コミュニティから見れば勝手にやってねという感じかもしれないが、エコシステムとして、価値の創造のサイクルが加速することはコミュニティにとって悪いことではない。一つはビジネスとして持続可能なサイクルが生じれば、今まで仕事として評価されなかったものが、仕事として評価されるようになる。夜中のハックが、昼間の給与を稼ぐ手段となる。別に夜中に好きなことをやっているんでそれで満足だと言う人は別にそれでいいわけで、そーゆー人をとやかく言うつもりはない。自分の好きなことをやって給料が貰えるということはいいことだと思うのだけど、それはまあ人それぞれなので深くは突っ込まない。
OSSの価値や課題を整理して情報として伝えると言う作業は言うことは簡単だが実際はなかなか大変である。例えばOSSサポートがどうなっているかとかどのような課題があるかとかは、わかっているようでいて多くのユーザーにわかりやすい形で示されていなかったりする。OSSそのものの開発の仕組みとかコミュニティとかの原理をある程度理解していないとサポートがどのようになされるかというような点についても理解は難しい。各OSSの限界値での性能とか信頼性なども各社ばらばらの基準でやっていたりするが、そのような作業も実のところ無駄であるし、統一的な手順がないので他社が実施した評価と比較することができなかったりする。OSSなんだから評価手順やツールなどを共通化すれば無駄な作業も減るしコストも下がるしノウハウも共有できてみんなに得である。OSSだから協調しやすいという話である。商用ソフトの場合、ベンチマーク結果を共有するなんてことは、通常はライセンス上禁止されていたりするので、ほとんど不可能である。そのため、ベンダー提供の情報を鵜呑みにするしか方法がない。
OSSだからこそできる協調の仕組みを構築することがみなにとって利益になるという構図である。
■ PostgreSQL Conference 2006 
PostgreSQL Conference 2006に行って来た。金曜日土曜日と2日間行われたのだが、金曜日は別件があったので土曜日だけの参加になった。http://www.postgresql.jp/misc/seminar/2006-02-17_18/index.html
石井さんの「いまさら聞けないバックアップの基本」を途中から聞く。バックアップは重要。バックアップの手順を文書化するのは非常に重要。その手順書を元に一度予行演習をするのはもっと重要。バックアップできても、手順どおりリストアできなければ全然意味がない。しかし、そのあたり前のことをやっていないと言うのが世の常なのである。
片岡さんの「SQLチューニング」。基本的なことをいろいろ教えてもらった。資料はそのうち、ユーザー会のホームページにアップされるらしい。期待しよう。
大垣さんの「Webアプリケーション攻撃の傾向と対策」。高橋メソッドかい(笑)いろいろWebサービスを提供する側は大変ですね。
懇親会。
あいかわらづ、熱く語る。語る。語る。しかし、日本のPostgreSQL界隈(?)はどうもオヤジ度高いなあ。若い人が少ない。女子もいない。(どーゆーことだ)やはりRDBMSという地味な技術の集まりなのでいかんせん集まってくる連中が地味すぎる。LL界(?)のように20代ががんがん活躍していると言う感じでもない。やはりPHPユーザー会あたりに集客をお願いするかなどとバカ話に話をさかせる。
それはそうとやはりクラスタファイルシステムだろう。分散ロックマネージャだ。それを利用してクラスタの実装汁。と若者にはっぱをかける。
宴会のとりまとめお疲れ様でした>永安さん。
# あらいしゅんいち 『数年来PostgreSQLを使っているものとしては是非参加したかったですね。福岡在住なので、今回はちょっと見送りましたが。セミナーだけではなく、参加者も交えたディスカッションや交流などがもっと企画されていれば参加したとおもいます。人の話を聞くだけならウェブや書籍でも良いのですから。』
# 永安悟史 『>よしおかさま
片岡さんのセッションの資料とMP3を公開いたしましたので、ぜひご利用ください。
http://blog.postgresql.jp/95
他のセッションについても、順次公開できるものは公開していく予定です。
>あらいさま
最初はパネルディスカッションのようなものも考えていたのですが、お題と出席者の準備が思うように進まなくてお蔵入りになったという裏事情もあったりします。直メールでも私のblog(http://blog.postgresql.jp)へのコメントでも構いませんので、御意見・コメントなどをぜひぜひお寄せください。よろしくお願いいたします。』
# hyoshiok 『あらいしゅんいちさま、コメントありがとうございます。参加者を交えたディスカッションが非常に重要だと思います。そーゆーのができるカンファレンスで、事務局の皆様のあたたかい配慮があり、参加していて楽しかったです。
参加者のみなさまも講師控室にづかづかのりこんで質問をするという蛮勇(?)が必要かと思います。JPUGの仕組み分科会なんかもリアルに会って議論をする場で楽しいですね。ぜひ、機会をみつけて参加してください。』
# hyoshiok 『永安悟史さま、コメントありがとうございます。片岡さんの資料公開ありがとうございます。勉強になりますね。』
# masaka 『「講師控室にづかづかのりこんで質問をするという蛮勇」はなかなか難しいと思うので、主催側でAsk to Speakersコーナーを設けるのが吉かと。それも、展示会場とか廊下とかのとおりすがりで参加しやすい場所で。今回のConferenceには参加できなかったので、やっていたらすみません。』
# あらいしゅんいち 『お返事ありがとうございます。また次の機会には是非参加したいですね。RDBMSは全く地味じゃないと思いますよ。とてもエキサイティングです。でも実装に関する資料が少ないなと感じています。とくにディスクへの書き込み手法の詳細がわかりません。』
# hyoshiok 『masakaさま、コメントありがとうございます。「講師控室」は半分冗談です。すいません。それはそうと、Ask to Speakersのコーナーはいいアイデアですね。>事務局の皆様いかがでしょう。』
# hyoshiok 『あらいしゅんいちさま、JPUGの仕組み分科会、あるいはJPUGの合宿なんかに参加すると実装の話がいっぱい聞けます。』
# まいパパ 『今回は参加できませんでした。残念。
OSC2006Springのブースででも今回のお話をお聞かせいただければ幸いです。』
# hyoshiok 『まいパパさま、コメントありがとうございます。OSC2006でお会いできればうれしいです。』