gpt4 book ai didi

python - 哪个数据库用于科学数据(可变大小的图像+元数据搜索)

转载 作者:搜寻专家 更新时间:2023-10-30 19:41:52 25 4
gpt4 key购买 nike

我正在寻找一个好的数据库解决方案来存储大量(约 100 GB 到数 TB)的科学数据。理想情况下,它能够处理更大量的数据。

要求

我的数据文件是“图像”,一个约 400 万个条目数组(1000x1000x3 整数 + 1000x1000 个 float ),加上每个图像约 50-100 个条目的相关元数据。元数据是分层存储的。图像将被组织到一个或多个“文件夹”(或“项目”)中,这些文件夹本身可以包含其他文件夹。一切都有所有者等。

我需要主要根据元数据在一个或多个文件夹中搜索 100-10,000 张图像。然后,我可能需要从图像中提取切片——如果我只需要其中的一小部分,我真的不想加载所有数据。图像应以压缩格式存储。

编辑:需要强调的是我缺乏统一的数据。例如,图像是未知维度的 float 或整数,通常有 10^5-10^6 个条目,并且每个图像的元数据数量可能会有所不同。跨图像搜索元数据当然仅限于具有相同键的那些。

当前方法

我目前的解决方案不是很好,是混合使用数据库。首先,我正在使用一个 SQL 数据库(现在是 Django + MySQL)来处理“文件夹”、所有者,并且每个图像都有一个记录,但没有它的数据。我也可能为元数据创建记录。其次,我使用 PyTables 以 hdf5 格式存储图像和元数据,并将其视为数据库。这解决了切片和压缩问题,并允许我分层存储元数据,但 PyTables 似乎没有可扩展性,并且远不如商业数据库发达。 (它不是为多用户环境制作的:我在写我自己的锁!,这是一个不好的迹象。)

求助!

我不是铁杆程序员,因此强烈推荐标准数据库解决方案。我的“优化”肯定会包括维护和编程成本。谁能推荐最喜欢的数据库解决方案或架构?关于关系、分层和其他的想法?

选项可能是 SciDB(不常见,可能不错)、SQL(听说它对这些应用程序不好,也许是 PostgreSQL?)和 HBase(实际上,我对此一无所知)。我觉得在科学界,尤其是天文学界,一定有好的解决方案,但大型项目似乎需要一个认真的团队来构建和维护。

我很乐意提供更多信息。

最佳答案

您是否以 HDF5 格式存储数据?由于您已经提到您不愿意加载所有数据,您可能不太喜欢 SciDB、MonetDB 或 RasDaMan 等数组数据库选项。将原始科学格式的大数据加载到数据库中非常痛苦,而且通常还需要一些额外的编程工作。

可以查看这篇论文:Supporting a Light-Weight Data Management Layer over HDF5 .这项工作提出直接通过 HDF5 操作 SQL。

关于python - 哪个数据库用于科学数据(可变大小的图像+元数据搜索),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11324928/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com