疑难解决JDBC和ODBC连接

学习解析DatabricksJDBC和ODBC连接错误

写由亚当巴夫拉卡

2022年8月15日

文章提供资讯帮助解答数据bricksJDBC/ODBC服务器与BI工具与数据源之间的联系

取结果集执行语句后慢

查询执行后,可调用结果列获取结果列ext()返回方法结果集重复方法触发驱动Trift服务器请求取回批列发现批量大小对性能有重大影响多数JDBC/ODB驱动器中的默认值太保守,我们建议你设置到至少10万无法访问BI工具提供方

超时/异常创建连接

拥有服务器主机名后,从终端运行后续测试检查仓库连接

Curl网站s
           
            :
            
             /sql/protocolv1/o/0/
             
              H“授权基础$-n'toke:
              
               QQ基础64
              
             
            
           

如果连接时间结束,请检查网络连接设置正确性

TTransportException

if响应包含aTTransportException和下文一样,它表示网关正常运行并有效传递证书无法连接到相同证书时,请检查客户端使用正确配置并使用最新Simba驱动器:

HTTP误差: 500

问题存取/cliservice理由:

javax.servlet.ServletException: org.apache.thrift.transport.TTransportException

参考临时视图

if响应包含消息表或视图未找到:spark.temp-View意指客户端应用中临时视图没有正确引用Simba内部配置参数调用用户查询判定查询是否翻译后提交Thrift服务器默认参数设为0,Simba可修改查询特别是Simba创建习惯#tmp模式临时观察并期望客户程序引用此模式的临时视图设置可避免使用此特殊别名UseNativeQuery=1禁止Simba修改查询simba直接向Thrift服务器发送查询客户需要确认查询用spark期望的方言写,即HiveQL

简言之,你有以下选项处理Simba和Spark的临时视图:

  • UseNativeQuery=0并引用视图前缀它的名称#tmp.
  • UseNativeQuery=1并确认查询用spark期望方言写

其它错误

  • 万一报错401未经授权检查证书使用

    HTTP误差:401

    Problem accessing /sql/protocolv1/o/0/test-cluster.理由:

    未授权

    使用个人访问令牌验证用户名表示令牌个人访问令牌令牌从dapi开始
  • 响应像404未找到通常表示定位指定集群有问题 :

    HTTP误差:404

    Problem accessing /sql/protocolv1/o/0/missing-cluster.理由:

    Resource_DOES_NOT_EXIST:未发现集群匹配:缺失集群

  • if you see以下错误应用log4j日志
    spark.jdbc42.内部.apache.log4j.appender变量不可分配
    可忽略这些错误simba内部log4j库遮蔽以避免与log4j库冲突Simba可能仍加载log4j配置程序并尝试使用自定义log4j尝试与隐蔽库失败相关信息仍然记录在日志中
文章有帮助吗