【发布时间】:2020-02-11 17:15:56
【问题描述】:
标题说明了大部分内容。
我需要将 CSV 文件存储在我的数据库中,大部分大小将低于 500kb(最大为 2mbs)。我不确定存储它的最佳方式是什么。
在 Blob 字段中作为二进制或文本字段作为文本;
已经搜索了一段时间,但主要是关于如何将实际数据导入表中的文章,而不是文件或字段上的内容。
【问题讨论】:
-
二进制可能更紧凑(在一定程度上)。另外,您是否考虑过在这里使用 NoSQL 解决方案,例如 Mongo,它可能更适合存储文档?
-
我实际上需要将文件放在我的 mysql 数据库上,但我感谢您的建议。并感谢您的 blob 建议。
-
我认为您不会找到任何单一的“正确”答案,但是......只是好奇为什么要将此类内容存储在数据库中,而不是存储在其他地方,例如网络共享、云存储等,然后将 uri 存储到数据库中的数据中。在数据库中存储非元数据“二进制”内容的情况并不多(如果不用于搜索,它只是向您的数据库添加大量内容)。
-
有正当理由将此类文件存储在数据库中。他们服从事务隔离和回滚。此外,您的数据库备份将包括所有 CSV 文件,并支持快照,因此您可以获得一致的备份。如果您将 CSV 文件存储在数据库之外,这些事情是不可能的。
-
主要是出于回滚的原因,我需要文件与引用它的数据一致