我是 Python、PyTables 和 HDF5 的新手。我正在为我的问题寻找简单和最佳的解决方案。
接下来是问题。一方面,我有许多带有数据的 XML 文件。我只想解析这些文件并将数据放在另一端的 hdf5 文件中。稍后,我将通过一些搜索条件使用这些数据。为什么是 HDF5?因为需要放置大型数据集并且因为速度。使用 RDBMS 会在 JOIN 操作期间产生性能问题。解决方案必须提供速度和良好的内存性能。
经过一番谷歌搜索后,我发现 Python 和 PyTables 是可能的解决方案。我的想法是在 Java 中解析 XML 中的数据(此代码必须用 Java 编写),然后编写 python 脚本,使用 PyTables API 在 hdf5 中插入数据并从 Java 执行 python 脚本。所以,我正在从 Java 程序编写和执行 python 脚本。为了在 Java 中编写 python 脚本,我使用 java.io.* 包并在 Java 中执行 Process 类。例如:
p.exec("cmd /c C:\MyScripts\myscript.py")
我不知道这个解决方案好不好。对我来说,使用 java.io.* 从 Java 编写脚本并不酷。可能,我稍后在从脚本读取结果时会遇到问题(当我使用 Python 脚本和 PyTables API 制定一些搜索条件时)。
所以,我对我的问题没有几个问题。在一侧解析 XML 数据并将数据存储在另一侧的 hdf5 之间的最佳解决方案是什么?我对这个解决方案的正确方式(从 Java 代码编写和执行 python 脚本)?Python 和 PyTables 呢?这些技术能很好地解决我的问题吗?我还阅读了一些关于 Jython 的内容,但我不知道是否可以将它与 PyTables 结合使用?
欢迎专业人士提出意见和建议。感谢您的帮助。