Komponenty

Jazyk výměny dat Google Open Source

Week 0

Week 0
Anonim

"Prakticky všichni uvnitř Google" používají protokol buffery, uvádí stránku FAQ. "Máme mnoho dalších projektů, které bychom chtěli uvolnit jako open source, které používají protokolové vyrovnávací paměti, a proto je třeba uvolnit protokolové vyrovnávací paměti."

Google používá "tisíce různých datových formátů, které reprezentují síťové zprávy mezi servery, indexové záznamy v úložištích, geoprostorové datové množiny a další, "napsal Kenton Varda, člen týmu softwarového inženýrství společnosti Google, na blogovém příspěvku. "Většina těchto formátů je strukturovaná, nikoliv plochá, což vyvolává důležitou otázku: Jak je možné všechny kódovat?"

Všudypřítomný XML (rozšiřitelný značkovací jazyk) není dostatečně efektivní pro potřeby sdílení dat společnosti Google podle Vardy: "Když jsou všechny vaše stroje a síťové odkazy spuštěny na kapacitě, XML je extrémně drahý návrh."

Pomocí protokolových vyrovnávacích pamětí "definujete, jak chcete, aby vaše data byla strukturována jednou, pak můžete použít speciální generovaný zdroj kód pro snadné psaní a čtení strukturovaných dat z různých datových toků az různých jazyků ", podle dokumentace. "Dokonce můžete aktualizovat datovou strukturu bez přerušení nasazených programů, které jsou kompilovány proti" starému "formátu."

Protokoly jsou podle společnosti Google 3 až 10 krát menší a 20 až 100krát rychlejší než XML. Ale XML má pro některé úkoly určité výhody podle dokumentace: "Buffery protokolu by nebyly dobrý způsob, jak modelovat textový dokument s označením (např. HTML), protože nemůžete snadno prokládat strukturu s textem. "

Google připravil stahování pagethat obsahuje protokolové kompilátory pro Java, C ++ a Python