2

如何将文本文件加载到 Apache Kudu 表?

源文件需要先在HDFS空间吗?

如果它与其他 hadoop 生态系统程序(即/hive、impala)不共享相同的 hdfs 空间,是否有 Apache Kudu 等效于:

hdfs dfs -put /path/to/file

在我尝试加载文件之前?

4

1 回答 1

3

该文件不需要先在HDFS中。可以从边缘节点/本地机器获取。Kudu类似于Hbase。它是一个实时存储,支持键索引记录查找和变异,但不能直接存储文本文件就像在 HDFS 中一样。对于 Kudu 存储文本文件的内容,需要对其进行解析和标记化。为此,您需要 Spark 执行/java api 以及 Nifi(或 Apache Gobblin)来执行处理然后存储它在 Kudu 表中。

或者

您可以将它与 Impala 集成,允许您使用 Impala 使用 Impala 的 SQL 语法从 Kudu 平板电脑中插入、查询、更新和删除数据,作为使用 Kudu API 构建自定义 Kudu 应用程序的替代方法。以下是步骤:

  1. 在 hdfs 中导入文件
  2. 创建一个外部 impala 表。
  3. 然后在表中插入数据。
  4. 使用关键字创建一个 kudu 表 ,stored as KUDU并将As Select 内容从 impala 复制到 kudu。

在此链接中,您可以参考更多信息 - https://kudu.apache.org/docs/quickstart.html

于 2017-12-12T08:56:26.950 回答