【发布时间】:2019-07-15 14:36:55
【问题描述】:
我的任务是为用户设置服务构建新服务(也称为微服务)。
此服务的目的是在系统中存储用户的设置。设置大多以键值对的形式出现,user_id。
此服务的一些功能要求:
- 服务的设计应使其可扩展以进行读取。
- 服务的设计应使其易于插入和扩展。假设将来我们想在系统中引入更多类型的用户设置,只需最少的额外工作即可轻松实现。
目前我正处于该服务的数据库设计和建模阶段,有一些问题想问:
- 行业中是否有任何关于此类服务的良好做法/原则/示例?
- 关系 (SQL) 或非关系 (NoSQL) 数据库更适合这种情况吗?我已经阅读过这个relational design,我想知道 NoSQL 是否适合这个用例,因为大多数时候我们都在为设置存储键值对。
- 我可以考虑其他替代设计吗?
- 假设 NoSQL 适合解决这个问题,我应该选择哪个 NoSQL 数据库?我没有使用 NoSQL 的经验,市场上有很多数据库可供选择。
【问题讨论】:
标签: database database-design architecture microservices