【问题标题】:How to query data from an AspenTech IP21 Historian?如何从 AspenTech IP21 Historian 查询数据?
【发布时间】:2010-01-13 07:35:01
【问题描述】:

旧主题,结合新工具:从 AspenTech IP21 (InfoPlus.21) 数据历史库中查询 Web 应用程序数据的最佳/合适方法是什么?

过去,我通过 Aspen SqlPlus ODBC 驱动程序使用了一些非常糟糕的查询,但这似乎不是正确的方法,因为它似乎根本没有安装在 Win 7 上。

这里有人有这方面的经验吗?

【问题讨论】:

    标签: odbc historian


    【解决方案1】:

    1) 确保您有适当版本的 Aspen 工具,以后的版本(7.1、7.2)将在 Windows 7 上运行而没有问题

    2) 我使用 Aspen IP21 已经超过 15 年了,与 Oracle 或 SQL 服务器等其他数据库相比,只要 IP21 在适当的服务器上并且查询是根据数据库的结构。对时间戳进行连接将产生缓慢的查询。根据您要完成的任务,还有多种其他方法可以获取数据,通过 HISTORY 伪表、AGGREGATES 表或其他特定于 IP21 的查询技术。

    3) ODBC 仍然是最标准、最简单、对我来说从任何客户端、ASP、.Net、网页、其他数据库、VB 程序、Excel VBA 等获取数据的最佳性能。只是可能需要可能在 SQL 的编写方式上进行了一些优化调整。

    【讨论】:

    • 我的工作(ed)需要报告超出规格的事件,也就是说,我有一些基线值必须保持在过程值之间。它还依赖于处于特定状态的另一个值(比如有点“开启”表示进程正在运行),以确保我看到的唯一数据是“正在运行”的数据。过去,我不得不使用时间戳来比较这两个值(进程和运行),因为这是它们之间唯一的共同点。有更好的方法吗?
    • 有没有命令行工具或者脚本可以查询ip21并将结果保存为csv?
    【解决方案2】:

    我在使用 C#/ASP.NET 中的普通 SQLPlus 驱动程序方面拥有丰富的经验,而且性能从来都不是问题。虽然 ODBC 驱动程序正常工作,但我遇到了某些限制,例如并不总是返回 SELECTs 结果。

    关于如何检查“不合规格”: 如果这是针对实时值而不是时间范围,我建议使用记录引用来简单地选择当前值。这样整个查询就保留在内存中。

    对于时间范围,您将不得不选择范围并对其进行迭代,这样做成本更高。

    【讨论】:

    • 你能给我指点“C# 中的普通 SQLPlus 驱动程序”的文档吗?需要从 IP21 中抓取一些历史标签数据。谢谢。
    • 嗨。如果您安装了 SQLPlus 工作室,则帮助文件包含大量关于 SQLPlus 和 .NET 实现的信息。 HISTORY 和 AGGREGATES 将是您提取历史的最简单的地方 - 确保在 WHERE 子句中添加时间限制 :) 如果您有其他问题,请告诉我 - 我相信我可以提供帮助。
    • 太好了,这听起来很有帮助。我假设“SQLPlus studio”是我需要从 aspentech 获得的产品?我希望有一种方法可以直接与您联系...看来我们需要购买才能继续前进。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多