0

我正在尝试将数据加载到 Kudu 表,但得到一个奇怪的结果。

在 Impala 控制台中,我从 Sqoop 导入的四个 HDFS 文件创建了一个外部表:

drop table if exists hdfs_datedim;
create external table hdfs_datedim
( ... )
row format
 delimited fields terminated by ','
location '/user/me/DATEDIM';

一个 SELECT COUNT(*) 告诉我有很多行存在。查询时数据看起来不错。

我使用标准选择复制结果

INSERT INTO impala_kudu.DATEDIM
SELECT * FROM hdfs_datedim;

SELECT COUNT(*) 告诉我 impala_kudu.DATEDIM 有四行(HDFS 中的文件数不是表中的行数。

有任何想法吗?

4

3 回答 3

1

目前 Sqoop 还不支持 Kudu。您可以导入到 HDFS,然后使用 Impala 将数据写入 Kudu。

于 2018-03-26T12:44:00.730 回答
0

sqoop 创建的数据隐藏在一系列格式不佳的 csv 文件中。由于平面文件中的数据,导入失败且没有错误。注意日期格式和字符串中嵌入了分隔符的文本字符串。

于 2018-01-08T16:04:10.813 回答
0

如果您有 (csv/avro/parquet) 格式的 HDFS 数据,则可以使用以下命令将文件导入 Kudu 表。

先决条件: 兼容版本的 Kudu jar(1.6 或更高版本)

spark2-submit  --master yarn/local  --class org.apache.kudu.spark.tools.ImportExportFiles <path of kudu jar>/kudu-spark2-tools_2.11-1.6.0.jar --operation=import --format=<parquet/avro/csv> --master-addrs=<kudu master host>:<port number>  --path=<hdfs path for data> --table-name=impala::<table name>
于 2018-06-12T07:56:02.300 回答