2017-06-27 6 views
0

OSXでApache Drill 1.10を使用しています。私は約150ファイルのS3バケットを持っており、私はa connection between the two as per the Drill documentationを設定しました。Apache Drill:S3バケット内のすべてのファイルを照会する方法は?

私はドリルから、バケット内のすべてのファイルを見ることができます:

jdbc:drill:zk=local> USE `s3`.`root`; 
+-------+--------------------------------------+ 
| ok |    summary    | 
+-------+--------------------------------------+ 
| true | Default schema changed to [s3.root] | 
+-------+--------------------------------------+ 
1 row selected (1.123 seconds) 

jdbc:drill:zk=local> SHOW files; 
<shows table of 15 files> 

そして、私は正常に個々のファイルを照会することができます

jdbc:drill:zk=local> select * from s3.`ocds-b5fd17-00ec7c92-54f3-4c50-8214-8b8c0cf9ff09-140281-qc54303.json`; 
<returns results> 

しかし、どのように私は、全体のディレクトリ全体に照会しますか?ローカルのファイルシステムでは、dfsのようなワイルドカードを提供するだけです。 /path/*.json、それはS3に動作していないよう:

jdbc:drill:zk=local> select * from s3.`*.json`; 
Error: VALIDATION ERROR: Can not create a Path from an empty string 
SQL Query null 

答えて

0

は、私は同じ問題を持つ他の誰の利益のためにここでそれを記録し、これを考え出しました。

バケットのルートにディレクトリを作成します(例: releasesと入力し、そこにファイルを配置します。次のクエリは、ルートディレクトリ上で実行されます

select * from s3.`releases`; 
0

select * from s3.`.`; 

次に、あなただけで、ディレクトリ内のすべてのファイルを照会することができます

関連する問題