Поделиться через


Что такое Apache HBase в Azure HDInsight

Apache HBase — это база данных с открытым кодом, база данных NoSQL, основанная на Apache Hadoop и моделироваемая после Google BigTable. HBase обеспечивает случайный доступ и надежную согласованность для больших объемов данных в базе данных без схемы. База данных организована по семействам столбцов.

С точки зрения пользователя HBase похож на базу данных. Данные хранятся в строках и столбцах таблицы, данные в строке группируются по семейству столбцов. HBase — это база данных без схемы. Столбцы и типы данных могут быть не определены перед их использованием. Открытый код линейно масштабируется, чтобы обрабатывать петабайты данных на тысячах узлов. Он может полагаться на избыточность данных, пакетную обработку и другие функции, предоставляемые распределенными приложениями в среде Hadoop.

Как Apache HBase реализован в Azure HDInsight?

HDInsight HBase предлагается как управляемый кластер, интегрированный в среду Azure. Кластеры настроены для хранения данных непосредственно в службы хранилища Azure, что обеспечивает низкую задержку и повышенную эластичность при выборе производительности и затрат. Это свойство позволяет клиентам создавать интерактивные веб-сайты, работающие с большими наборами данных, Создание служб, которые хранят данные датчика и телеметрии из миллионов конечных точек. И проанализировать эти данные с помощью заданий Hadoop. HBase и Hadoop являются хорошими отправными точками для проекта больших данных в Azure. Благодаря этим службам приложения могут в реальном времени работать с большими наборами данных.

Реализация HDInsight использует масштабируемую архитектуру HBase для автоматического сегментирования таблиц. И надежная согласованность для операций чтения и записи, а также автоматического переключения на резерв. Производительность повышается за счет кэширования чтения в оперативной памяти и потоковой записи с высокой пропускной способностью. Кластер HBase можно создать внутри виртуальной сети. Дополнительные сведения см. в статье Создание кластеров HDInsight в виртуальной сети Azure.

Как управлять данными в HDInsight HBase?

Данные можно управлять в HBase с помощью команд create, get, putи scan из оболочки HBase. Данные записываются в базу данных с помощью put и считываются с помощью get. Команда scan используется для получения данных из нескольких строк в таблице. Данными также можно управлять с помощью API C# HBase, которую предоставляет клиентская библиотека на основе REST API HBase. Базу данных HBase также можно запросить с помощью Apache Hive. Введение в эти модели программирования см. в статье Начало работы с Apache HBase и Apache Hadoop в HDInsight. Также доступны сопроцессоры, которые позволяют обрабатывать данные на узлах, в которых размещена база данных.

Примечание.

Thrift не поддерживается HBase в HDInsight.

Варианты использования Apache HBase

Канонический вариант использования, для которого была создана BigTable (и, как следствие, HBase), берет начало в веб-поиске. Поисковые системы создают индексы, которые сопоставляют термины с веб-страницами, содержащими их. Но существует множество других вариантов использования, для которых подходит HBase – некоторые из них перечислены в этом разделе.

Сценарий Описание
Хранилище "ключ-значение" HBase можно использовать в качестве хранилища значений ключей и подходит для управления системами сообщений. Facebook использует HBase для своей системы обмена сообщениями, и он идеально подходит для хранения и управления интернет-коммуникациями. WebTable использует HBase для поиска таблиц и управления ими, извлеченных из веб-страниц.
Данные датчика HBase полезна для сбора данных, собираемых постепенно из различных источников. Эти данные включают социальные аналитики и временные ряды. И сохраняйте интерактивные панели мониторинга в актуальном состоянии с тенденциями и счетчиками, а также управляйте системами журналов аудита. Примеры включают терминал трейдера Bloomberg и базу данных открытых временных рядов (OpenTSDB). OpenTSDB хранит и предоставляет доступ к метрикам, собранным о работоспособности серверных систем.
Запросы в режиме реального времени Apache Phoenix — это обработчик запросов SQL для Apache HBase. Доступ к системе осуществляется через драйвер JDBC, и она позволяет создавать запросы и управлять таблицами HBase с использованием SQL.
HBase как платформа Поверх HBase могут выполняться приложения, используя ее как хранилище данных. Примерами являются Phoenix, OpenTSDB, Kijiи Титан. Также возможна интеграция приложений с HBase. Примеры: Apache Hive, Apache Pig, Solr, Apache Flume, Apache Impala, Apache Spark, Gangliaи Apache Drill.

Дальнейшие действия