【TcaplusDB知识库】[Generic表]扫描数据示例代码

【TcaplusDB知识库】[Generic表]扫描数据示例代码

准备工作

参见章节: 准备工作

示例代码

示例代码

import com.tencent.tcaplus.client.Client;
import com.tencent.tcaplus.client.ClientFactory;
import com.tencent.tcaplus.client.GenericTableTraverser;
import com.tencent.tcaplus.client.Record;
import com.tencent.tcaplus.client.Request;
import com.tencent.tcaplus.client.Response;
import com.tencent.tdr.tcaplus_protocol_cs.TcaplusProtocolCsConstants;

import java.util.ArrayList;
import java.util.List;

public class Example {

   public static void main(String[] arguments) {
       // 1. 准备环境信息
       // 1.1. 目录服务地址列表
       List<String> dirList = new ArrayList<String>();
       dirList.add("tcp://x.x.x.x:9999");
       dirList.add("tcp://y.y.y.y:9999");
       // 1.2. 业务ID
       int appId = 1;
       // 1.3. 业务密码
       String appPassword = "****************";
       // 1.4. 表格组ID
       int tableGroupId = 1;
       // 1.5. 表格名称
       String tableName = "test";

       // 2. 创建客户端
       Client client = ClientFactory.createClient(appId, tableGroupId, appPassword, dirList);
       try {
           // 3. 构造根据部分Key字段值读取数据的请求
           // 3.1. 获取请求对象。为了提升SDK性能,Request对象是复用的
           Request request = client.acquireRequest();
           // 3.2. 创建1个扫描器
           GenericTableTraverser traverser = client.getGenericTableTraverser(tableName);
           // 3.3. 添加需要读取的Value字段
           traverser.addFieldName("typeid");
           traverser.addFieldName("Data");
           traverser.addFieldName("uname");
           // 3.4. 设置一批最多返回的数据条数,由于扫描返回的数据量通常较多,需要分批返回
           traverser.setLoadOptions(100);
           // 3.5. 设置总共最多返回的数据条数
           traverser.setTotalLimit(10000);

           // 4. 启动扫描器
           Iterator<Record> iterator = traverser.start();

           // 5. 循环从迭代器中获取数据,直到读完所有数据
           while (!iterator.hasNext()) {
               Record result = iterator.next();
               // TODO 在此添加处理返回数据的代码
          }
      } finally {
           // 6. 销毁客户端对象
           ClientFactory.destroyClient(client);
      }
  }

 


 

【TcaplusDB知识库】[Generic表]扫描数据示例代码

TcaplusDB是腾讯出品的分布式NoSQL数据库,存储和调度的代码完全自研。具备缓存+落地融合架构、PB级存储、毫秒级时延、无损水平扩展和复杂数据结构等特性。同时具备丰富的生态、便捷的迁移、极低的运维成本和五个九高可用等特点。客户覆盖游戏、互联网、政务、金融、制造和物联网等领域。

上一篇:C# 利用Log4Net进行日志记录


下一篇:Log4Net异常日志记录在asp.net mvc3.0的应用