IotDB批量数据脱敏DEMO

保密数据要做其他项目测试,在真实数据上,模拟二批数据。

Main

java 复制代码
public class CreateData {


    public static void main(String[] args) throws Exception{
        DataBean dataBean1 = new DataBean("root.sup.X",1745418062000L,1745421716000L,1);
        DataBean dataBean2 = new DataBean("root.sup.XX",1745421716000L,1745427788000L,1);
        DataBean dataBean3 = new DataBean("root.sup.XXX",1745445744000L,1745447163000L,1);
        DataBean dataBean4 = new DataBean("root.sup.AAA",1745447163000L,1745448978000L,1);
        DataBean dataBean5 = new DataBean("root.sup.A",1745448978000L,1745448995000L,1);
        DataBean dataBean6 = new DataBean("root.sup.AA",1745508341000L,1745508743000L,1);
        DataBean dataBean7 = new DataBean("root.sup.CCC",1745508341000L,1745508743000L,1);



        DataBean dataBean11 = new DataBean("root.sup.DDD",1745152727000L,1745156692000L,0);
        DataBean dataBean12 = new DataBean("root.sup.EEE",1745156692000L,1745191639000L,0);
        DataBean dataBean13 = new DataBean("root.sup.FFF",1745215381000L,1745216471000L,0);
        DataBean dataBean14 = new DataBean("root.sup.HHH",1745216471000L,1745218287000L,0);
        DataBean dataBean15 = new DataBean("root.sup.KKK",1745218287000L,1745218303000L,0);
        DataBean dataBean16 = new DataBean("root.sup.LLL",1745276411000L,1745278204000L,0);
        DataBean dataBean17 = new DataBean("root.sup.MMM",1745276411000L,1745278204000L,0);


        List<DataBean> list = new ArrayList<>(14);
        list.add(dataBean1);
        list.add(dataBean2);
        list.add(dataBean3);
        list.add(dataBean4);
        list.add(dataBean5);
        list.add(dataBean6);
        list.add(dataBean7);

        list.add(dataBean11);
        list.add(dataBean12);
        list.add(dataBean13);
        list.add(dataBean14);
        list.add(dataBean15);
        list.add(dataBean16);
        list.add(dataBean17);



        Session session = new Session("192.168.0.204",6667,"root","root");
        session.open();

        Session session2 = new Session("127.0.0.1",6667,"root","root");
        session2.open();

        for (DataBean bean : list) {
            SessionDataSet dataSet = session.executeQueryStatement("select s0 from "+ bean.getIotCode() +" where time > "+bean.getStart()+" and time < "+bean.getEnd());
            dataSet.setFetchSize(102400);


            List<String> devices = new ArrayList<>();
            List<Long> timestamps = new ArrayList<>();
            List<List<String>> measurements = new ArrayList<>();
            List<List<TSDataType>> dataTypes = new ArrayList<>();
            List<List<Object>> values = new ArrayList<>();

            while (dataSet.hasNext()){
                RowRecord record = dataSet.next();


                devices.add(bean.getIotCode());
                timestamps.add(record.getTimestamp());
                measurements.add(Collections.singletonList("s0"));
                dataTypes.add(Collections.singletonList(TSDataType.FLOAT));


                BigDecimal value = new BigDecimal(record.getFields().get(0).getStringValue());
                if (bean.getFactor() == 1) {
                    value = value.multiply(new BigDecimal(RandomUtil.randomDouble(0.9F,0.95F)))
                            .setScale(6, RoundingMode.DOWN);
                }else {
                    value = value.multiply(new BigDecimal(RandomUtil.randomDouble(0.4F,0.9F)))
                            .setScale(6, RoundingMode.DOWN);
                }
                values.add(Collections.singletonList(value.floatValue()));
            }

            session2.insertRecords(devices,timestamps,measurements,dataTypes,values);

        }


    }

}

bean

java 复制代码
@Data
@AllArgsConstructor
@NoArgsConstructor
public class DataBean {
    private String iotCode;
    private long start;
    private long end;
    /**
     * 1 true 0 false
     */
    private int factor;
}
相关推荐
Apache IoTDB8 天前
天谋科技 CTO 乔嘉林:多模态时序数智化软件栈
人工智能·科技·iotdb·技术大会
A-刘晨阳8 天前
时序数据基础设施选型手册:Apache IoTDB 技术深度解析与性能实战
apache·iotdb
TDengine (老段)16 天前
TDengine vs InfluxDB — 全方位对比
大数据·数据库·物联网·时序数据库·tdengine·涛思数据·iotdb
pnoker16 天前
IoT DC3 时序存储选型:四款数据库可插拔
数据库·物联网·postgresql·时序数据库·influxdb·tdengine·iotdb
巨大八爪鱼23 天前
XP系统运行IoTDB 2.0.10数据库服务器
数据库·iotdb·xp
sunywz1 个月前
【从零搭建物联网智能充电桩系统】选型篇:Netty、MQTT、RabbitMQ、IoTDB 为什么这么选?
物联网·rabbitmq·iotdb
Apache IoTDB2 个月前
IoTDB 树模型设计:从主数据同步到时序路径初始化
iotdb·用户案例
似璟如你2 个月前
IoTDB 从零入门:安装、部署与第一个时序数据写入(Windows版本)
apache·时序数据库·iotdb
正在走向自律3 个月前
从数据到洞察:时序大模型 TimechoAI 的工业级时序分析实战指南
iotdb·工业物联网·时序大模型·timechoai
逍遥德3 个月前
MQTT教程详解-04.SpringBoot集成MQTT(告别手动控制)
java·spring boot·物联网·中间件·iot·iotdb