MongoDB
inのストレージ プラグインを追加したいapache-drill
。ドキュメントを読んだ後、プログラムで次の 2 つの方法でそれを行うことができることがわかりました。
- 残りの API
- 構成に bootstrap-storage-plugins.json を使用する
Javaコードに2番目の方法を使用しています。
私のコードの有用な部分:
Connection conn = new Driver().connect("jdbc:drill:zk=local",null);
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("show databases");
while (rs.next())
{
String SCHEMA_NAME = rs.getString("SCHEMA_NAME");
System.out.println(SCHEMA_NAME);
}
ブートストラップ ストレージ プラグイン.json:
{
"type": "mongo",
"connection": "mongodb://localhost:27017/",
"enabled": true
}
しかし発砲時
"select * from mongo.testDB.`testCollection`";
次の例外が発生しました:
org.apache.calcite.sql.validate.SqlValidatorException SEVERE: org.apache.calcite.sql.validate.SqlValidatorException: テーブル 'mongo.testDB.testCollection' が見つかりません 2015 年 8 月 12 日 3:47:05 AM org.apache.calcite .runtime.CalciteException SEVERE: org.apache.calcite.runtime.CalciteContextException: 行 1、列 15 から行 1、列 19: テーブル 'mongo.testDB.testCollection' が見つかりません java.sql.SQLException: 解析エラー: 行から1、列 15 から行 1、列 19: テーブル 'mongo.testDB.testCollection' が見つかりません
bootstrap-storage-plugins.json
私のクラスパスにあります。追加情報を提供する必要がありますか?
編集:
クエリshow databases
を実行しましたが、 のスキーマが表示されませんMongoDB
。表示されているのは次のとおりです。
INFORMATION_SCHEMA
cp.default
dfs.default
dfs.root
dfs.tmp
sys