【发布时间】:2013-08-12 11:00:05
【问题描述】:
对于我们的项目,我们需要一个支持 JOIN 并且能够轻松添加和修改实体属性的数据库(无模式/免费)。重点:
- 该系统旨在与客户 (CRM) 合作
- 基本实体:用户、客户、案例、案例交互、订单
- 目前在数据库中有约 20 万客户和约 25 万订单
- 客户实体包含 15-20 个通常未填写的可选属性
- 每天大约有 100 个新病例
- 数据在后台与其他几个来源同步
要求(从高到低优先级):
- 能够按相关实体实现搜索/排序,例如按链接客户名称区分大小写(支持 JOIN)
- 具有更改数据架构的灵活性,并且不会为大量属性存储 NULL
- 性能
- ORM for Python,支持监视更改并可以仅将更改存储到数据库中
我们尝试过的:
- MongoDB 不满足第 1 段。
- 一张表所有属性的PostgreSQL不满足第2段。
- PostgreSQL 的每个属性或 EAV 都有一个单独的表不满足第 3 段(很多慢连接),但似乎比其他解决方案更好。
您能推荐任何满足我们需求的数据库或系统设计吗?
【问题讨论】:
标签: database