java - 如何将 Apache Drill 选项配置为环境变量?

标签 java configuration environment-variables apache-drill

我想通过启动 drillbit 在系统级别将 drill.exec.hashjoin.fallback.enabled 设置为 true

我可以在 session 期间设置它,例如 alter session setdrill.exec.hashjoin.fallback.enabled=TRUE;,我也知道 drill-override.conf文件。但是,如何通过将环境变量传递给我的容器来设置它,例如:

    drill:
        image: drill/apache-drill
        restart: always
        environment:
            # - DRILL_EXEC_HASHJOIN_FALLBACK_ENABLED=TRUE
            # - DRILLBIT_JAVA_OPTS="-Ddrill.exec.hashjoin.fallback.enabled=true"
            - DRILLBIT_JAVA_OPTS="-Ddrill.exec.options.drill.exec.hashjoin.fallback.enabled=true"
        tty: true
        volumes:
            - orlando:/orlando
        ports:
            - "8047:8047"
            - "31010:31010"

最佳答案

请问Drill是以嵌入式还是分布式方式启动的?

对于分布式模式,DRILLBIT_JAVA_OPTS=-Ddrill.exec.options.drill.exec.hashjoin.fallback.enabled=true 应该按预期工作,但对于嵌入式,不考虑这个变量,应该使用 DRILL_JAVA_OPTS 变量:

- DRILL_JAVA_OPTS=-Ddrill.exec.options.drill.exec.hashjoin.fallback.enabled=true

更多变量说明请引用https://github.com/apache/drill/blob/master/distribution/src/resources/runbit#L36

关于java - 如何将 Apache Drill 选项配置为环境变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58234237/

相关文章:

java - Android : Merging two types of List with different adapters, 列表在 UI 中合并

java - 在Java中,如何在给定的时间内播放声音?

Grails YAML 映射列表

java - 运行 Java 集成测试时未设置环境变量

java - 如何在Android中添加Fragment

java - 使用 Maven surefire 插件来包含测试

java - 用于管理多个 Web 应用程序配置的工具

java - 如何刷新 Log4J2 中的异步记录器(使用中断器)

java - Tomcat - CATALINA_BASE 和 CATALINA_HOME 变量

java - Eclipse 忽略 CLASSPATH 变量?