Free Trial

ディスカッション - 日本語

答えを見つけ、質問し、Alteryx の専門知識を共有してください。

HDFSから複数ファイルを読み取る方法を教えてください。

yagi
メテオロイド

HDFSから複数ファイルを読み取りたいのですが、ワイルドカードは使用できないとドキュメントに記載がありました。

ディレクトリツールはローカルしか指定できない認識です。良い方法を知っている方はご教示ください。

 

yagi_1-1655367067058.png

↓ このマクロが提供されていればよかったのですが、既に公開停止?で存在しませんでした。。

Extending Alteryx HDFS Support: Better Living Thr... - Alteryx Community

 
4件の返信4
AkimasaKajitani
16 - Nebula
16 - Nebula

@yagi さん

 

読み込みたいファイル名は判明しているでしょうか?

もしそうであれば、入力ツールを使ったバッチマクロを作成し、ファイルリストをコントロールパラメーターで渡すことで一度に読み込めると思います。

 

弊社ブログにも記載がございます。

https://newssdx.kcme.jp/alteryxtips-batchmacro/

 

もしくは、コミュニティの過去のブログが参考になるかと思います。

https://community.alteryx.com/t5/%E3%83%96%E3%83%AD%E3%82%B0-%E6%97%A5%E6%9C%AC%E8%AA%9E/%E3%83%90%E...

 

 

公開されていたマクロについては、HadoopのAPIを使ったものだと思いますので、ダウンロードツールを使えば実装することは可能かと思います(環境があれば実験して色々と試せるんですが・・・)。

yagi
メテオロイド

@AkimasaKajitani さん

 

返信ありがとうございます。

 


 

読み込みたいファイル名は判明しているでしょうか?

 


いえ、ファイル名は動的で、固定文字+yyyymmddHHMM.csv(ファイル作成時間) になります。

なので、ご提示いただいたバッチマクロを動作させるためにHDFSからファイル名リストを取得する必要があると考えています。

改めてご教示いただければ幸いです。

 

 

 

 

AkimasaKajitani
16 - Nebula
16 - Nebula

@yagi さん

 

なるほど、、、となるとやはりHadoopのAPIを叩かないといけない感じがします・・・。

APIを利用するにはダウンロードツールを使って行う必要があります。

 

APIのアクセスは通常認証を行ってから各APIを叩く形になります。

 

Hadoopのセキュリティ設定によって認証のやり方が異なるようですので、マニュアルを見ながら進める必要があるかと思います。

https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-hdfs/WebHDFS.html#Authentication

 

ファイルリスト取得のAPIのマニュアルはこちらですね

https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-hdfs/WebHDFS.html#List_a_File

 

ダウンロードツールを使ったRestAPIの使い方は、過去にユーザー会で一度お話したことがありますので、そちらをまず参考にして頂ければと思います。

https://community.alteryx.com/t5/Tokyo-Japan-%E6%97%A5%E6%9C%AC%E8%AA%9E/9-29-%E7%81%AB-%E3%82%AA%E3...

 

若干ハードル高い内容かと思いますが、一度チャレンジ頂ければと思います。不明点あればご質問ください(ただし、私もHadoopの環境がないので、テストできないのでどこまでサポートできるかはわかりませんが・・・)。

 

yagi
メテオロイド

@AkimasaKajitani さん

 

情報提供ありがとうございます!

 

リンク先の情報を読み込みさせていただいていましたが、事情が変わり(業務仕様が変更になり)、固定ファイル名で取得することになりました。

ただノウハウ習得のため、個人的にHadoopAPI利用は実装しようと思っています。

この度は相談に乗っていただきありがとうございました。