Saya memiliki pekerjaan mapreduce, di mana jalur input file adalah: /basedirectory/*/*.txt

Di dalam direktori dasar, saya memiliki subfolder yang berbeda (CaseA, CaseB dll), yang masing-masing berisi file teks hdfs.

Pada fase peta pekerjaan, saya ingin mencari tahu dari mana tepatnya data shard berasal (mis. CaseA). Bagaimana saya bisa mencapai itu?

Saya telah melakukan sesuatu yang serupa untuk pekerjaan mapreduce dengan lebih dari 1 tabel input hbase di mana saya menggunakan context.getInputSplit().getTableName() untuk menemukan nama tabel yang sebenarnya tetapi tidak yakin apa yang harus dilakukan untuk file input HDFS.

1
behold 24 Maret 2019, 01:20

1 menjawab

Jawaban Terbaik

Anda bisa mendapatkan pemisahan input menggunakan context.getInputSplit() (di mana context adalah mapper.context) dan kemudian menggunakan metode .getPath() pada inputSplit untuk mengembalikan jalur file.

1
ikos23 24 Maret 2019, 21:25