sql—用零停机时间替换配置单元表中的数据

bnlyeluc  于 2021-06-26  发布在  Hive
关注(0)|答案(1)|浏览(292)

我定期接收制表符分隔的数据并将其加载到配置单元表中。
当我得到一个新的数据集时,我需要一种零停机时间重新加载表的方法。这行不通:

drop table t;
load data local inpath ... into table t;   // table is down while loading
ffvjumwh

ffvjumwh1#

您可能需要一个临时表,吨的解决方案是可用的,这可能是有趣的
https://dba.stackexchange.com/questions/141530/when-you-switch-table-a-to-table-b-does-the-index-data-get-switched-as-well
您还可以考虑使用视图在两个联机表之间切换,这样表t将变成:
片剂tflip
表tflop
查看vt—从tflip中选择*
加载数据时,您可以

load data local inpath ... into table TFlop;   // view remain up while loading

最后呢

alter view VT as Select * from TFlop GO

在下一次加载中,您将通过加载到表tflip中,然后更新视图以指向tflip来完成oposite

相关问题