【问题标题】:XML Schema for scientific instrumentation time-series logging用于科学仪器时间序列记录的 XML 模式
【发布时间】:2014-12-10 06:50:59
【问题描述】:

问:

我知道所有这些废话都没有一个完美的答案;我希望有一些经验丰富的洞察力来缩小可能的口味,一些避免转换噩梦的一般策略,以及减少我在 CPU/磁盘上的数据存储占用的任何想法(大字符串操作既昂贵又乏味)。我使用受限硬件,对 XML 标准 有点陌生。我可以很好地读写它(通常用于网站),从来没有真正作为数据集封装。


我已经考虑了这几周,我有 92.3% 的把握 XML 文件是我理想的存储目标。我正在记录各种仪器读数/分析,并一次保存几个月。尽管我确实担心我的数据收集节点的硬件资源有限(过多的字符串操作会变慢,512kB RAM,3.2GB 闪存)。

我正在尝试找到一个结构良好且占用空间最小的机器学习,它可以处理 RAW 数值数据类型。我不需要完全合规的文件,但我正在寻找最合适的解决方案,所以不要偏离正确的格式太远

主要数据模型因素

(以及为什么我认为 XML 更适合打包二进制、FLAT TEXT 甚至 CSV)

  • 多达 8 个不同的数据点(不同的测量值、品牌和传感器类型)
  • 各种原始数据类型(REAL32、DINT、DWORD、BYTE、STRING(任意长)
  • 数据集需要能够在每个文件中保留绝对时间戳(我有一个目录,其中包含 100 个最终会合并的 XML)
  • 数据点配置/数量可能会发生变化,因此我需要能够以最少的冗长/混乱记录对架构的更改。

性能限制/注意事项

  • 我通常应该只从嵌入式平台写出 XML,所以可读性不是最重要的,尽管如果我确实需要处理任何类型的查询,折腾和解析 3.0GB 的文本不是即使在最干净的情况下也会很有趣。
    • 我相信间歇性的 DATE-TIME 节点将帮助我索引此类查询
  • 过度压缩数据实际上会在导出时成为问题,因为这些会成为我的懒惰解压缩更多的计算。
  • 过于冗长的 XML 只能给我 111 天的存储时间。我希望能达到 180 天或更长时间。所以我确实需要更好地压缩文本。
  • 卸载数据后有 3 个潜在目标。我不想因过于复杂而陷入转换瓶颈/错误。
    • Microsoft Excel(他不必完全理解它,但我们不想花费数小时手动将不合规的架构类型/映射导入二维网格。
    • RRD 后端服务器(我将能够运行所需的任何转换,但希望我已经接近 RRD 想要的效果
    • 一些可爱的 Javascript/Android 工具。虽然我希望这些能够执行自定义数据类型处理,但格式良好的 XML 将使开发过程中的检索和解析变得更简单。

【问题讨论】:

  • 你有什么问题?
  • @MichaelKay 突出显示并向上移动了一点。
  • 恐怕这类问题在 StackOverflow 上通常不太适用。它需要一个为期 2 天的咨询研讨会,而不是 SO 问题通常得到的 3 分钟。
  • @MichaelKay 我确实理解你的意思,但 XML 是我避免每一次机会的事情之一,因为我认为它很愚蠢,现在看来我别无选择。我厌倦了唤醒XML Gods。如何缩小this list 或添加一个我不知道的范围。这会有所帮助。我知道以前有人遇到过这个问题,我只是需要一个好的起点,然后再冒险。
  • 很抱歉,如果没有仔细研究您的项目要求,我认为在这里提供指导是不专业的,我没有时间。

标签: xml database real-time datalog


【解决方案1】:

您是否考虑将 XML 文件存储在诸如 eXist 之类的 XML 数据库中?

【讨论】:

    猜你喜欢
    • 2012-07-26
    • 2012-06-25
    • 1970-01-01
    • 2023-02-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-15
    • 1970-01-01
    相关资源
    最近更新 更多