【发布时间】:2011-07-29 13:22:09
【问题描述】:
我希望在 cron 上运行导入 Hive,并希望只使用
“将数据本地路径'/tmp/data/x'加载到表X中”到表中就足够了。
后续命令会覆盖表中已有的内容吗?还是会追加?
【问题讨论】:
我希望在 cron 上运行导入 Hive,并希望只使用
“将数据本地路径'/tmp/data/x'加载到表X中”到表中就足够了。
后续命令会覆盖表中已有的内容吗?还是会追加?
【问题讨论】:
这个网站http://wiki.apache.org/hadoop/Hive/LanguageManual 是您与 Hive 打交道时的朋友。 :)
地址加载数据到 Hive 的页面是http://wiki.apache.org/hadoop/Hive/LanguageManual/DML 该页面指出
如果使用了 OVERWRITE 关键字,那么 目标表的内容(或 分区)将被删除并 替换为所引用的文件 文件路径。否则引用的文件 按文件路径将添加到 桌子。注意,如果目标表 (或分区)已经有一个文件 其名称与任何 文件路径中包含的文件名 - 然后 现有文件将被替换 使用新文件。
在您的情况下,您没有使用 OVERWRITE 关键字,因此文件将被添加到表中。 (除非它们是相同的文件,在这种情况下它们会被覆盖)
【讨论】:
如果使用了 OVERWRITE 关键字,则目标表(或分区)的内容将被删除并替换为 filepath 所引用的文件;否则文件路径引用的文件将被添加到表中。
【讨论】: