2016-12-31 13 views
1

Я пытаюсь создать другую схему для таблиц, основанных на AVRO. Ниже приведена команда m. Я могу видеть правильную структуру каталогов со всеми файлами данных с расширением .avro, но когда я вхожу в систему HIVE &, выполните таблицы show; под retail_avro.db схеме нет таблицТаблица не создается с использованием sqoop import-all

sqoop import-all-tables \ 
--m 2 \ 
--connect "jdbc:mysql://quickstart.cloudera:3306/retail_db" \ 
--username=retail_dba \ 
--password=cloudera \ 
--warehouse-dir=/user/hive/warehouse/retail_avro.db \ 
--create-hive-table \ 
--as-avrodatafile 

После вышеупомянутых команд ниже является выход, если я получить доступ с помощью команд HDFS:

[[email protected] ~]$ hdfs dfs -ls /user/hive/warehouse/retail_avro.db 
Found 6 items 
drwxr-xr-x - cloudera hive   0 2016-12-30 04:25 /user/hive/warehouse/retail_avro.db/categories 
drwxr-xr-x - cloudera hive   0 2016-12-30 04:25 /user/hive/warehouse/retail_avro.db/customers 
drwxr-xr-x - cloudera hive   0 2016-12-30 04:25 /user/hive/warehouse/retail_avro.db/departments 
drwxr-xr-x - cloudera hive   0 2016-12-30 04:25 /user/hive/warehouse/retail_avro.db/order_items 
drwxr-xr-x - cloudera hive   0 2016-12-30 04:26 /user/hive/warehouse/retail_avro.db/orders 
drwxr-xr-x - cloudera hive   0 2016-12-30 04:26 /user/hive/warehouse/retail_avro.db/products 
[[email protected] ~]$ 
[[email protected] ~]$ 
[[email protected] ~]$ hdfs dfs -ls /user/hive/warehouse/retail_avro.db/categories 
Found 3 items 
-rw-r--r-- 1 cloudera hive   0 2016-12-30 04:25 /user/hive/warehouse/retail_avro.db/categories/_SUCCESS 
-rw-r--r-- 1 cloudera hive  1007 2016-12-30 04:25 /user/hive/warehouse/retail_avro.db/categories/part-m-00000.avro 
-rw-r--r-- 1 cloudera hive  959 2016-12-30 04:25 /user/hive/warehouse/retail_avro.db/categories/part-m-00001.avro 

И когда я залогиниться в энцефалопатией:

hive> use retail_avro; 
    OK 
    Time taken: 1.942 seconds 
    hive> show tables; 
    OK 
    Time taken: 0.518 seconds 
    hive> select * from departments; 
    FAILED: SemanticException [Error 10001]: Line 1:14 Table not found 'departments' 

ответ

0
  1. Sqoop Hive импорт в настоящее время несовместима с --as-avrodatafile и --as-sequencefile. Пожалуйста, посетите Sqoop Hive Import Documentation, чтобы получить дополнительную информацию об этом.

  2. avrodatafile потребности .avsc схемы и avroSerde создать таблицу в формате avro. Так как вы создаете файл avro, вам также нужен avroschema. Здесь Sqoop несовместим с avrodatafile, поэтому аргументы --create-hive-table проигнорированы gettind и поэтому Sqoop не может создать таблицу Hive, но он импортирует данные в формат .avro в нужную директорию, так как другие аргументы верны и поддерживаются.

Вы все еще можете сгенерировать схему .avsc и создать таблицу с теми же данными. Вы можете следить за этим Sqoop avro import blog.

Пожалуйста, посетите Hive Avro SerDe documentation, чтобы узнать больше о avrofile формате

0

Вы не создали таблицу в улье.

как "показать таблицы;" ничего не вернули.

Пожалуйста, перейдите в раздел броска 7.2.10. Импорт данных в улейlink

ПРИМЕЧАНИЕ. При импорте или экспорте данных с использованием sqoop вам необходимо создать таблицу или таблицу.

экспорт в RDMS - таблица должна представить

экспорта в энцефалопатию - Таблица может быть создана письмо, как это выгрузить данные на HDF.

Go throw https://cwiki.apache.org/confluence/display/Hive/AvroSerDe.

+0

Тогда что использование этого --create улей столом арг ??? – AJm

+0

--Советы-скрипичные таблицы. Этот параметр говорит, что если таблица не существует, она создаст ее. – AJm

+0

стол для укусов ящиков из avro https://cwiki.apache.org/confluence/display/Hive/AvroSerDe .. –

 Смежные вопросы

  • Нет связанных вопросов^_^