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;
}
相关推荐
码界奇点19 小时前
时序数据库选型指南从大数据视角看IoTDB的核心优势
大数据·时序数据库·iotdb
观望过往2 天前
Apache IoTDB 技术深度解析:存储引擎、查询优化与分布式架构在工业物联网、智慧能源和车联网场景的应用指南
apache·iotdb
A-刘晨阳4 天前
时序数据库选型指南:从大数据视角切入,聚焦 Apache IoTDB
大数据·apache·时序数据库·iotdb
wei_shuo4 天前
从云原生部署到智能时序分析:基于 Kubernetes 的 Apache IoTDB 集群实战与 TimechoDB 国产化增强特性深度解析
云原生·kubernetes·iotdb
码界奇点10 天前
Apache IoTDB 架构特性与 PrometheusGrafana 监控体系部署实践
架构·apache·grafana·prometheus·iotdb
一个天蝎座 白勺 程序猿11 天前
Apache IoTDB(7):设备模板管理——工业物联网元数据标准化的破局之道
数据库·apache·时序数据库·iotdb
一个天蝎座 白勺 程序猿11 天前
Apache IoTDB(8):时间序列管理——从创建到分析的实战指南
数据库·apache·时序数据库·iotdb
Francek Chen14 天前
【IoTDB】时序数据库选型迷茫?Apache IoTDB 为何成工业场景优选?
大数据·数据库·apache·时序数据库·iotdb
Apache IoTDB15 天前
【10.29 直播】IoTDB 图形化工具与编程框架集成实操
iotdb
可涵不会debug17 天前
时序数据库选型指南:从大数据视角看IoTDB的核心优势
大数据·时序数据库·iotdb