从不同来源将数据插入到目标配置单元表中时,我的作业正在并行运行时,我遇到一个状况/问题。
src_a data (source table 1):
ref_date_id,source_id,col_a,col_b
1902,src_a,2,3,4
1902,src_a,4,5,6
src_a data (source table 1):
ref_date_id,source_id,col_a,col_b
1903,src_b,2,3,4
1903,src_b,4,5,6
Target table: tgt_source_all
hdfs_path: /application/hive-warehouse/db/tgt_source_all/ref_date_id=1902/source_id=src_a/parquet.file
/application/hive-warehouse/db/tgt_source_all/ref_date_id=1903/source_id=src_b/parquet.file
这可以使我将源数据插入目标。但是在与其他来源同时在同一日期并行运行我的程序时,我遇到了问题?
like:
src_a data (source table 1):
ref_date_id,source_id,col_a,col_b
1904,src_a,2,3,4
1904,src_a,4,5,6
src_a data (source table 1):
ref_date_id,source_id,col_a,col_b
1904,src_b,2,3,4
1904,src_b,4,5,6
target data should insert as :
hdfs_path: /application/hive-warehouse/db/tgt_source_all/ref_date_id=1904/source_id=src_a/parquet.file
/application/hive-warehouse/db/tgt_source_all/ref_date_id=1904/source_id=src_b/parquet.file
但是,当在不同源上并行运行我的程序时,只有一个最初拾取的数据被插入分区目录中,而另一个源未插入并抛出错误,无法创建临时文件夹...
能否请您帮助我如何将多个源数据插入同一分区的目标表中?? 注意:我正在pyspark中运行程序。