阿里OTS表格存储单挑与批量多行插入--javaSDK

@Autowired

private SyncClient syncClient;

----------------------------单条写入-------------------------------

/**
* ots单条写入
*/
 
     PrimaryKeyBuilder primaryKeyBuilder = PrimaryKeyBuilder.createPrimaryKeyBuilder();
        primaryKeyBuilder.addPrimaryKeyColumn(AliTSConfigs.TB_PK_NAME_CONNECTOR_ID, PrimaryKeyValue.fromString(info.getConnectorID()));
        primaryKeyBuilder.addPrimaryKeyColumn(AliTSConfigs.TB_PK_NAME_OPERATOR_ID, PrimaryKeyValue.fromString(operatorId));
        primaryKeyBuilder.addPrimaryKeyColumn(AliTSConfigs.TB_PK_NAME_STATION_ID, PrimaryKeyValue.fromString(stationId));
        primaryKeyBuilder.addPrimaryKeyColumn(AliTSConfigs.TB_PK_NAME_DATA_TIME, PrimaryKeyValue.fromLong(dataTime));
       PrimaryKey primaryKey = primaryKeyBuilder.build();
        RowPutChange rowPutChange = new RowPutChange(AliTSConfigs.TB_NAME_CONNECTOR_RT, primaryKey);

        rowPutChange.addColumn(new Column(AliTSConfigs.TB_COLUMN_STATUS, ColumnValue.fromLong(info.getStatus())));
       
rowPutChange.addColumn(new Column(AliTSConfigs.TB_COLUMN_PARKSTATUS, ColumnValue.fromLong(info.getParkStatus())));
        rowPutChange.addColumn(new Column(AliTSConfigs.TB_COLUMN_LOCKSTATUS, ColumnValue.fromLong(info.getLockStatus())));
        PutRowRequest request = new PutRowRequest();
        rowPutChange.setCondition(new Condition(RowExistenceExpectation.EXPECT_NOT_EXIST)); 
        request.setRowChange(rowPutChange);
        syncClient.putRow(request);


----------------------------批量写入-------------------------------

/**
* ots批量操作
*/
BatchWriteRowRequest request = new BatchWriteRowRequest();
try {
  for (int i = 0; i < list.size(); i++) {
      PrimaryKeyBuilder primaryKeyBuilder = PrimaryKeyBuilder.createPrimaryKeyBuilder();
 primaryKeyBuilder.addPrimaryKeyColumn(AliTSConfigs.TB_PK_NAME_CONNECTOR_ID, PrimaryKeyValue.fromString(list.get(i).getConnectorID()));
 primaryKeyBuilder.addPrimaryKeyColumn(AliTSConfigs.TB_PK_NAME_OPERATOR_ID, PrimaryKeyValue.fromString(operatorId));
  primaryKeyBuilder.addPrimaryKeyColumn(AliTSConfigs.TB_PK_NAME_STATION_ID, PrimaryKeyValue.fromString(stationId));
    primaryKeyBuilder.addPrimaryKeyColumn(AliTSConfigs.TB_PK_NAME_DATA_TIME, PrimaryKeyValue.fromLong(dataTime));

      PrimaryKey primaryKey = primaryKeyBuilder.build();

RowPutChange rowPutChange = new RowPutChange(AliTSConfigs.TB_NAME_CONNECTOR_RT, primaryKey);
rowPutChange.addColumn(new Column(AliTSConfigs.TB_COLUMN_STATUS, ColumnValue.fromLong(list.get(i).getStatus())));
        rowPutChange.addColumn(new Column(AliTSConfigs.TB_COLUMN_PARKSTATUS, ColumnValue.fromLong(list.get(i).getParkStatus())));
       rowPutChange.addColumn(new Column(AliTSConfigs.TB_COLUMN_LOCKSTATUS, ColumnValue.fromLong(list.get(i).getLockStatus())));

       // 构造插入数据的请求对象
       request.addRowChange(rowPutChange);
   }

// batchWriteRow接口会返回一个结果集 结果集中包含的结果个数与插入的行数相同,结果集中的结果不一定都是成功,用户需要自己对不成功的操作进行重试。
BatchWriteRowResponse  response  = syncClient.batchWriteRow(request);
// 结果异常处理
if (!response.isAllSucceed()) {
               for (BatchWriteRowResponse.RowResult rowResult : response.getFailedRows()) {
               log.error("失败的行:" + request.getRowChange(rowResult.getTableName(), rowResult.getIndex()).getPrimaryKey());
               log.error("失败原因:" + rowResult.getError().toString());
              }
}

 // 重试逻辑类似于上面的batchGetRow示例中的逻辑,这里省略

   } catch (Exception ex) {
    ex.printStackTrace();
    log.error("Batch write row failed.");
   } 

图片看着更清晰

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
雷尼绍OTS是一种多功能的调音台,被广泛应用于音乐录制室、演出现场以及广播电台等音频领域。该调音台采用了先进的数字技术,具备许多强大的特性和功能,能够满足用户对音频处理和控制的各种需求。 首先,雷尼绍OTS具备出色的音频处理能力。它配备了高质量的音频预设器,可以通过调整频率、增益、压缩和混响等参数来实现对音频的精确控制和调整。用户可以根据需要自定义音频效果,创建出独特的声音效果。 此外,雷尼绍OTS还拥有多通道输入输出功能,支持多种音频设备的连接和操作。它提供了丰富的输入接口,包括麦克风、乐器、CD播放器等,能够同时处理多个音频源。用户可以通过调整通道音量平衡、选择输入源和设置效果等,实现对不同音频信号的灵活控制。 雷尼绍OTS还提供了先进的数字信号处理和控制功能。它采用了数字化的信号处理技术,能够实时处理音频信号,消除干扰和噪音,提高音质。用户可以使用内置的数字音频效果器,在不同的场景中应用各种效果,创造出专业级的音乐作品。 另外,雷尼绍OTS还具备便捷的操作界面和用户友好的设计。它的控制面板清晰易懂,配备了显示屏和旋钮,用户可以直观地进操作和调整。同时,它还支持远程控制,用户可以通过连接计算机或移动设备来进更便捷的操控。 综上所述,雷尼绍OTS是一款功能强大、性能优越的调音台。无论是音乐制作还是广播电台,它都能够满足用户对音频处理和控制的各种需求,并且具备便捷的操作和远程控制功能。无论是专业人士还是音乐爱好者,雷尼绍OTS都是一个理想的选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值