我计划为使用 Amazon S3 作为文件存储后端的多租户 SaaS 平台构建文件管理微服务。我打算使用 DynamoDB 作为数据库,因为它速度快且可扩展。该平台可能托管许多租户,每个租户有许多用户,每个用户的存储空间中有许多文件。
我需要在数据库中记录每个文件的元数据和用户目录结构(层次结构)。但是,我不确定 DynamoDB 是否是最佳选择。用户可能希望列出所有目录和文件,按名称搜索,或按字母顺序或按创建日期排序。这可能会导致“热分区”问题(至少对于全局二级索引而言)。当跟踪租户内所有用户上传的所有文件时,情况可能会变得更具挑战性。
因此,我正在考虑一种混合方法:使用 PostgreSQL 存储关系数据,使用 DynamoDB 存储文件信息和目录层次结构。
你对这个想法有什么看法?有人能给我指明正确的方向吗?
提前致谢。