Как перенести таблицу mysql в hive?
У меня есть большая таблица mysql, которую я хотел бы перенести в таблицу Hadoop/Hive. Существуют ли стандартные команды или методы для передачи простой (но большой) таблицы из Mysql в Hive? В таблице хранятся в основном аналитические данные.
3 ответов
прежде всего загрузите mysql-connector-java-5.0.8 и поместите банку в папку lib и bin Sqoop
-
создайте определение таблицы в Hive С точные названия полей и типы как в mysql
Sqoop и импорт параметром --verbose --поля-прекращено-по ', ' - подключение JDBC-драйвер:для MySQL://localhost в/тест-таблицы employee --улей-импорт --склад-реж /пользователей/куст/склад --поля-прекращено-по ',' --сплит-идентификатор --улей-стол сотрудник
test-имя базы данных
employee - имя таблицы (присутствует в тесте)
/ user/hive / warehouse - каталог в HDFS, где данные должны быть импортированы
--split-by id-id может быть первичным ключом таблицы 'employee'
--hive-table employee - таблица сотрудников, определение которой присутствует в Hive
Sqoop Руководство Пользователя (один из лучших руководство по обучению Sqoop)
Apache Sqoop - это инструмент, который решает эту проблему:
Apache Sqoop (TM) - это инструмент, предназначенный для эффективной передачи массовых данных между Apache Hadoop и структурированными хранилищами данных, такими как реляционные базы данных.