Использование Apache Zeppelin для выполнения запросов Apache Phoenix в Apache HBase в Azure HDInsight
Apache Phoenix — это реляционная база данных на основе HBase с открытым кодом и высоким уровнем параллелизма. Phoenix позволяет использовать запросы на базе SQL для HBase. Phoenix использует драйверы JDBC под ним, чтобы позволить создавать, удалять, изменять таблицы SQL, индексы, представления и последовательности. Кроме того, Phoenix можно использовать для обновления строк по отдельности и в большом количестве. Phoenix использует для сборки запросов компиляцию в машинный код NOSQL, а не MapReduce, что позволяет создавать на основе HBase приложения с низким уровнем задержки.
Apache Zeppelin — это записная книжка на основе Интернета с открытым исходным кодом, которая позволяет создавать управляемые данными совместные документы с помощью интерактивного анализа данных и таких языков, как SQL и Scala. Она помогает разработчикам данных и специалистам по обработке и анализу данных разрабатывать, организовывать, выполнять и совместно использовать код для манипулирования данными. Она позволяет визуализировать результаты, не используя командную строку или не требуя сведений о кластере.
Пользователи HDInsight могут использовать Apache Zeppelin для отправки запросов к таблицам Phoenix. Apache Zeppelin интегрирован с кластером HDInsight, и для его использования не требуются дополнительные действия. Создание записной книжки Zeppelin с помощью интерпретатора JDBC и начало написания запросов Phoenix SQL
Необходимые компоненты
Кластер Apache HBase в HDInsight. См. Начало работы с Apache HBase.
Создание заметки Apache Zeppelin
В URL-адресе
https://CLUSTERNAME.azurehdinsight.net/zeppelin
заменитеCLUSTERNAME
именем своего кластера. В веб-браузере перейдите по этому URL-адресу. Введите имя пользователя и пароль для входа в кластер.На странице Zeppelin выберите Создать новую заметку.
В диалоговом окне создания заметки введите или выберите следующие значения:
- Note Name (Название заметки): введите название заметки.
- Default interpreter (Интерпретатор по умолчанию): выберите JDBC в раскрывающемся списке.
Затем выберите Создать заметку.
Убедитесь, что в заголовке записной книжки отображается состояние "Подключено". Оно обозначается зеленой точкой в правом верхнем углу.
Создайте таблицу HBase. Введите следующую команду и нажмите клавиши Shift + Ввод:
%jdbc(phoenix) CREATE TABLE Company ( company_id INTEGER PRIMARY KEY, name VARCHAR(225) );
Инструкция %jdbc(phoenix) в передней строке сообщает записной книжке использовать интерпретатор Phoenix JDBC.
Просмотрите созданные таблицы.
%jdbc(phoenix) SELECT DISTINCT table_name FROM SYSTEM.CATALOG WHERE table_schem is null or table_schem <> 'SYSTEM';
Вставьте значения в таблицу.
%jdbc(phoenix) UPSERT INTO Company VALUES(1, 'Microsoft'); UPSERT INTO Company (name, company_id) VALUES('Apache', 2);
Отправьте запрос к таблице.
%jdbc(phoenix) SELECT * FROM Company;
Удалите запись.
%jdbc(phoenix) DELETE FROM Company WHERE COMPANY_ID=1;
Удалите таблицу.
%jdbc(phoenix) DROP TABLE Company;