100.什么是 NoSQL 数据库?
NoSQL 是非关系型数据库,NoSQL = Not Only SQL 。
? NoSQL 和 RDBMS 有什么区别?
- 关系型数据库,采用的结构化的数据。
- NoSQL 采用的是键值对的方式存储数据。
? 在哪些情况下使用和不使用 NoSQL 数据库?
优先考虑使用 NoSQL 数据库
- 在处理非结构化 / 半结构化的大数据
- 在水平方向上进行扩展
- 随时应对动态增加的数据项
优先考虑关系型数据库
- 在考虑数据库的成熟度
- 分析和商业智能
- 管理及专业性等问题
下面我说下自己的观点
- 信息表(例如,商品信息),使用 NoSQL 数据库不错,因为 NoSQL 往往提供灵活的数据类型。
- 交易表,使用关系数据库,因为往往需要关注事务性。
- 对 BI 分析等,使用关系数据库,因为周边设施更加完善。
? 非关系型数据库有哪些?
比较常见的三个是:
- MongoDB
- Redis
- Elasticsearch