public interface AsyncClientInterface
Future<CreateTableResponse> createTable(CreateTableRequest createTableRequest, TableStoreCallback<CreateTableRequest,CreateTableResponse> callback)
表被创建后不能立即进行读写操作, 需要等待几秒钟.
createTableRequest
- 执行CreateTable所需的参数callback
- 请求完成后调用的回调函数,可以为null,则代表不需要执行回调函数TableStoreException
- TableStore服务返回的异常ClientException
- 请求的返回结果无效、或遇到网络异常Future<UpdateTableResponse> updateTable(UpdateTableRequest updateTableRequest, TableStoreCallback<UpdateTableRequest,UpdateTableResponse> callback)
例如用户想要调整表的TTL、MaxVersions等配置或者用户发现当前预留吞吐量过小需要上调预留吞吐量。
UpdateTable操作不能用于更改表的TableMeta,可以调整的配置为:
ReservedThroughput
):
表的预留吞吐量可被动态更改,读或写吞吐量都可以分别单独更改。调整每个表读写吞吐量的最小时间间隔为 1 分钟,
如果本次 UpdateTable 操作距上次 UpdateTable 或者 CreateTable 操作不到 1 分钟的话该请求将被拒绝。
TableOptions
):
只有表的部分配置项可以允许被动态更改,例如TTL、MaxVersions等。
updateTableRequest
- 执行UpdateTable所需的参数callback
- 请求完成后调用的回调函数,可以为null,则代表不需要执行回调函数TableStoreException
- TableStore服务返回的异常ClientException
- 请求的返回结果无效、或遇到网络异常Future<DescribeTableResponse> describeTable(DescribeTableRequest describeTableRequest, TableStoreCallback<DescribeTableRequest,DescribeTableResponse> callback)
获取表的详细信息,表的详细信息包括:
TableMeta
)ReservedThroughputDetails
)TableOptions
)describeTableRequest
- 执行DescribeTable所需的参数callback
- 请求完成后调用的回调函数,可以为null,则代表不需要执行回调函数TableStoreException
- TableStore服务返回的异常ClientException
- 请求的返回结果无效、或遇到网络异常Future<ListTableResponse> listTable(TableStoreCallback<ListTableRequest,ListTableResponse> callback)
callback
- 请求完成后调用的回调函数,可以为null,则代表不需要执行回调函数TableStoreException
- TableStore服务返回的异常ClientException
- 请求的返回结果无效、或遇到网络异常Future<DeleteTableResponse> deleteTable(DeleteTableRequest deleteTableRequest, TableStoreCallback<DeleteTableRequest,DeleteTableResponse> callback)
注意:表被成功删除后该表下所有的数据都将会被清空,无法恢复,请谨慎操作!
deleteTableRequest
- 执行DeleteTable所需的参数callback
- 请求完成后调用的回调函数,可以为null,则代表不需要执行回调函数TableStoreException
- TableStore服务返回的异常ClientException
- 请求的返回结果无效、或遇到网络异常Future<CreateIndexResponse> createIndex(CreateIndexRequest createIndexRequest, TableStoreCallback<CreateIndexRequest,CreateIndexResponse> callback)
createIndexRequest
- 执行CreateIndex所需的参数callback
- 请求完成后调用的回调函数,可以为null,则代表不需要执行回调函数TableStoreException
- TableStore服务返回的异常ClientException
- 请求返回的结果无效、或遇到网络异常Future<DeleteIndexResponse> deleteIndex(DeleteIndexRequest deleteIndexRequest, TableStoreCallback<DeleteIndexRequest,DeleteIndexResponse> callback)
deleteIndexRequest
- 执行deleteIndex所需的参数callback
- 请求完成后调用的回调函数,可以为null,则代表不需要执行回调函数TableStoreException
- TableStore服务返回的异常ClientException
- 请求返回的结果无效、或遇到网络异常Future<GetRowResponse> getRow(GetRowRequest getRowRequest, TableStoreCallback<GetRowRequest,GetRowResponse> callback)
getRowRequest
- 执行GetRow操作所需的参数。callback
- 请求完成后调用的回调函数,可以为null,则代表不需要执行回调函数TableStoreException
- TableStore服务返回的异常ClientException
- 请求的返回结果无效、或遇到网络异常Future<PutRowResponse> putRow(PutRowRequest putRowRequest, TableStoreCallback<PutRowRequest,PutRowResponse> callback)
若要写入的行已经存在,则旧行会被删除后写入新的一行。
若要写入的行不存在,则直接写入新的一行。
putRowRequest
- 执行PutRow操作所需的参数。callback
- 请求完成后调用的回调函数,可以为null,则代表不需要执行回调函数TableStoreException
- TableStore服务返回的异常ClientException
- 请求的返回结果无效、或遇到网络异常Future<UpdateRowResponse> updateRow(UpdateRowRequest updateRowRequest, TableStoreCallback<UpdateRowRequest,UpdateRowResponse> callback)
若要更新的行不存在,则新写入一行数据。
更新操作可以包括新写入一个属性列或者删除一个属性列的一个或多个版本。
updateRowRequest
- 执行UpdateRow操作所需的参数。callback
- 请求完成后调用的回调函数,可以为null,则代表不需要执行回调函数TableStoreException
- TableStore服务返回的异常ClientException
- 请求的返回结果无效、或遇到网络异常Future<DeleteRowResponse> deleteRow(DeleteRowRequest deleteRowRequest, TableStoreCallback<DeleteRowRequest,DeleteRowResponse> callback)
若该行存在,则删除该行。
若该行不存在,则该操作不产生任何影响。
deleteRowRequest
- 执行DeleteRow操作所需的参数。callback
- 请求完成后调用的回调函数,可以为null,则代表不需要执行回调函数TableStoreException
- TableStore服务返回的异常ClientException
- 请求的返回结果无效、或遇到网络异常Future<BatchGetRowResponse> batchGetRow(BatchGetRowRequest batchGetRowRequest, TableStoreCallback<BatchGetRowRequest,BatchGetRowResponse> callback)
BatchGetRow 操作可视为多个 GetRow 操作的集合,各个操作独立执行,独立返回结果,独立计算服务能力单元。
与执行大量的 GetRow 操作相比,使用 BatchGetRow 操作可以有效减少请求的响应时间,提高数据的读取速率。
但需要注意的是 BatchGetRow 只支持在表级别设置查询条件。操作完成后,需要逐个检查子请求的状态,并选择对失败的行进行重试。
batchGetRowRequest
- 执行BatchGetRow操作所需的参数。callback
- 请求完成后调用的回调函数,可以为null,则代表不需要执行回调函数Future<BatchWriteRowResponse> batchWriteRow(BatchWriteRowRequest batchWriteRowRequest, TableStoreCallback<BatchWriteRowRequest,BatchWriteRowResponse> callback)
BatchWriteRow 操作可视为多个PutRow、UpdateRow、DeleteRow 操作的集合,各个操作独立执行,独立返回结果,独立计算服务能力单元。
执行 BatchWriteRow 操作后,需要逐个检查子请求的状态,来判断写入结果,并选择对失败的行进行重试。
batchWriteRowRequest
- 执行BatchWriteRow操作所需的参数。callback
- 请求完成后调用的回调函数,可以为null,则代表不需要执行回调函数Future<GetRangeResponse> getRange(GetRangeRequest getRangeRequest, TableStoreCallback<GetRangeRequest,GetRangeResponse> callback)
getRangeRequest
- 执行GetRange操作所需的参数。callback
- 请求完成后调用的回调函数,可以为null,则代表不需要执行回调函数Future<ComputeSplitsBySizeResponse> computeSplitsBySize(ComputeSplitsBySizeRequest computeSplitsBySizeRequest, TableStoreCallback<ComputeSplitsBySizeRequest,ComputeSplitsBySizeResponse> callback)
computeSplitsBySizeRequest
- 执行ComputeSplitsBySize操作所需的参数。callback
- 请求完成后调用的回调函数,可以为null,则代表不需要执行回调函数Future<ListStreamResponse> listStream(ListStreamRequest listStreamRequest, TableStoreCallback<ListStreamRequest,ListStreamResponse> callback)
listStreamRequest
- 执行ListStream操作所需的参数。callback
- 请求完成后调用的回调函数,可以为null,则代表不需要执行回调函数Future<DescribeStreamResponse> describeStream(DescribeStreamRequest describeStreamRequest, TableStoreCallback<DescribeStreamRequest,DescribeStreamResponse> callback)
describeStreamRequest
- 执行DescribeStream操作所需的参数。callback
- 请求完成后调用的回调函数,可以为null,则代表不需要执行回调函数Future<GetShardIteratorResponse> getShardIterator(GetShardIteratorRequest getShardIteratorRequest, TableStoreCallback<GetShardIteratorRequest,GetShardIteratorResponse> callback)
getShardIteratorRequest
- 执行GetShardIterator操作所需的参数。callback
- 请求完成后调用的回调函数,可以为null,则代表不需要执行回调函数Future<GetStreamRecordResponse> getStreamRecord(GetStreamRecordRequest getStreamRecordRequest, TableStoreCallback<GetStreamRecordRequest,GetStreamRecordResponse> callback)
getStreamRecordRequest
- 执行GetStreamRecord操作所需的参数。callback
- 请求完成后调用的回调函数,可以为null,则代表不需要执行回调函数Future<StartLocalTransactionResponse> startLocalTransaction(StartLocalTransactionRequest request, TableStoreCallback<StartLocalTransactionRequest,StartLocalTransactionResponse> callback)
request
- 启动本地事务操作所需的参数TableStoreException
- TableStore服务返回的异常ClientException
- 请求的返回结果无效、或遇到网络异常Future<CommitTransactionResponse> commitTransaction(CommitTransactionRequest request, TableStoreCallback<CommitTransactionRequest,CommitTransactionResponse> callback)
request
- 提交事务操作所需的参数TableStoreException
- TableStore服务返回的异常ClientException
- 请求的返回结果无效、或遇到网络异常Future<AbortTransactionResponse> abortTransaction(AbortTransactionRequest request, TableStoreCallback<AbortTransactionRequest,AbortTransactionResponse> callback)
request
- 取消事务操作所需的参数TableStoreException
- TableStore服务返回的异常ClientException
- 请求的返回结果无效、或遇到网络异常Future<CreateSearchIndexResponse> createSearchIndex(CreateSearchIndexRequest request, TableStoreCallback<CreateSearchIndexRequest,CreateSearchIndexResponse> callback)
request
- 创建SearchIndex所需的参数,详见CreateSearchIndexRequest
callback
- 请求完成后调用的回调函数,可以为null,则代表不需要执行回调函数TableStoreException
- TableStore服务返回的异常ClientException
- 请求的返回结果无效、或遇到网络异常Future<ListSearchIndexResponse> listSearchIndex(ListSearchIndexRequest request, TableStoreCallback<ListSearchIndexRequest,ListSearchIndexResponse> callback)
一个table下面,可以存在多个SearchIndex表,通过该函数,将能够获取一个table下面的所有SearchIndex信息
request
- 获取SearchIndex列表所需的参数callback
- 请求完成后调用的回调函数,可以为null,则代表不需要执行回调函数TableStoreException
- TableStore服务返回的异常ClientException
- 请求的返回结果无效、或遇到网络异常Future<DeleteSearchIndexResponse> deleteSearchIndex(DeleteSearchIndexRequest request, TableStoreCallback<DeleteSearchIndexRequest,DeleteSearchIndexResponse> callback)
通过指定 tableName 和 indexName 即可删除一个index
提示:在没有删除一个table下面所有的index之前,是不允许删除table的
request
- 删除SearchIndex所需的参数callback
- 请求完成后调用的回调函数,可以为null,则代表不需要执行回调函数TableStoreException
- TableStore服务返回的异常ClientException
- 请求的返回结果无效、或遇到网络异常Future<DescribeSearchIndexResponse> describeSearchIndex(DescribeSearchIndexRequest request, TableStoreCallback<DescribeSearchIndexRequest,DescribeSearchIndexResponse> callback)
request
- 获取SearchIndex所需的参数(tableName 和 indexName)callback
- 请求完成后调用的回调函数,可以为null,则代表不需要执行回调函数TableStoreException
- TableStore服务返回的异常ClientException
- 请求的返回结果无效、或遇到网络异常Future<SearchResponse> search(SearchRequest request, TableStoreCallback<SearchRequest,SearchResponse> callback)
构建自己的SearchRequest,然后获取SearchResponse
示例:
SearchQuery searchQuery = new SearchQuery();
TermQuery termQuery = new TermQuery();
termQuery.setFieldName("user_name");
termQuery.setTerm("jay");
searchQuery.setQuery(termQuery);
SearchRequest searchRequest = new SearchRequest(tableName, indexName, searchQuery);
SearchResponse resp = ots.search(searchRequest);
request
- 进行搜索所需的参数,详见SearchRequest
callback
- 请求完成后调用的回调函数,可以为null,则代表不需要执行回调函数SearchResponse
TableStoreException
- TableStore服务返回的异常ClientException
- 请求的返回结果无效、或遇到网络异常SyncClientInterface asSyncClient()
void shutdown()
请确保在所有请求执行完毕之后释放资源。释放资源之后将不能再发送请求,正在执行的请求可能无法返回结果。
Copyright © 2018. All Rights Reserved.