跨集群表数据迁移

1.Spark方式

从老集群写到新集群

spark.table("ods.test").write.mode("overwrite").save("hdfs://192.20.10.10/tmp/tabledata/ods_test")

从新集群生成hive表:

spark.read.parquet("hdfs://192.20.10.10/tmp/tabledata/ods_test/").write.mode("overwrite").saveAsTable("ods.test")

如果是分区表的话使用partitionBy("")来定义

2.Hive MapReduce方式

(这种是针对hive表)
hive导出表:

hive -e "export table ods.ods_test to 'hdfs://192.168.20.35/tmp/hivetransfer/ods_test';"

hive导入表:

hive -e "import table ods.ods_test to 'hdfs://192.168.20.35/tmp/hivetransfer/ods_test';"

3.hdfs文件拷贝

hadoop distcp -m 1000 hdfs://cdh192-57:8020/user/hive/warehouse/ods.db/ods_test/*     hdfs://192.168.20.35:8020/user/hive/warehouse/ods.db/ods_test/

posted @ 2023-02-02 10:41  硅谷工具人  阅读(28)  评论(0编辑  收藏  举报
成功之道,在于每个人生阶段都要有不同的目标,并且通过努力实现自己的目标,毕竟人生不过百年! 所有奋斗的意义在于为个人目标实现和提升家庭幸福,同时能推进社会进步和国家目标! 正如古人讲的正心诚意格物致知,修身齐家治国平天下。