как настроить соединение SQL / Hive с кластером cloudera для чтения данных, хранящихся в кластере - PullRequest
0 голосов
/ 22 ноября 2018

Я хотел получить данные, хранящиеся в кластере Hadoop Cloudera, через Hive, Spark или SQL.У меня есть SQL-запрос, который должен получить данные из кластера.Но до этого я хочу понять, как установить соединение / Курсор с кластером, чтобы он знал, куда читать или записывать?

sc = spark.sparkContext или аналогично HIVECONTEXT или SPARKCONTEXT будет недостаточно.

Возможно, нам потребуется указать URL для узла и всего.Так как же это сделать?

Достаточно любого маленького примера.

1 Ответ

0 голосов
/ 23 ноября 2018

Существует два способа создания таблицы в кусте:

1- Создание схемы внешней таблицы:

CREATE EXTERNAL TABLE IF NOT EXISTS names_text(
          student_ID INT, FirstName STRING, LastName STRING,    
          year STRING, Major STRING)
          COMMENT 'Student Names'
          ROW FORMAT DELIMITED
          FIELDS TERMINATED BY ','
          STORED AS TEXTFILE
          LOCATION '/user/andrena';

2- a) Создайте схему для управляемой таблицы:

CREATE TABLE IF NOT EXISTS Names(
  student_ID INT, FirstName STRING, LastName STRING,    
  year STRING, Major STRING)
  COMMENT 'Student Names'
  STORED AS ORC;

b) Переместите данные внешней таблицы в управляемую таблицу:

INSERT OVERWRITE TABLE Names SELECT * FROM names_text;

И, наконец, убедитесь, что в хранилище Hive хранятся имена студентов во внешней и внутренней таблицах соответственно:

SELECT * FROM names_text;

SELECT * from Names;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...