xmlより100倍速いデータ・プロトコルProtocol Buffers

google内部でのデータは数千種類の異なったデータ・フォーマットを使用している。その大多数は構造化されたデータ形式であるけれどもxmlを使ってこれら大容量のデータを処理するには力不足なことからgoogleで独自に開発しオープンソースとして公開したのがProtocol Buffers。Protocol Buffersはまたxmlに比べファイル容量にして10分の1、解析速度にして100倍速い。googleは今後さらにオープンソースのソフトを公開していくが、それらすべてにProtocol Buffersが応用できることからProtocol Buffersを先立って公開したもの。googleクラスター・アーキテクチャーは複数の割とパワフルなパーソナル・コンピュータ同士をイーサネットで繋いだものだが、マシン自体の計算速度は速くてもネットワーク通信の部分で制約があった。そう考えてみるとネットワークを通じデータを非常にコンパクトに伝達できるProtocol Buffersはまさにうってつけのものといえる。

据国外媒体报道,谷歌周一发布了公司内部使用的开源数据描述语言“Protocol Buffers”。Protocol Buffers与XML相似,但其特点是简单、小巧、速度快。谷歌开源项目经理克里斯·迪邦纳(Chris DiBonap)在博客中称,“我们在网络上传输或在磁盘上存储的几乎所有结构化信息都使用了这种语言。我们认为,Protocol Buffers对其他人也有大有裨益,因此决定把它作为开源软件发布。

http://tech.sina.com.cn/i/2008-07-08/15442311920.shtml

You may want to read this paper about the Google cluster architecture if you haven't already, because I'm going to remind you of two things about Google that are pretty obvious in retrospect. You can think of the Google cluster architecture as a bunch of moderately powerful personal computers connected by ethernet. That's not quite correct, but it's a pretty good abstraction. In that model, you have pretty good disk/RAM/computational throughput, but network communication is much more limited. That leads to the first nice thing about Protocol Buffers: they're very compact going over-the-wire via network.

http://www.mattcutts.com/blog/google-releases-protocol-buffers/