ProcessDB实时/时序数据库——JAVA_API查询历史统计数据

一、历史统计数据字段

	
    Date       recordTime;              //数据时间
	
    short      quality;                 //质量
	
    double     sumValue;                //累计值
	
    double     maxValue;                //最大值
	
    double     minValue;                //最小值
	
    double     firstValue;              //第一值
    
    double     lastValue;               //最后值
	
    float      stdDev;                  //平均值
    
    float      changeRate;              //变化率
    
    int        count;                   //统计数
    
    int        duration;                //持续时间
	
    int        ultraLimitCount;         //超限数
    
    int        ultraLimitDuration;      //超限时间
    
    double     output;                  //产量
    
    double     flow;                    //流量值
	
    Date       maxValueTime;            //最大值时间
	
    Date       minValueTime;            //最小值时间
	
    Date       firstValueTime;          //第一值时间
	
    Date       lastValueTime;           //最后值时间

二、查询历史统计数据

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Vector;
import com.processdb.connection.DBConnect;
import com.processdb.connection.DBConnectManager;
import com.processdb.driver.common.ConnectInfo;
import com.processdb.driver.common.ConstantValue;
import com.processdb.driver.dao.DBHistoryDataDao;
import com.processdb.driver.record.PointHistory;
import com.processdb.driver.record.StatsRecord;

public class Test {
	@SuppressWarnings("deprecation")
	public static void main(String[] args) throws Exception {
		ConnectInfo host = new ConnectInfo();
		host.setConnectName("instance01");
		host.setHostName("127.0.0.1");
		host.setHostPort(8301);
		host.setUserName("root");
		host.setPassword("root");
		host.setCacheable(false);
		DBConnect myConn = null;
		myConn = DBConnectManager.getInstance().getConnect(host);
		SimpleDateFormat dateFmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		Date begindate = null;
		Date enddate = null;
		begindate = dateFmt.parse("2022-11-04 08:29:14");
		enddate = dateFmt.parse("2022-11-04 17:00:05");
		String pointNameArray[] = {"PUBLIC.sys.PDB_PROC_CPU_USAGE"};
		short pageSize = 100;
		short pageNum = 0;
		int interval = 1800;
        byte query_type = ConstantValue.HIS_VALUE_STAT;
        int statBitMap = 0;
		Vector pointList = new Vector();
		for(int i=0; i statsRecodList = ph.getStatsRecords();
                for(int i=0; i

示例运行结果:

序号:01,数据时间:Fri Nov 04 08:29:12 GMT+08:00 2022,统计平均值:0.5,流量值:1.0,最大值:1.0,最小值:0.0
序号:11,数据时间:Fri Nov 04 08:30:00 GMT+08:00 2022,统计平均值:0.49700598802395207,流量值:83.0,最大值:2.0,最小值:0.0
序号:21,数据时间:Fri Nov 04 09:00:00 GMT+08:00 2022,统计平均值:0.49101796407185627,流量值:82.0,最大值:1.0,最小值:0.0
序号:31,数据时间:Fri Nov 04 09:30:00 GMT+08:00 2022,统计平均值:0.4930555555555556,流量值:71.0,最大值:1.0,最小值:0.0
序号:41,数据时间:Fri Nov 04 10:00:00 GMT+08:00 2022,统计平均值:0.49142857142857144,流量值:86.0,最大值:1.0,最小值:0.0
序号:51,数据时间:Fri Nov 04 10:30:00 GMT+08:00 2022,统计平均值:0.4444444444444444,流量值:16.0,最大值:1.0,最小值:0.0
序号:61,数据时间:Fri Nov 04 11:00:00 GMT+08:00 2022,统计平均值:0.38095238095238093,流量值:8.0,最大值:1.0,最小值:0.0
序号:71,数据时间:Fri Nov 04 11:30:00 GMT+08:00 2022,统计平均值:0.4090909090909091,流量值:9.0,最大值:1.0,最小值:0.0
序号:81,数据时间:Fri Nov 04 12:00:00 GMT+08:00 2022,统计平均值:0.48,流量值:36.0,最大值:1.0,最小值:0.0
序号:91,数据时间:Fri Nov 04 12:30:00 GMT+08:00 2022,统计平均值:0.47540983606557374,流量值:29.0,最大值:1.0,最小值:0.0
historyDataCount	10

你可能感兴趣的:(#,java,时序数据库,物联网,ProcessDB,数据库开发)