注:TABLE为HIVE表的名称,为HDFS目录。
我有两台服务器,分别是C1和C2。C1有一个顺序格式的表item.name。C2有一个orc格式的表item.name,它的数据与C1相同。
每当我需要使用discp将数据从表item.name从C1复制到C2时。在运行discp之前,我需要删除C2中的当前表,并按顺序重新创建一个表。最后,将表格重新创建为兽人格式。这对于庞大的数据和日常任务来说是很麻烦的。
我想知道在C2中创建两个表作为item.name(Orc)和item.name_seq(顺序)的想法。使用这种方法,我需要将数据从c1中的item.name复制到c2中的item.name_seq。复制数据后,我可以插入C2中的item.name的orc表。这种方法好吗?有可能实现吗?
基本上,对于discp,我需要将数据从C1中的item.name复制到C2中的item.name_seq。
如果你有更好的办法,请让我知道。
1条答案
按热度按时间zbwhf8kr1#
您可以使用SparkSQL在配置单元服务器之间进行读写,同时更改表列名称、和格式。
否则,正如您所提到的,您需要在discp之后重新创建表(以Sequencefile格式),然后运行CTAS语句以在配置单元本身内转换为ORC。