database - Postgresql 数据库的文件存储系统
问题描述
我目前有一个需要存储大量文件的数据库。但是,我也存储有关特定文件的信息。我希望能够将文件存储在包含此元数据的数据库旁边,我想知道如何最好地做到这一点。这些文件是自动生成的,并且采用适合文件系统的分层结构。
最初的想法是存储包含所有文件的文件系统的根目录的路径,然后引用与此相关的文件(例如../file_group_1/file_1)。在研究这一点时,很难找到一种方法将文件存储在这个文件系统中,不用说,在管理文件系统的数据库旁边运行一个单独的服务器。
我研究过 Postgresql 中的大对象类型,但我也担心安全隐患。有没有更好的解决方案?
解决方案
用于制作最佳文件系统。我建议使用文件夹和文档层次结构。
文档表将引用实体表和 parent_doc_id 用于层次逻辑。您应该根据需要使用递归 CTE 来获取文档树。
在文件系统中,您可以使用带有文档引用的路径。
ie
entity => 1001
Document 1 => 1002
Document 2 => 1003
我建议在文件系统中使用整数路径以避免重复的文件名重叠。
对于文档 1:1001\1002
对于文档 2:1001\1003
可以存储在表中以供参考的实际文件名和路径。
推荐阅读
- javascript - 如何将参数传递给 JavaScript 中的 compose 函数中的每个函数
- c# - 如何根据操纵杆旋转来旋转我的飞机?
- networking - MutlicastSocket 接收并不总是
- ios - CollectionView 单元崩溃 - 断言失败
- python - 为什么 list.__repr__ 不使用 list.__getitem__?
- sql - Prestosql 将 UTC 时间戳转换为本地时间戳?
- javascript - 如何调整分析器设置以允许 edge_ngram 搜索数字?
- c# - "Exception thrown: 'System.FormatException' in Microsoft.SqlServer.Types.dll " in ASP.NET console application C#
- reactjs - 无法在反应js中将变量的值设置为状态变量
- python - 如何在熊猫中加载此类数据