Почему в hive и bigSQL наблюдается несоответствие данных на 1 запись?
Я создал таблицу улья и интегрировал ее в bigSQL. в улье мой счет правильный, но в bigSQL количество записей дополнительно на 1. Ниже приведены свойства таблицы, которые я использовал для создания таблицы улья.
create table test(name string,age int,sal float,city string,country string,emp_id int,increment int)
ROW FORMAT DELIMITED FIELDS TERMINATED BY '|'
STORED AS TEXTFILE
LOCATION '/user/test'
tblproperties ("skip.header.line.count"="1");
Загружаемый текстовый файл содержит имена столбцов в первой строке. Поэтому я должен использовать
tblproperties ("skip.header.line.count"="1");
Когда я делаю запрос подсчета в улье, я получаю вывод ниже
Total MapReduce CPU Time Spent: 7 seconds 440 msec
OK
48203
Однако, когда я синхронизировал таблицу в bigSQL, я получаю меньше
+-------+
| 1 |
+-------+
| 48204 |
Есть идеи, где я совершаю ошибку?
Спасибо
1 ответ
Я нашел решение этой проблемы.
1) We need to create a temp hive table with tblproperties ("skip.header.line.count"="1");.
2) Load the file on this temp table.
3) create another table without tblproperties ("skip.header.line.count"="1");.
4) insert into tbl select * from temo_tbl;.