Apache-Drill 中的 PostgreSQL 连接

问题描述 投票:0回答:2

我正在尝试使用以下配置让 Apache Drill 连接到 PostgreSQL 数据库

# storage-plugins-override.conf
    "postgresql": {
      "type": "jdbc",
      "driver": "org.postgresql.Driver",
      "url": "${POSTGRES_URL}",
      "username": "${POSTGRES_USER}",
      "password": "${POSTGRES_PASSWORD}",
      "enabled": true,
      "sourceParameters": {
        "minimumIdle": 0,
        "autoCommit": true,
        "connectionTestQuery": "select version() as postgresql_version",
        "dataSource.cachePrepStmts": true,
        "dataSource.prepStmtCacheSize": 250
      }

运行以下命令时:

docker run -it --name drill -p 8048:8047 -p 31011:31010 \
  -e GCS_KEY_FILE -e DATA_PATH -e POSTGRES_URL -e POSTGRES_USER -e POSTGRES_PASSWORD \
  -v /home/indio/drill/bq:/tmp/data \
  -v /home/indio/drill/drill-override.conf:/opt/drill/conf/drill-override.conf \
  -v /home/indio/drill/storage-plugins-override.conf:/opt/drill/conf/storage-plugins-override.conf \
  -v /home/indio/drill/postgres-sample-data:/opt/drill/sample-data/postgres \
    -v /home/indio/drill/postgresql-42.6.0.jar:/opt/drill/jars/3rdparty/postgresql-42.6.0.jar \
  apache/drill \
  /opt/drill/bin/sqlline -u "jdbc:drill:zk=local" -n admin -p admin

使用

https://drill.apache.org/docs/rdbms-storage-plugin/
中提供的说明下载postgresql-42.6.0.jar插件。

注意到两件事:

首先

apache drill> SHOW SCHEMAS;
+--------------------+
|    SCHEMA_NAME     |
+--------------------+
| dfs.default        |
| dfs.root           |
| dfs.tmp            |
| information_schema |
| sys                |
| cp.default         |
+--------------------+
6 rows selected (0.104 seconds)

apache drill> use pgdb;
Error: VALIDATION ERROR: Schema [pgdb] is not valid with respect to either root schema or current default schema.

Current default schema: No default schema selected

[Error Id: 3fffb76d-92f8-4c17-97e7-1d5f022a9ee1 ] (state=,code=0)
apache drill> 

第二

在WebUI上,我在存储选项卡下的“启用存储插件”上没有看到rdbms插件。

我做错了什么?

postgresql apache-drill
2个回答
0
投票

请尝试使用提供的 /opt/drill/bin/drill-embedded 启动嵌入式 Drill,以防某些初始化未进行。


0
投票

看来你必须先启用存储插件。在右侧的 Web UI 中找到 RDBMS 插件并手动启用它。

© www.soinside.com 2019 - 2024. All rights reserved.