1

我正在开发用于数据分析的混合 SQL(使用 mySQL)和 HDF5 数据库解决方案。我的一些数据非常适合关系,SQL 作为一种查询语言非常方便和有效,但是我有大量的数值数据(具有数千个或元素/行/列的数组和矩阵)。因此,我将这些保存在 HDF5 文件中,并根据每个观察之间的一些共性安排组层次结构,这样如果我将用于派生该层次结构的字段添加到 SQL Select 查询中,并在关系数据库与该特定观察的数据集中的位置,我得到了快速定位 HDF5 文件中的数值数据所需的一切。

我正在用 Python、Numpy 和 h5py 编写所有这些内容。但是,在某些时候,我想让整个事情对用户更加友好,甚至可以在网络服务器上使用它来进行查询和可视化。我最初的猜测是从 Django 或 SQLAlchemy 之类的 ORM 开始,然后添加一些我的实际脚本来处理 HDf5。有没有人有这种混合方法的经验,尤其是在这个级别?对新手有什么建议吗?

4

2 回答 2

2

您可能对这项工作感兴趣: Supporting a Light-Weight Data Management Layer over HDF5

顺便说一句,在这项工作之后,已经开发了更多的功能,包括索引、采样和结构分组。

于 2013-12-28T19:13:02.797 回答
1

您可能会受益于使用检索文件中的 HDF5 数据集地址(使用 H5Oget_info)并将其存储在数据库记录中。然后,数据集地址可以与 H5Oopen_by_addr() 一起使用,直接打开 HDF5 数据集,无需遍历 HDF5 文件中的组层次结构。

请参阅: http ://www.hdfgroup.org/HDF5/doc/RM/RM_H5O.html#Object-GetInfo 和 http://www.hdfgroup.org/HDF5/doc/RM/RM_H5O.html#Object-OpenByAddr

于 2013-07-20T21:14:50.200 回答