android 中关系型数据库和非关系型数据库的使用场景
关系型数据 relational databases: 使用二维表格结构。SQL Databases
Tables with fixed rows and columns
典型的使用场景是记录用户账号相关信息, 例如用户名, 电话号码, 邮箱, 头像地址等。
现在项目是直接使用原生的sql语句来处理sqlite数据库,比较好的优化方案是使用ROOM来简化处理。
非关系型数据库:NoSQL Databases
https://www.mongodb.com/nosql-explained/nosql-vs-sql
No SQL databases offer many benefits over relational databases. NoSQL databases have flexible data models, fast queries, and are easy for developers to work with.
MongoDB。
可以先简单理解为一个key-value database。
典型的使用场景是, 例如新闻客户端,需要缓存上次打开的新闻,每次打开App首页都是空的。就可以使用MongoDB把首页的数据通过键值对的方式存储到数据库中,下次app启动首现从数据库中读取数据用于展示。
NoSQL的读写速度都是非常快的, 比SQL数据库快5倍以上。 当然最差的处理方式就是使用sharedpreference来存储。