Python Django文件系统存储大量文件

Python Django文件系统存储大量文件,python,django,filesystems,storage,Python,Django,Filesystems,Storage,情景: Django应用程序生成许多与不同模型中的对象相关的小文件 在使用默认文件存储时,为了避免在单个目录中生成大量文件,我做了大量搜索 django fsfield是否是唯一的开源解决方案?对于修复目录中的大量索引节点,您还有什么建议吗 谢谢大家! 考虑将内容存储在MongoDB集合中 由于文件很小,您可以使用包含文件内容的单个文件创建MongoDB文档。在这种情况下,“小”意味着小于MongoDB文档大小限制,目前为16MB 如果您需要存储大文件,Mongo支持使用 另请参见。还可以使用自

情景: Django应用程序生成许多与不同模型中的对象相关的小文件

在使用默认文件存储时,为了避免在单个目录中生成大量文件,我做了大量搜索

django fsfield是否是唯一的开源解决方案?对于修复目录中的大量索引节点,您还有什么建议吗


谢谢大家!

考虑将内容存储在MongoDB集合中

由于文件很小,您可以使用包含文件内容的单个文件创建MongoDB文档。在这种情况下,“小”意味着小于MongoDB文档大小限制,目前为16MB

如果您需要存储大文件,Mongo支持使用


另请参见。

还可以使用自定义存储管理器,如果文件很小,请使用二进制字段将其保存在数据库模型中,并保存16MB以上的小文件,而不需要使用其他数据库。

我正在使用

django castor是django的一个可重用应用程序,它提供了 内容寻址存储后端。主班,,
djcastor.storage.CAStorage
是一种保存文件的
FileSystemStorage
在他们的SHA-1摘要下

  • 无论同一个文件被上传多少次,它都将永远不会被上传 存储一次,从而消除冗余

  • 文件名是伪随机的,只由十六进制字符组成,所以 您不必担心文件名冲突或清理

  • django castor
    uploads目录中的碎片文件基于它们的 消化;这可以防止单个文件中存在过多文件时出现文件系统问题 目录