我正在使用Ambari 2.2.2和HDP 2.4
如果HIve使用Ambari,我已经启用了ACID属性。
我使用hive命令提示符创建了一个数据库表,这里是sql
CREATE TABLE variables_new ( id INT, a_cost INT , b_cost INT ) CLUSTERED BY (id) INTO 2 BUCKETS STORED AS ORC TBLPROPERTIES("transactional"="true");
我正在尝试从我的php源代码连接到hive。我使用过GIT的库。直到现在我能够连接到配置单元,列出数据库,列出表并运行select * from命令。现在我必须从我的php源代码插入,更新和删除。
运行Insert命令时出现以下错误
SQL:INSERT INTO TABLE DB_NAME.variables_new VALUES (2, 10, 20)
错误:
ThriftSQL \ HiveQuery对象([_resp:ThriftSQL \ HiveQuery:private] => ThriftSQL \ TExecuteStatementResp对象([status] => ThriftSQL \ TStatus 对象([statusCode] => 0 [infoMessages] => [sqlState] => [errorCode] => [errorMessage] => )[operationHandle] => ThriftSQL \ TOperationHandle对象([operationId] => ThriftSQL \ THandleIdentifier对象([guid] => ga ' Fx ; 5 BR[secret] => ސR< rK 6 )[operationType] => 0 [hasResultSet] => [modifiedRowCount] => )) [客户端:ThriftSQL \ HiveQuery:private] => ThriftSQL \ TCLIServiceClient 对象([input :protected] => Thrift \ Protocol \ TBinaryProtocol对象 ([strictRead_:protected] => [strictWrite_:protected] => 1 [trans_:protected] => Thrift \ Transport \ TSaslClientTransport对象( [transport_:Thrift \ Transport \ TSaslClientTransport:private] => Thrift \ Transport \ TSocket Object( [handle_:Thrift \ Transport \ TSocket:private] =>资源ID#25 [host_:protected] => 172.16.1.150 [port_:protected] => 10000 [sendTimeoutSec_:Thrift \ Transport \ TSocket:private] => 0 [sendTimeoutUsec_:Thrift \ Transport \ TSocket:private] => 100000 [recvTimeoutSec_:Thrift \ Transport \ TSocket:private] => 0 [recvTimeoutUsec_:Thrift \ Transport \ TSocket:private] => 750000 [persist_:protected] => [debug_:protected] => [debugHandler_:protected] => error_log)[username_:protected] =>蜂巢 [password_:protected] =>蜂巢 [saslComplete_:Thrift \ Transport \ TSaslClientTransport:private] => 1 [readBuffer_:Thrift \ Transport \ TSaslClientTransport:private] => [writeBuffer_:Thrift \ Transport \ TSaslClientTransport:private] => )) [output_:protected] => Thrift \ Protocol \ TBinaryProtocol对象( [strictRead_:protected] => [strictWrite_:protected] => 1 [trans_:protected] => Thrift \ Transport \ TSaslClientTransport对象( [transport_:Thrift \ Transport \ TSaslClientTransport:private] => Thrift \ Transport \ TSocket Object( [handle_:Thrift \ Transport \ TSocket:private] =>资源ID#25 [host_:protected] => 172.16.1.150 [port_:protected] => 10000 [sendTimeoutSec_:Thrift \ Transport \ TSocket:private] => 0 [sendTimeoutUsec_:Thrift \ Transport \ TSocket:private] => 100000 [recvTimeoutSec_:Thrift \ Transport \ TSocket:private] => 0 [recvTimeoutUsec_:Thrift \ Transport \ TSocket:private] => 750000 [persist_:protected] => [debug_:protected] => [debugHandler_:protected] => error_log)[username_:protected] =>蜂巢 [password_:protected] =>蜂巢 [saslComplete_:Thrift \ Transport \ TSaslClientTransport:private] => 1 [readBuffer_:Thrift \ Transport \ TSaslClientTransport:private] => [writeBuffer_:Thrift \ Transport \ TSaslClientTransport:private] => )) [seqid_:protected] => 0)[_ready:ThriftSQL \ HiveQuery:private] => )
当我查看/var/logs/hive/hiveserver2.log时 我可以看到以下错误
(KeyProviderCache.java:createKeyProviderURI(87)) - 无法使用键[dfs.encryption.key.provider.uri]找到uri来创建keyProvider !!
找不到解锁w模式的锁定
NoSuchLockException(消息:没有这样的锁lockid:248)
找不到表值_tmp__table__1:找不到default.values__tmp__table__1表
请帮助我,自上周以来我一直在挣扎,但仍然没有运气。