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;
}
相关推荐
倔强的石头1068 小时前
时序数据库选型指南:为何Apache IoTDB成为工业物联网首选
apache·时序数据库·iotdb
wei_shuo11 小时前
物联网时序数据存储方案:Apache IoTDB 集群部署全流程 + TimechoDB 优势解读
物联网·apache·iotdb
时序数据说10 天前
IoTDB如何解决海量数据存储难题?
大数据·数据库·物联网·时序数据库·iotdb
一个天蝎座 白勺 程序猿15 天前
Apache IoTDB(4):深度解析时序数据库 IoTDB 在Kubernetes 集群中的部署与实践指南
数据库·深度学习·kubernetes·apache·时序数据库·iotdb
wei_shuo16 天前
时序数据库 Apache IoTDB:从边缘到云端Apache IoTDB 全链路数据管理能力、部署流程与安全特性解读
物联网·apache·时序数据库·iotdb
时序数据说19 天前
国内时序数据库概览
大数据·数据库·物联网·时序数据库·iotdb
时序数据说22 天前
时序数据库为什么选IoTDB?
大数据·数据库·物联网·开源·时序数据库·iotdb
枫叶丹423 天前
跨端边云时序数据管理新范式:Apache IoTDB 的 DB+AI 融合之道
数据库·iotdb
时序数据说1 个月前
为什么要选择时序数据库IoTDB?
大数据·数据库·物联网·开源·时序数据库·iotdb