Google опубликовала исходники внутренних протоколов обмена данными

Компания Google сегодня опубликовала исходные коды ранее закрытых протоколов для внутреннего обмена данными между сервисами и различными проектами интернет-гиганта. Данные протоколы выполняют роль "шлюзов" при помощи которых друг с другом взаимодействуют разнородные данные. Сообщается, что и сами протоколы и язык, на котором они работают, создан внутри компании.

"Практически всё внутри Google использует буферы, работающие с данными протоколами. У нас есть много проектов, которые мы хотим и планируем открыть, однако для того, чтобы это сделать, вначале необходимо открыть протоколы обмена данными", — говорят в компании.

По словам Кентона Варды, инженера группы Google Software Engineering, внутри Google циркулируют данные в тысячах различных форматов. Все это необходимо для корректной работы индексов, сетевых систем обмена информацией, геопространственных и мультимедийных данных. "Большая часть этих форматов структурирована, что поднимает закономерный вопрос: как мы все это раскодируем?", — говорит он.

Использовать для унификации стандарт XML — это далеко не идеальный вариант, так как он не предполагает какого-либо сжатия, а с учетом нынешних объемов информации, этот показатель может быть критичными. "С буферными протоколами вы можете определять, как вы хотите структурировать информацию. После этого вы можете использовать специально сгенерированный код для чтения и записи разнородных данных из разных потоков", — поясняет он.

По данным Google, опубликованные протоколы в 10 раз компактнее XML и в 20-100 раз быстрее в работе.

Вместе с тем, в Google признают, что и у XML есть ряд преимуществ — одно из которых заключается в близости XML человеческому языку, разработки же компании по духу ближе Java, С++ или Python.