Arenadata выпустила новый продукт для обмена данными между Greenplum и Spark — ADB-Spark Connector

22.07.2021
Компания Arenadata выпустила инструмент для обмена данными между Arenadata DB (аналитической MPP-СУБД на базе Greenplum) и Apache Spark (фреймворком для распределенной обработки данных, входящим в экосистему Hadoop) — ADB-Spark Connector.
ADB-Spark Connector предназначен для высокоскоростной и параллельной передачи информации между Spark и Arenadata DB. До выхода нового продукта задачи загрузки и выгрузки данных частично решались при помощи фреймворка Greenplum Platform Extension Framework (PXF).

Коннектор построен с использованием Scala 2.11.x, 2.12.x, Twitter Finagle и ScalikeJDBC. В основе его работы — HTTP сервер, реализующий протокол gpfdist. Этот метод, по сравнению с другими существующими способами обмена с ADB, обеспечивает параллельную запись на сегменты Greenplum без участия Master, возможность гибкого партиционирования при чтении данных из Greenplum в Spark, отсутствие необходимости устанавливать утилиту gpfdist на каждой Spark-ноде и другие преимущества.



Для реализации протокола gpfdist взят фреймворк Finagle, показавший лучшую производительность при наличии множества одновременных сессий от сегментов ADB, — по сравнению с изначально выбранным Akka HTTP.

К основным функциям ADB-Spark Connector относятся:

  • чтение данных из Greenplum в Spark с поддержкой различных способов партиционирования;
  • запись данных из Spark в Greenplum с помощью нескольких режимов записи: Append, Overwrite, ErrorIfExists;
  • поддержка push-down операторов;
  • извлечение дополнительных метаданных из Greenplum, включая статистику и схемы распределения данных;
  • автоматическое формирование схем данных;
  • оптимизация выполнения агрегатной функции count.


Дмитрий Плужников, директор департамента системной архитектуры Arenadata
Дмитрий Плужников
Директор департамента системной архитектуры Arenadata

«Разработанное нами решение будет полезно для заказчиков, которые при построении своих корпоративных хранилищ комбинируют Arenadata Hadoop и Arenadata DB. ADB-Spark Connector обеспечивает быструю двунаправленную связь между ними, позволяя выполнять чтение и запись данных максимально эффективно».

По сравнению с ближайшим аналогом на рынке — Spark-Greenplum коннектором от компании Pivotal — ADB-Spark Connector обеспечивает более гибкое партиционирование (5 способов вместо 2) и большее число типов данных (в том числе интервалы и массивы), а также предоставляет дополнительные функциональные возможности, включая поддержку Batch-режима в Spark, сбор статистики для построения планов запросов при помощи Catalyst и выполнение произвольных SQL-запросов через Master-ноду ADB.

В настоящий момент ADB-Spark Connector поддерживает версии Spark 2.3.x и 2.4.x. В дальнейших планах по развитию продукта — добавление поддержки Spark 3.x и реализация функционала стриминга.

Читайте также

все новости
ошибка! проверьте правильно ли вы заполнили поле Email

Этот сайт использует cookie-файлы и другие технологии, чтобы помочь вам в навигации, а также предоставить лучший пользовательский опыт, анализировать использование наших продуктов и услуг, повысить качество рекламных и маркетинговых активностей.