Как сохранить вывод HDFS в таблицу MySQL? - PullRequest
0 голосов
/ 28 апреля 2018

Я использовал Pig и Hive для операций MapReduce с набором данных, который хранится в HDFS. Теперь я хочу передать этот вывод, чтобы сохранить его в таблице MySQL.

Как я могу перенести вывод в MySQL?

1 Ответ

0 голосов
/ 28 апреля 2018

Вы можете использовать Apache Sqoop для экспорта из HDFS в MySQL.

Иллюстрация:

Это данные в HDFS

# hadoop fs -ls /example_hive  
/example_hive/file1.csv


# hadoop fs -cat /example_hive/*
1,foo
2,bar
3,ack
4,irk
5,pqr

Создание целевой таблицы в MySQL test база данных

> create table test.example_mysql(h1 int, h2 varchar(100));

Экспорт с использованием команды Sqoop. (Обновить значения параметров --connect, --username, --password в соответствии с вашей средой)

# sqoop export --connect "jdbc:mysql://localhost/test" --username "root" --password hadoop --table "example_mysql" --export-dir "hdfs:///example_hive" --input-fields-terminated-by ','

Проверка данных в MySQL

> select * from test.example_mysql;
+------+------+
| h1   | h2   |
+------+------+
|    1 | foo  |
|    2 | bar  |
|    3 | ack  |
|    4 | irk  |
|    5 | pqr  |
+------+------+
...