gpt4 book ai didi

hadoop - 如何创建从 Hive 表到关系数据库的数据管道

转载 作者:可可西里 更新时间:2023-11-01 16:34:07 24 4
gpt4 key购买 nike

背景:

我有一个包含日志信息的 Hive 表“log”。该表每小时加载新的日志数据。我想对过去 2 天的日志进行一些快速分析,所以我想将过去 48 小时的数据提取到我的关系数据库中。

为了解决上述问题,我创建了一个由 HIVE SQL 查询加载的暂存配置单元表。将新数据加载到暂存表后,我使用 sqoop 查询将新日志加载到关系数据库中。

问题是 sqoop 正在将数据加载到 BATCH 中的关系数据库中。所以在任何特定时间我只有特定时间的部分日志。

这会导致错误的分析输出。

问题:

1).如何使此 Sqoop 数据加载具有事务性,即导出所有记录或不导出任何记录。

2).在 Hive Table -> Staging Table -> Relational Table 的整个过程中构建此数据管道的最佳方法是什么。

技术细节:

Hadoop 版本 1.0.4
hive - 0.9.0
Sqoop - 1.4.2

最佳答案

您应该能够使用 sqoop 通过使用名为 --staging-table 的选项来执行此操作。它的作用基本上是充当用于暂存导出数据的辅助表。暂存数据最终在单个事务中移动到目标表。因此,通过这样做,您应该不会遇到部分数据的一致性问题。

(来源:Sqoop documentation)

关于hadoop - 如何创建从 Hive 表到关系数据库的数据管道,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15000245/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com