如果源 table 没有时间戳列,如何使用 Sqoop 增量 lastmodified。
How to use Sqoop incremental lastmodified if source table does not have timestamp column.
如果源 table 没有时间戳列或任何此类日期列并且客户端不允许对源 table.Please 进行任何更改,如何使用 Sqoop 增量 lastmodified 指南!
1。您的来源 table 永远不会更新,只需追加
您通过指定您之前集成的最后一行来基于主自动增量键获取新插入的行。
2。您的来源 table 已更新并已插入
如果您的源 table 也已更新,您唯一的方法是获取整个 table 并将源和目标与基于所有列的散列函数进行比较。您可以通过在新 table 和配置单元 table 上使用 hash()
函数比较所有列来自己发现已修改的行
有几种更新配置单元的方法 table:
- merge (works better in hive2) and second part
- 如果您使用的是 stable 配置单元 1.2.x 版本
,则用两个语句 update/insert 替换合并
如果源 table 没有时间戳列或任何此类日期列并且客户端不允许对源 table.Please 进行任何更改,如何使用 Sqoop 增量 lastmodified 指南!
1。您的来源 table 永远不会更新,只需追加
您通过指定您之前集成的最后一行来基于主自动增量键获取新插入的行。
2。您的来源 table 已更新并已插入
如果您的源 table 也已更新,您唯一的方法是获取整个 table 并将源和目标与基于所有列的散列函数进行比较。您可以通过在新 table 和配置单元 table 上使用 hash()
函数比较所有列来自己发现已修改的行
有几种更新配置单元的方法 table:
- merge (works better in hive2) and second part
- 如果您使用的是 stable 配置单元 1.2.x 版本 ,则用两个语句 update/insert 替换合并