LexisNexis: наше решение с открытым кодом в 4 раза быстрее, чем Hadoop

ПО Свободное ПО Софт Открытое ПО
, Текст: Егор Гребнев

Американская компания LexisNexis, известный поставщик услуг доступа к базам правовой и другой специализированной информации, собирается опубликовать под свободной лицензией собственную систему организации распределенных вычислений High Performance Computing Cluster (HPCC). HPCC, написанная на C++, по скорости обработки запросов почти вчетверо превосходит написанную на Java систему Hadoop, которая в настоящее время занимает ведущие позиции на этом рынке.

В ближайшие несколько недель LexisNexis предоставит исходный код системы, исполняемые файлы и виртуальную машину для тестирования. Лицензия, под которой выйдет HPCC, не называется, однако, по словам компании, это будет пермиссивная лицензия, допускающая изменение и создание производных продуктов с сохранением оригинального названия.

В настоящее время LexisNexis ведёт переговоры с Amazon по поводу возможности использования HPCC в облаке Amazon Web Services. Кроме того, LexisNexis планирует запустить собственный публичный облачный сервис.

Исходный код будет доступен в двух вариантах: Community Edition, предоставляемом на бесплатной основе, и коммерческом Enterprise Edition, который будет содержать дополнительные модули и компоненты, а также обеспечиваться технической поддержкой.

HPCC использует свой собственный декларативный язык программирования, ECL, компилирующийся в C++. Система состоит из двух вычислительных платформ: Thor Data Refinery Cluster и Roxie Rapid Data Delivery Cluster. По словам Армандо Эскаланте (Armando Escalante), главного инженера LexisNexis, первая платформа аналогична Hadoop, тогда как вторая предлагает принципиально новые возможности.

«Thor в четыре раза быстрее Hadoop. Если Hadoop для какой-то операции требуется 1000 узлов, то нам хватает 250», – заявил Эскаланте.

HPCC имеет тесно связанную архитектуру, что повышает производительность при обработке сложных запросов. Узлы кластера взаимодействуют напрямую и через Thor, при этом используется всего один коммутатор, поддерживающий 1500 портов Ethernet без заторов в сети, что обеспечивает максимальную пропускную способность для передачи больших пакетов данных.

Система может выполнять запросы в оперативной памяти, на жестком диске или на обоих носителях одновременно.

«Hadoop имеет более свободную архитектуру, и для работы требуется больше узлов. На первый взгляд Hadoop нам понравилась, но она сильно теряет в производительности, потому что узлы сначала соединяются через распределённые коммутаторы, и лишь затем — через центральный. Это сильно перегружает канал», – говорит Эскаланте.