大家好,
最近,我们有一位客户告诉我们,由于安全问题,他们宁愿不使用ODBC驱动程序将OsiSoft PI连接到JMP。 其他连接选项是Web API和OLEDB。 我只是想知道是否有人遇到过PI数据库以及他们的客户正在使用什么来进行连接。 ODBC是否仍然是标准,还是有趋势朝着其他方向发展?
哈德利
有多种方法可以连接到Osi PI。 经常使用ODBC,但我相信这种趋势将会消失(将来至少会使用REST或OLE DB),一些人也通过JMP JSL的“运行程序”(例如Python)来使用它。 但是后者需要更多
需要考虑的其他事项(这是我们在2018年获得的支持案例,因此自从现在以来OSI PI可能会有更新和更改:
The query in JMP (3rd party) takes more than 10 minutes (for 720000 events) to deliver the data, if I execute the same query in PI SQL Commander it also takes a long time to get the result displayed but not so long as in JMP. If I execute the statement a second time in the Commander it is much more faster than the first call. Why? Caching?
Yes - the ODBC takes longer than OLEDB queries, this is expected.
This is becasue the chain in the architecture and ecery point takes some time: PI ODBC -> SQL DAS -> PI OLEDB -> PI Data Archive
PI SQL Commander can be understood as PI OLEDB Enterprise. While 3rd party SAS JMP as PI ODBC.
Yes caching is also taking place. This is also correct. PI OLEDB or PI ODBC does not have its own cache with query results, but the pi data archive has read cache
2)
The query delivers around 720000 events. What is the normal rate events/sec using PI ODBC?
720 000 events depend on the location of pi data archive. Running the command locally is faster, remotly it takes more time. Also the archived data and the way of stored data in pi data archvie is important (how is the data stored internally within the archives - out-of-order, records, how many archives are covering the period (3 months), etc.)
On of the important remark: the issue is that this kind of queries (IN condition) are executed in a sequential way, in else the interpolation is made for one tag first, subsequently for the second, third and so on..
testing results:
so far.....??? need to quantify (testing)
Are there some possibilities to get some information what the ‘bottleneck’ is or is PI ODBC the wrong tool to get data for so much PI points for this long time range?
bottleneck -> PI DataArchive read cache (disk read performance)
因此,最重要的是如何建立数据库以及在何处建立数据库。 请不要共享实际数字或该线程(因为可能不再是当前线程),但是您可能希望提取一些发现,以至少为客户提供一些“在哪里看”的提示。
注意:请确保他们使用了哪种OSI PI软件包,它们提供了一些区别,例如PI OLEDB Enterprise允许通过OLEDB连接从PI Data Archive中访问Asset Framework元素/属性,Pi事件框架和时间序列数据。 目前没有典型的PI(afaik)