каталог
Три Спарк это thriftserve2 / билайн / JDBC
Четыре, скорлупа режим с помощью SQL
A, Спарк SQL Введение
Официальный сайт: http://spark.apache.org/sql/
Изучение документов: http://spark.apache.org/docs/latest/sql-programming-guide.html
SQL в рамках Hadoop:
1) Спарк SQL
2) Улей
3) Impala
4) Феникс
Спарк SQL используется для обработки данных в автономном режиме, и его модель программирования DF / DS
Спарк SQL функции:
1) Интеграция: можно множество сложных SQL: spark.sql ( "")
2) равномерный доступ к данным: подключение улей, Авро, паркет, ORC, JSON и JDBC внешних источники данных в единой форме: spark.read.format ( "".) Нагрузка ( "")
3) Улей и интеграция: благодаря наличию совместной метабазы таблиц, ОДС может быть разделен. импала, Улей, метаданные Спарк SQL являются общими metastore
4) способ JDBC: необходимость запуска службы, такие как улей hiveserver2, MySQL.
Спарк рамок SQL:
1) Искра ветви: Spark SQL
2) улья: улей на Спарк
Спарк SQL интерактивный способ: SQL, DF / DS
DataFrame версии 1.3 отсутствует, возникают DataSet1.6.
РДД = + Схема DataFrame
DataFrame набора данных = [строка]
DF поддерживает Scala, Java, Python и развитие R. Тем не менее, DS поддерживает только Scala и Java. Python не поддерживается, поэтому использование Python имеет ограничения.
Две свечи и интеграции Hive
Всего два шага:
1) Файл конфигурации метаданных Hive в Спарк / конф:
$ CD SPARK_HOME
CD конф
CP /home/hadoop/app/hive-1.1.0-cdh5.7.0/conf/hive-site.xml. (Hive конфигурировать метаданные соединения site.xml)
2) добавляется в Спарк тузд драйвера пакета драйверов (так как улей метаданные, хранимые на MySQL). Есть много способов, чтобы добавить пакет банки:
1) Режим 1: добавлен после того, как с искровым оболочки или искрового представить:
при активации путем добавления --jars, но иногда не распространяется и со стороны водителя, так что по- прежнему необходимо использовать класс-путь --- драйвера:
Спарк -оболочка \
--jars /home/hadoop/lib/mysql-connector-java-5.1.43-bin.jar \
--driver-класс-путь /home/hadoop/lib/mysql-connector-java-5.1.43 -bin.jarЕсли пакет больше времени с помощью --package.
2) Режим 2: СР упакованы в SPARK_HOME / JAR
3) Вариант 3: Конфигурация банку пакет в искровом-default.conf:
Многофункциональный , когда пакет:
spark.executor.extraClassPath = / Главная / Hadoop / wzq_workspace / Библиотека / *
spark.driver.extraClassPath = / дом / Hadoop / wzq_workspace / Библиотека / *
одноразового использования , когда упаковка (I):
spark.executor.extraClassPath = / Home / Hadoop / Lib / MySQL-5.1.43-Connector-Java-бин. JAR
spark.driver.extraClassPath = / Home / Hadoop / Lib / MySQL-5.1.43-Connector-Java-bin.jar
Примечание:
1) улей дно HDFS, мы должны гарантировать , что процесс находится на HDFS.
2) потребность в MySQL сервиса , чтобы быть открытой.
3) Я хочу использовать интеграционную Спарк улей, необходимо добавить -Phive -Phive-thriftserver компилятор директивы при компиляции Спарк.
4) Поскольку Спарк конфигурации вступил в улье-site.xml, это система HDFS файлов по умолчанию.
В противном случае, это локальная файловая система, создать таблицу , если она будет создавать / пользователь / ульи / склад в локальном каталоге.
SparkSession вход Спарк SQL программа. SparkSession в Спарк Shell псевдоним искра.
Три Спарк это thriftserve2 / билайн / JDBC
улей имеет hiveServer2, искра , также имеет аналогичную thriftserve2.
Расположение: искра / SBIN
Шаг:
1) $ {HIVE_HOME} /conf/hive-site.xml скопированны до $ {SPARK_HOME} / конф.
2) добавить MySQL драйвер.
Начало thriftserver Услуги:
SBIN $ ./start-thriftserver.sh --jars ~ / Программное обеспечение / XXX / MySQL-разъем-Java - 5.1.27-bin.jar-
позиция будет предложено в лог - файл с помощью `хвост -f XX.log `вы можете проверить , является ли успешно запущен сервер.
Оккупированные порт 10000.
Начало билайн клиент:
бен $ ./beeline -u JDBC: hive2: // локальный: 10000 # -n Hadoop более чем соединений JDBC Hive
JDBC: hive2: // локальный: 10000> # успешное соединение
JDBC: hive2: // локальный : 10000> Показать таблицы,
JDBC: hive2: // локальный: 10000> ВЫБОР * FROM EMP;
Примечание:
Для того, чтобы под `$ SPARK_HOME / bin` by` / beeline` начать start-thriftserver.sh соответствующего клиента, начинают начать в улей или клиента, поскольку переменные окружения для настройки` HIVE_HOME / bin` тоже. Настройка `SPARK_HOME / bin`, так , чтобы очистить место для использования.
После открытого сервера, также может быть использован на окнах в IDEA JDBC службы соединения. не также не нужно писать имя пользователя и пароль.
Наблюдение Интерфейс Спарк UI:
1) наименование приложения Бережливость JDBC / ODBC - сервер
2) более вкладка JDBC / ODBC сервера на странице и отобразить много информации SQL и плана выполнения SQL.
Четыре, скорлупа режим с помощью SQL
Улей на самом деле получить доступ к операционной таблице.
Режим оболочки с помощью SQL двумя способами:
1) искровые оболочки входят:
Скала> spark.sql ( "показать баз данных"). показать (ложь)
Скала> spark.sql ( "использование улей")
Скала> spark.sql ( "показать таблицы"). шоу (ложь)
Скала> spark.sql (» выберите * из теста "). показать (ложь)
2) с искровым SQL, чтобы:
$ ./Spark-sql --jars бин
Спарк-SQL ( по умолчанию)> Показать таблицы,
искровой SQL ( по умолчанию)> в SELECT * FROM EMP;
символ; Спарк-SQL ( по умолчанию)> Показать базы данных; # запись непосредственно SQL, использование заканчивается
с выходом; выход с искровым SQL
также искровым отправить искровой-SQL основной вызов.