动态数据库PI、edna insql、infoplus简单了解
一、动态数据库概念
动态数据库(DDL)是做为共享函数库的可执行文件。动态数据库提供了一种方法,使进程可以调用不属于其可执行代码的函数。说白了就是一个.dll可执行文件,其中有可执行代码,进程可以调用该函数。
二、PI实时数据库
PI系统是由OSIsoft 公司开发的基于C/S 和B/S 结构的工厂实时数据集成、应用平台。也就是说是一个应用程序。PI 系统以数据原形的方式长期在线储存工厂所有的生产数据,并满足快速、高效地进行数据采集、存储和显示的要求。应用于电力企业,实时地获取各个实际数据源的原始生产数据,用户通过一组用户可配置的报表,从分布在整个企业的桌面计算机上,可看到当前和历史的生产运行状况。这些有价值的信息也可按其原有的精度在线存储数年以备将来使用,使用户随时了解每个单元、每台设备以及整个企业不同层面的运作状况。简而言之就是实现数据采集功能。
三、edna insql介绍
edna系统用于工厂各种实时数据的采集,大量数据的长期保存和快速检索,实现信息共享,简单点就是一个系统,和上边大同小异。用于工厂生产过程工艺流程的监控和数据分析。系统用于报警管理和支持复杂计算。
而insql则是一个数据库,是随着电力系统的核心,它具有实时采集、关系存储的特点。内嵌MS SQL Server数据库存储配置信息,事件信息等相关信息,自身来存储实时环境中的工厂数据。用户可以直接操作MS SQL Server来获取数据。
四、infoplus介绍
Infoplus-x是一个用于实时制造过程的实时信息管理系统(实时数据库), 它采集管理以及存储大量的过程数据。同时各种类型的用户 , 事物处理系统 , 及生产方面的应用为了分析及报告的目的可以方便、容易地访问和利用这些数据
InfoPlus.21和关系数据库的交换提供了三种方法,可根据实际应用情况选用一种。
(1)Aspen LIMS Interface:这是Aspen提供的一个InfoPlus.21与LIMS(实验室信息管理系统)接口的软件,应用这一模块也可实现数据交换。
(2)Desktop ODBC:这是一个桌面ODBC模块,使你的桌面应用 , 如 Microsoft Excel、Microsoft Access、Crystal Report 、 Microsoft visual Basic 等 , 可以查询实时数据库中的数据。[1][2]
(3)API:这是一套为InfoPlus.21开发的编程接口,利用API可以实现更多的功能,使得数据交换的方式更自由。
示例1:利用API实现数据交换示例代码[1][3]
#include " infoplus21_api.h" //连接InfoPlus21数据库 if(!INISETC()) { AfxMessageBox("InfoPlus.21连接失败!",MB_ICONINFORMATION); return; } //写历史数据 WHIS21DAT(WHIS_TYPE_UPDATE, nTagID, FT_IP_AREA_OF_TREND, NUM_FTS, nFTs, nDTs, pDVs, -1, &xHisTime, &nFTsOK, &err); //读数据 float pValue; DB2REAL(recid, FT_IP_INPUT_VALUE, &pValue, &err); //结束与服务器的连接 ENDSETC();
动态数据库PI、edna insql、infoplus简单了解的更多相关文章
- Farseer.net轻量级开源框架 中级篇:动态数据库访问
导航 目 录:Farseer.net轻量级开源框架 目录 上一篇:Farseer.net轻量级开源框架 中级篇: 自定义配置文件 下一篇:Farseer.net轻量级开源框架 中级篇: 数据库切换 ...
- [转]Oracle数据库ASH和AWR的简单介绍
在Oracle数据库中,有时我们可能会遇到这样的术语:ASH和AWR,那么它们是怎样产生的呢?它们的作用又是什么呢?本文我们就来介绍这一部分内容. 1.10g之前 用户的连接将产生会话,当 ...
- 分布式数据库中间件–(3) Cobar对简单select命令的处理过程
友情提示:非原文链接可能会影响您的阅读体验,欢迎查看原文.(http://blog.geekcome.com) 原文地址:http://blog.geekcome.com/archives/284 在 ...
- python操作三大主流数据库(7)python操作mongodb数据库①mongodb的安装和简单使用
python操作mongodb数据库①mongodb的安装和简单使用 参考文档:中文版:http://www.mongoing.com/docs/crud.html英文版:https://docs.m ...
- SQL Server数据库有三种恢复模式:简单恢复模式、完整恢复模式和大容量日志恢复模式
SQL Server数据库有三种恢复模式:简单恢复模式.完整恢复模式和大容量日志恢复模式: 1.Simple 简单恢复模式, Simple模式的旧称叫”Checkpoint with truncate ...
- 必须要注意的 C++ 动态内存资源管理(二)——指针对象简单实现
必须要注意的 C++动态内存资源管理(二)——指针对象简单实现 四.拷贝类型的资源 上节我们说过,对于图片类型的资源我们有时候往往采用拷贝(如果对于那种公共图片,可能采用唯一副本,提供 ...
- 必须要注意的 C++ 动态内存资源管理(六)——vector的简单实现
必须要注意的 C++ 动态内存资源管理(六)——vector的简单实现 十六.myVector分析 我们知道,vector类将其元素存放在连续的内存中.为了获得可接受的性能,vetor ...
- SQL Server数据库损坏、检测以及简单的修复办法
简介 在一个理想的世界中,不会存在任何数据库的损坏,就像我们不会将一些严重意外情况列入我们生活中的日常一样,而一旦这类事情发生,一定会对我们的生活造成非常显著的影响,在SQL Server中也 ...
- 今天有群友不是很清楚htm直接存数据库的危害,我简单举个例子
通过这个案例就知道为什么不要把原生的html放数据库了 常见的几种转码 常用的几种显示方法 只有原生html和最下面一种弹框了,变成了持久xss 如果是Ajax的方式,请用@Ajax.JavaS ...
随机推荐
- 数据库里的回车字符导致取过来的json字符串不规范的问题
转发:https://bbs.csdn.net/topics/380192638 你可以报保存数据库之前,进行 替换 str = str.Replace("\r\n"," ...
- 12Java进阶-IO与XML
1.File File:java.io.File:代表一个实际的文件或目录. 常用构造方法File file = new File("path"); 其它构造方法: File(St ...
- Python 高级特性(2)- 迭代
前置知识 如果给定一个 list 或 tuple,我们可以通过 for 循环来遍历这个 lis t或 tuple,这种遍历我们称为迭代(Iteration) 在 Python 中,迭代是通过 for ...
- ubuntu16.04细节设置
1.查看无线网卡名称 $ iwconfig ------------------ lo no wireless extensions. eth1 no wireless extensions. eth ...
- Web 字体 font-family 浅谈
前言 最近研究各大网站的font-family字体设置,发现每个网站的默认值都不相同,甚至一些大网站也犯了很明显的错误,说明字体还是有很大学问的,值的我们好好研究. 不同的操作系统.不同浏览器下内嵌的 ...
- Linux的磁盘管理和进程管理(入门)
查看磁盘使用情况 df :列出文件系统整体的磁盘使用量 增加-h参数可以使得显示的容量更人性化 du:检查磁盘空间使用量---需要进入文件中查看 挂载本地磁盘或文件 mount mount /dev/ ...
- unittest系统(八)一文搞定unittest重试功能
在前面的介绍中,我们对unittest进行了分享介绍,那么在实际的应用中,因为客观原因需要对失败,错误的测试用例进行重试,所以呢,现有的unittest的框架无法满足,那么我们可以去改造下是否能够满足 ...
- 面试官疯狂问我:char和varchar的区别 怎么办?愣着干嘛?进来白嫖啊!
MySQL的修仙之路,图文谈谈如何学MySQL.如何进阶!(已发布) 面前突击!33道数据库高频面试题,你值得拥有!(已发布) 大家常说的基数是什么?(已发布) 讲讲什么是慢查!如何监控?如何排查?( ...
- HCNA Routing&Switching之STP基础
前文我们了解了VLAN动态注册协议GVRP相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15113770.html:今天我们来讨论下二层环路和STP相 ...
- Tensorflow2对GPU内存的分配策略
一.问题源起 从以下的异常堆栈可以看到是BLAS程序集初始化失败,可以看到是执行MatMul的时候发生的异常,基本可以断定可能数据集太大导致memory不够用了. 2021-08-10 16:38:0 ...