ProcessDB - ProcessIOT/ProcessIOT GitHub Wiki

ProcessDB介绍

ProcessDB概述

ProcessDB实时数据库软件(以下简称“ProcessDB”)是上海数全软件有限公司独立自主研发的实时数据库产品。广泛应用于船舶、港口、电网、发电、农业、冶金、石油、化工、食品、制药、水处理、公共事业、制造业、建筑/楼宇、烟草、环保、水利等多个行业和领域,可以为企业提供高速、无间断的的过程数据;能够对快速变化的实时数据进行长期的历史存储,是工厂控制层与生产管理系统之间连接的桥梁,同时也是在线优化、故障诊断的在线平台。  

ProcessDB是一款高性能的企业级实时数据库系统,它能让您的企业无间断、快速的获取实时/历史数据。它将数据库强大的功能性和灵活性与实时系统的高时效性和高压缩比完美结合在一起,实现企业管理与工厂现场的无缝结合。

ProcessDB可用于工厂中过程数据的自动采集、存储和监视,可在线存储每个工艺过程点的多年数据,可以提供清晰、精确的操作情况画面。用户既可浏览工厂当前的情况,也可回顾过去的情况,更可使用灵活的组态方式,为用户快速构建实时数据库平台、提供通用的软件工具。

ProcessDB在实际应用中,以其可靠性、方便性和强大的功能得到用户的高度评价,被用于收集和分析在船舶、港口、电网、发电、农业、冶金、石油、化工、食品、制药、水处理、公共事业、制造业、建筑/楼宇、烟草、环保、水利等多个行业和领域提供的海量过程数据。

ProcessDB支持各种工控设备和常见的通信协议,并且提供分布式数据管理和网络功能。应用本软件的集成的驱动,可以直接对硬件进行监视和控制,方便且简洁,有效节省了人力、物力及财力等资源。      

ProcessDB包括海量实时库、小型实时数据库、嵌入式实时数据库,适应各类客户的需求。

系统特点

ProcessDB实时数据库的重要特性就是实时性,包括数据实时性和事务实时性。

数据实时性是现场IO数据的更新周期。作为实时数据库,不能不考虑数据实时性,一般数据的实时性主要受现场设备的制约,特别是对于一些比较老的系统而言,情况更加如此。    

事务实时性是指数据库对其事务处理的速度,它可以是事件触发方式或定时触发方式。事件触发是该事件一旦发生可以立刻获得调度,这类事件可以得到立即处理,但是比较消耗系统资源;而定时触发是在一定时间范围内获得调度权,作为一个完整的实时数据库,从系统的稳定性和实时性而言,必须同时提供两种调度方式。

针对不同行业不同类型的企业,实时数据库的数据来源方式也各不相同。总的来说数据的主要来源有DCS控制系统、由组态软件+PLC建立的控制系统、数据采集系统(ProcessGateway采集系统)、ProcessDB实时数据库、直接连接硬件设备和通过人机界面人工录入的数据。根据采集的方式方法可以分为:支持OPC协议的标准OPC方式、支持串口通信的串口通讯方式、支持MODBUS协议的标准MODBUS通信方式、通过ODBC协议的ODBC通信方式、通过API编写的专有通信方式、通过编写设备的专有协议驱动方式等等。

安装ProcessDB

1.首先双击打开ProcessDB安装程序,点击I Agree
2.依次点击Next,默认安装开始菜单的快捷方式,点击Next
3.通过Browse选择安装文件存放目录,一般安装在D盘,点击Next
4.选择数据库实例instance01安装位置,如D盘,端口默认,点击Install
5.等待安装过程结束
6.若要安装多实例,重复步骤1-5,在步骤4修改实例名称
注意:安装过程中,360安全卫士或者其它杀毒软件弹出提示,均选“允许程序的所有操作”

excel插件

ProcessDB与Excel软件紧密结合,同时融合了Excel对表格类型数据的强大处理能力和ProcessDB数据库对大容量数据处理的优势。
1.点击NativeAddin.reg安装Excel插件
2.打开excel-开发工具-com加载项,加载ProcessDB Addin
3.点击ProcessDB选项框,选中实时库(RealTimeDB Database)的连接实时库(Connect DB)
4.在弹出的服务器连接管理器点击登录,在用户登录界面输入用户名和密码,点击确认
5.选中实时库(RealTimeDB Database)的下载点(Download Tag),在Tag下载选项里点击全选箭头,确定
6.下载完成后,提示Tags were downloaded
7.选中实时库(RealTimeDB Database)的上传点(Upload Tag),在Tag上传选项里选中模式,可以批量创建、修改或删除点

申请和使用注册码

ProcessDB未注册前,只有三个月的使用权限
ProcessDB的注册方式如下
1.联系销售[email protected]邮箱获取ProcessDB的注册码
2.打开ProcessDB控制台,在菜单栏找到帮助-注册,发送开始时间、期限、点数、用户信息到邮箱获取注册码
3.将注册码输入到注册码一栏,点击注册

卸载ProcessDB

1.右键ProcessDBConsole桌面快捷方式,打开文件所在位置
  双击uninstall.exe程序     
2.首先卸载实例,选中实例名,点击Uninstall 
3.等待数据库实例卸载完成,点击Close
4.若数据库安装了多实例,重复步骤123。实例卸载完毕后,再次双击uninstall.exe程序
5.在菜单栏选择卸载ProcessDB,点击Uninstall
6.等待ProcessDB卸载完成后,点击Close关闭卸载界面

链接ProcessDB

“链接”是配置数据库中库、表、点以及存储备份等功能的必备条件之一
1.打开ProcessDB控制台
  双击ProcessDBConsole.exe或桌面快捷方式,打开实时数据库
2.新建链接
  弹出数据库控制台,在ProcessDB上右键选择新建链接
3.定义链接属性
  在弹出的新建链接里输入链接名称(可自定义)
  默认端口号8301,用户名root,密码root,点击确定即可链接ProcessDB

数据库

库、表、点是实时数据库的层级分类,单实例能添加1000个库,单库能添加10W表和1000W点。
1.在数据库上右键-创建数据库
2.在弹出的添加数据库一栏里输入新添加的数据库名称及其它相关属性
  注意:
    名称:由数字0-9,字母a-z和“_”构成,不能以数字开头,长度不得多于15字节,如D1
    描述:不得多于32字节
3.选中左侧的数据库栏,在右侧的数据库下拉列表里选中D1,点击修改的小图标,可以修改别名和描述
4.选中数据库,删除数据库,可将数据库删除
  或者选中左侧的数据库栏,在右侧的数据库下拉列表里选中要删除的数据库,点击删除的小图标

1.在数据库名右键-创建表
2.在弹出的添加表一栏里输入新添加的表名称及其它相关属性
  注意:
    名称:由数字0-9,字母a-z和“_”构成,不能以数字开头,长度不得多于15字节,如T1
    超时:用来判断ProcessGateway中的设备是否在正常向表里的点上报数据
    描述:不得多于32字节
3.选中表所属的数据库,在右侧的数据库下拉列表里选中表名,可以修改别名和描述
4.在左侧选中表,右键-删除表,可将表删除
  或者选中表所属的数据库,在右侧下拉列表里选中表名,点击删除的小图标

测点

1.在表名右键-添加点
2.在弹出的添加点一栏里输入新添加的点名及其它相关属性
  点名:点的正式名称,点名,由数字0-9,字母a-z和“_”构成,不能以数字开头,长度不得多于63字节,如T1就符合要求
  点类型:分为采样点,计算点和统计点三种点类型
  点别名:点的规范以外的名称,在正式的名称之外的一种名称
  初始值:点的初始值
  表名称:点所属的表名
  IO类型:分为输入、输出、中间变量和网关变量
  量程低限:传感器量程低限
  量程高限:传感器量程高程
  数据类型:分为float32,digital,uint8,int8,uint16,int16,uint32,int32,int64,uint64,float64,string,blob等13种数据类型
  单位:包括数学和物理单位等
  时间单位:分为秒,毫秒,微秒
  I/O优先级:分为高、中、低三个等级
  周期:仅用于计算点
  公式:仅对应计算点,用于计算
  描述:关于点的具体介绍,不得多于64字节
3.展开伸缩菜单栏到点,选中点,可以修改点别名、描述、量程低限、量程高限等属性
  用户也可以点击右侧的修改按钮直接修改点的属性
4.展开伸缩菜单栏到点,选中点,可以删除点。

实时值

  1.展开伸缩菜单栏到点-选中点-添加到数据一览,可以查看点的实时值
  2.展开伸缩菜单栏到点-选中点-复制此点,可以复制点,如下图所示
  3.展开伸缩菜单栏到点-选中点-更新实时数据,可以更新点的实时值,如下图所示

历史值和趋势曲线

  1.展开伸缩菜单栏到点-选中点-趋势曲线-在新窗口显示,可以查看点的趋势,如下图所示
  2.展开伸缩菜单栏到点-选中点-查询历史数据-查询,在查询历史数据栏里设置开始时间和结束时间,可以查看点的历史数据,如下图所示

点信息

  1.找到需要修改信息的点,鼠标左键双击
  2.在弹出框中可以修改点的信息
    点名:点的名字
    点类型:分为采样点和计算点
    点别名:点的别名
    初始值:在系统刚启动,还未采集到值时的初始值,默认为0
    表名称:所在实时库的表名
    IO类型:分为输入、输出、中间变量、网关。采集数据为输入点,下发控制信号为输出点,仅作数据库内部使用不与上下相连为中间变量,代表下方网关状态信息的点IO类型为网关
    量程低限:点的量程最小值,与压缩策略有关
    量程高限:点的量程最大值,与压缩策略有关
    数据类型:ProcessDB的数据类型有float32、digital、bool、uint8、int8、uint16、int16、uint32、int32、uint64、int64、float64、time、string、blob
    单位:点的单位
    分辨率:可设置秒、毫秒、微秒
    I/O优先级:网络速率有限时的传输优先级,默认为中
    周期:计算点的计算周期
    小数精度:小数点后位数,默认为3
    公式:计算点的计算公式,详见添加计算点
    描述:点的描述

压缩设置

  1.找到需要修改压缩设置的点,鼠标左键双击
  2.在弹出框的上方选择存储,可以修改压缩设置
    存入历史库:此处打勾数据将会存入历史表,若不勾选则只有实时数据,没有历史数据
    Deadband:死区压缩
    Linear:线性压缩
    None:不压缩
    Percentage:百分比,以量程的一定百分比来进行压缩。常用于大量量程不同的数据,但量程不准会导致压缩过多或过少
    Physical:工程量,以具体数值来进行压缩
    差值压缩:按照前值与后值的差值来进行压缩
    数据块压缩:以数据块为单位的压缩

告警设置

  1.找到需要修改告警设置的点,鼠标左键双击
  2.在弹出框的上方选择告警,可以修改告警设置
    告警开关:此处打勾会打开告警,若不勾选则不会告警
    响应方式:Manual和Auto
    告警类别:ProcessDB的告警类别有无、死区、超时、开、关、变化、低高限、低低高高限
    告警级别:可选None、One、Two、Three、Four
    告警低限:当告警类别设置为低高限时,低于告警低限则会告警。告警低限不得低于告警低低限,不得高于告警高限和告警高高限
    告警高限:当告警类别设置为低高限时,高于告警高限则会告警。告警高限不得高于告警高高限,不得低于告警低限和告警低低限
    告警低低限:当告警类别设置为低低高高限时,低于告警低低限则会告警。告警低低限不得高于告警低限、告警高限和告警高高限
    告警高高限:当告警类别设置为低低高高限时,高于告警高高限则会告警。告警高高限不得低于告警高限、告警低限和告警低低限
    告警分组:可以按照业务逻辑将同一类型的告警分为一组

添加计算点

  1.打开一个表,若要在这个表中添加一个计算点,则点击左上角+号
  2.在弹出框的点类型中选择计算点
  3.鼠标左键点击公式栏,弹出编辑计算公式框
  4.点击示例,可以查看ProcessDB计算点的例子
  5.公式编写完后,可以点击测试查看是否达到预期的效果。如果小数点较多,可用鼠标将测试结果往前拖
  6.测试正确后,点击确定,再到添加点框中点击确定,即可成功添加该计算点

导入导出和同步数据库

以Excel形式导出所有库或单独库

  1.展开伸缩菜单栏到数据库,选中数据库-导出所有数据库模式(EXCEL), 导出数据库,导出后的文件可以用EXCEL打开
  2.展开伸缩菜单栏到数据库的具体库名,选中库名-导出此数据库模式(EXCEL),导出数据库,导出后的文件可以用EXCEL打开 

以Excel形式导入所有库或单独库 1.展开伸缩菜单栏到数据库,选中数据库-导入数据库模式(excel),导入数据库,可以将数据库配置文件导入

数据库之间的同步 1.展开伸缩菜单栏到数据库,选中数据库-同步数据库 2.在弹出的同步数据库一栏里设置源数据库名称,在目标数据库栏里设置目标数据库名称 3.在高级里选中需要同步的部分后点击确定 同步数据库:对所有库的同步 同步库:对所有表的同步 同步测点:对所有点的同步 同步历史数据:对历史数据的同步 海量同步:从数据库建库到现在所有历史数据的同步 增量同步:可以设置同步的开始时间和结束时间 4.在链接上右键刷新即可看到同步后的数据库

安全管理

用户

1.展开伸缩菜单栏到安全管理,选中用户-添加用户
2.在弹出的添加用户信息的一栏里输入用户名、密码、确认密码
3.在角色一栏选择角色
4.在命令一栏选择操作命令
5.在对象一栏选择数据库名,点击确定,创建新用户
6.展开伸缩菜单栏到用户,在用户名上右键可以修改用户和删除用户

角色

1.展开伸缩菜单栏到安全管理,选中角色-添加角色
2.在弹出的添加角色的信息一栏里输入名称、备注
3.在命令一栏选择操作命令
4.在对象一栏选择数据库名,点击确定,创建新角色
5.展开伸缩菜单栏到角色,在角色名上右键可以修改角色和删除角色

黑白名单

1.展开伸缩菜单栏到安全管理,选中黑白名单
2.点击主窗体左上角的绿色+号
3.在弹出框中输入需要加入黑名单的IP地址,勾选已启用,点击确定
4.若要删除黑白名单,选中要删除的行,点击主窗体左上角红色的-号
5.提示是否确认删除,点击确认
6.删除成功

命令管理

1.展开伸缩菜单栏到安全管理,选中命令管理
2.主窗体中会出现可以操作的命令
3.选中需要禁用的命令,双击或者右键修改即禁用此命令,禁用命令后,对应的功能将会被禁止
4.若要将禁用的命令还原,重复步骤3即可,取消禁用后需刷新生效

存储管理

卷管理

卷指的是ProcessDB数据存储的位置
1.打开伸缩菜单栏找到存储管理—卷管理,主窗体出现已有卷信息
  Volume名称:卷的名称,也是文件夹的名称
  路径:卷所在的路径
  状态:主用为数据正常缓存位置,备份为数据备份
2.选中卷后,在主窗体上方可以增加、修改、删除卷,不能删除正在缓存数据的卷

历史数据

历史数据指的是具体每个数据库数据存储的位置
1.打开伸缩菜单栏找到存储管理-数据管理,主窗体出现所有数据库信息
  已加载:是否已加载数据库
  Volume名称:所在卷的名称,也是卷文件夹的名称
  数据库ID:此数据库的ID
  历史表名:存放此数据库历史数据的表名称
  当前缓存页面:当前放入内存的页面数
  选中缓存页面次数:成功选中缓存页面的次数
  未选中缓存页面次数:因被调走而未能选中缓存页面的次数 
2.选中历史数据后,鼠标右键可以创建、备份、删除、分割、加载、卸载历史表

还原点管理

元数据还原点

元数据还原点指的是库、表、点的配置、用户信息、注册信息的备份与还原
1.打开伸缩菜单栏找到还原点管理-元数据还原点,主窗体中出现还原点信息
  无还原点为空白,点击增加即备份当前还原点
  备份文件名称:备份文件的名称
  备份时间:备份时的时刻
2.选中还原点后,在主窗体上方可以恢复、删除还原点
  恢复:恢复所备份的元数据
  删除:删除此还原点

历史数据还原点

历史数据还原点指的是每个数据库中历史数据的备份与还原
1.打开伸缩菜单栏找到还原点管理-历史数据还原点,主窗体中出现还原点信息
  无还原点为空白,点击增加即备份当前还原点
  备份文件名称:备份文件的名称
  备份时间:备份时的时刻

2.选中还原点后,在主窗体上方可以恢复、删除还原点
  恢复:恢复所备份的历史数据
  删除:删除此还原点

计划任务管理

自定义任务

自定义任务指的是对于定义表和历史表进行定期备份,当出现较严重的误操作时,可以通过备份进行还原。
1.打开伸缩菜单栏找到计划任务管理-自定义任务,主窗体中出现当前已有的自定义任务信息
2.点击主窗体左上角绿色的+号
3.在添加任务框中输入自定义任务的名称、描述、执行周期、执行动作、勾选已启用,点击确定
4.若要删除自定义任务,选中要删除的行,点击主窗体左上角红色的-号
5.提示是否确认删除,点击确认
6.删除成功

系统定时任务

系统定时任务指的是系统中有哪些定时任务
1.打开伸缩菜单栏找到计划任务管理-自定义任务,主窗体中出现当前已有的自定义任务信息
2.点击主窗体左上角绿色的+号
3.在添加任务框中输入自定义任务的名称、描述、执行周期、执行动作、勾选已启用,点击确定
4.若要删除自定义任务,选中要删除的行,点击主窗体左上角红色的-号
5.提示是否确认删除,点击确认
6.删除成功

待处理任务

 待处理任务指的是目前处于挂起状态正在排队等待被处理的任务
 1.打开伸缩菜单栏找到计划任务管理-待处理任务
 2.主窗体会出现待处理的任务,如果为空白则代表没有正在等待处理的任务
 3.每次点开待处理任务都会自动刷新

可靠性管理

双机热备

双机热备指主机和备机通过网络连接,两机定期同步,在主机因不可控因素宕机时备机将自动代替主机,保障工程的顺利运行。
1.打开伸缩菜单栏找到可靠性管理-双机热备
2.主窗体中会出现关于主备端双机热备的信息

集群

集群指将多个实例统一为一个集群,可以在任何一个实例中去查询调用集群中其它实例的数据,提高了系统的扩展性。
1.打开伸缩菜单栏找到可靠性管理-集群
2.主窗体中会出现关于集群的信息,如果要添加实例进集群,则点击左上角绿色的+号
3.在弹出框中填入要加入集群的实例信息,包括IP地址、端口、用户名及密码
4.若要删除集群中的实例,选中要删除的行,点击主窗体左上角红色的-号
5.提示是否确认删除,点击确认
6.删除成功

告警管理

告警管理会将数据库中所有的告警点列出,并将正在报警的点以红色标识出来
1.打开伸缩菜单栏找到告警管理
2.主窗体中会出现告警点列表,红色即表示正在告警中
3.选中告警点所在行后,右键可以查询告警历史

在线用户

在线用户会列出当前所有与数据库连接的用户 1.打开伸缩菜单栏找到在线用户 2.主窗体中会出现在线用户列表以及用户的进程等信息 3.选中会话所在行后,右键可以手动关闭会话

工作线程

工作线程会将数据库的100条线程罗列出来 1.打开伸缩菜单栏找到工作线程 2.主窗体中会出现关于工作线程的一些信息,其中绿色表示尚未结束的线程 3.选中线程所在行后,右键可以手动关闭连接

系统配置

系统配置包含了ProcessDB软件的基本信息及系统的变量配置
1.打开伸缩菜单栏找到系统配置
2.主窗体中会出现数据库的基本信息,包括版本信息、发布日期、安装日期、机器名称、IP地址
3.当点击系统配置后,可以看到部分变量名称及其配置

双机热备

以比较典型的双机热备冗余为例:
环境:两台windows服务器(如主机IP:192.168.0.110,备机IP:192.168.0.118),两台服务器ProcessDB应安装相同版本且两台服务器的8301和8401端口应开启(或者关闭防火墙)
1.主机安装ProcessDB,打开ProcessDB实例(如processdb_instance01),依次打开config、processdb.ini,找到HA里的EBASE_HA_PEER_IP配置备机的IP地址
2.备机安装ProcessDB,打开ProcessDB实例如processdb_instance01,依次打开config、processdb.ini,找到HA里的EBASE_HA_PEER_IP配置主机的IP地址
3.打开实时数据库控制台,新建链接连接备机的实例,注意链接名称不能重复
4.在主机ProcessDB里创建库、表、点后可以通过“同步数据库”功能将主机的数据同步到备机,前提条件是备机必须存在数据库,如图所示,选中同步数据库      
5.在弹出的同步数据库一栏里
  源里的连接:主机的连接名,数据库:主机的数据库名
  目标的连接:备机的数据库连接名,数据库:备机的数据库名
6.刷新连接后,打开备机的链接,可以看到点已经被同步过来了,此时从历史数据里可以查询到这些点的历史数据,如下图所示,此时,双机的冗余备份就配置完成了。

CMD命令

在ProcessDB根目录的bin文件夹下,提供有创建、删除、测试等exe文件,以供调试及批量操作数据库所用。
1.右键ProcessDBConsole桌面快捷方式,打开文件所在位置
  双击bin文件夹打开
2.在路径处输入cmd并回车,或在空白处shift+鼠标右键,在此处打开命令窗口
3.以批量创建库表点为例,输入create,按TAB键找到create_test_object.exe。再输入空格-h,按下回车打开说明
4.可以自行根据例子去创建库表点
  -H:ip地址,默认本机,在本机使用可以不填
  -P:端口,默认的TCP端口是8301
  -u:用户名,默认root
  -p:密码,默认root
  -d:创建几个库
  -s:从数字几开始创建库
  -t:每个库创建几张表
  -S:从数字几开始创建表
  -f:每个表创建几个点
5.其它还有诸如processdb.exe新增删除实例、processdb_kpi_test.exe查看速率、simulator.exe开启模拟器等。