Компания Qubole одной из первых предложила облачный сервис, базирующийся на Presto — мощной распределённой системе управления базами данных, которую разработали в Facebook. О существовании Presto стало известно в июне, а в начале ноября Facebook открыла исходный код этой системы.

Один из основателей Qubole Арниш Тузу (фото itsmebert.com).
Один из основателей Qubole Арниш Тузу (фото itsmebert.com).

Основатели Qubole Ашиш Тузу и Джойдип Сен Сарма в прошлом работали в Facebook и были ключевыми разработчиками Hive — системы хранения данных, которую в определённой степени можно считать предшественником Presto. В число клиентов Qubole входят популярная социальная сеть Pinterest и сервис вопросов и ответов Quora.

Разработанный Тузу и Сен Сарма Hive представлял собой надстройку для Hadoop, позволяющую обращаться к данным при помощи языка запросов, напоминающего SQL. Presto отличается от него тем, что, во-первых, поддерживает полноценный SQL, а во-вторых, не использует Map/Reduce (разработчики полагают, что это способствует увеличению производительности).

Presto предназначена для работы с гигантскими объёмами информации и позволяет строить кластеры, состоящие из сотен узлов. Чуть подробнее её устройство обсуждалось в «Компьютерре», когда Facebook открыла исходники Presto:

«Presto реализована на Java. Более того, система способна компилировать в байт-код Java даже сами запросы SQL, причём делать это так, чтобы по возможности избежать проблем с выделением памяти и сборкой мусора. На этом превращения запроса на заканчиваются: виртуальная машина, исполняющая байт-код, “на лету” компилирует его в машинный код. В результате он выполняется ещё быстрее.

Разработка Presto началась около года назад. В начале 2013 года первые версии этой системы стали внедрять в Facebook. Весной соцсеть начала полномасштабный переход на Presto».

Разнообразные программные средства позволяют использовать SQL в сочетании с Hadoop и другими платформами, предназначенными для распределённых вычислений. Те или иные решения, которые предназначены для этого, предлагают многие компании, заметные в области «больших данных», в том числе IBM, Pivotal и Cloudera.