กูเกิลเปิดเผยซอร์สโค้ดของ Protocol Buffers ภาษาที่ใช้แลกเปลี่ยนข้อมูลกันภายในกูเกิลเอง
กูเกิลมีแอพพลิเคชันสำหรับประมวลผลข้อมูล-สารสนเทศเป็นจำนวนมาก จึงต้องมีภาษาสำหรับแลกเปลี่ยนข้อมูลระหว่างกัน แต่ XML นั้นมี overhead สูงเมื่อต้องประมวลผลข้อมูลจำนวนมหาศาลแบบกูเกิล ทางออกของกูเกิลคือคิดค้นภาษาแลกเปลี่ยนข้อมูลแบบใหม่ขึ้นมาเองที่ไม่ซับซ้อน และเน้นประสิทธิผลในการส่งข้าม data center จึงออกมาเป็น Protocol Buffers
ตัวข้อมูลที่ส่งกันจริงๆ เรียกว่า message มีหน้าตาดังนี้ (ส่งข้อมูลชนิด int32 ค่า 1 เข้ารหัสแบบ Base 128 Varints)
08 96 01
ผู้ส่งต้องกำหนด schema ของ message (แบบเดียวกับ DTD หรือ XML Schema) ในไฟล์ .proto ซึ่งมีลักษณะเหมือน struct ของ C
message SearchRequest { required string query = 1; optional int32 page_number = 2; optional int32 result_per_page = 3; }
สิ่งที่กูเกิลเปิดซอร์สออกมารอบนี้คือ ตัวภาษา Protocol Buffers และไลบรารีสำหรับเรียกใช้ผ่าน C++, Java และ Python
ที่มา - Google Open Source Blog ผ่าน PC World