在hdfs中移动和合并目录

时间:2016-05-06 18:21:39

标签: python hadoop hdfs snakebite

我正在更改hdfs目录结构。 目前的情况如下:

.../customers/customers1/2016-05-16-10/lots_of_files1.csv
.../customers/customers2/2016-05-16-10/lots_of_files2.csv
.../customers/customers3/2016-05-16-10/lots_of_files1.csv
.../customers/customers4/2016-05-16-10/...
.../customers/customers5/2016-05-16-10/...
.../customers/customers6/2016-05-16-10/...
.../customers/customers7/2016-05-16-10/...

我想摆脱顾客(1-7):

.../customers/2016-05-16-10/lots_of_files1.csv
.../customers/2016-05-16-10/lots_of_files2.csv
.../customers/2016-05-16-10/lots_of_files1(1).csv

我想使用snakebite python hdfs库但是出现了很多边缘情况: 1.同一日期可能不止一次。 2. csv的名称可能不止一次出现,但它的数据不同,也必须移动。

您如何以最干净的方式实现目标?

1 个答案:

答案 0 :(得分:0)

如果您不担心保留文件名,则可以轻松使用Apache Drill。就像是 Apache Drill通过SQL支持读写文件。 像

这样的东西
create table dfs.`/myfolder/customers/2016-05-16-10` select * from dfs.`/myfolder/customers` where dir1 = '2016-05-16-10';

/ * / 2016-05-16-10中的所有文件都将写入目标表。

https://drill.apache.org/docs/