各大公司开源网站,重庆建工集团有限公司官网,网站建设海之睿,青岛城市建设投资建设集团网站Redis - NoSQLSQL 与 NoSQL差别一#xff1a;结构化 与 非结构化差别二#xff1a;关联性 与 非关联性差别三#xff1a;规范化查询语句 与 非规范化差别四#xff1a;事务 与 无事务差别五#xff1a;磁盘存储 与 内存存储RedisRedis 的安装当前数据库存储主要分为 关系型…
Redis - NoSQLSQL 与 NoSQL差别一结构化 与 非结构化差别二关联性 与 非关联性差别三规范化查询语句 与 非规范化差别四事务 与 无事务差别五磁盘存储 与 内存存储RedisRedis 的安装当前数据库存储主要分为 关系型数据库SQL 以及 非关系型数据库NoSQL MySQL 作为典型的 关系型数据库而 Redis 作为典型的 非关系型数据库。 SQL 与 NoSQL
差别一结构化 与 非结构化
结构化
在建立 SQL数据库时我们需要对数据的类型与数据的大小做定义我们需要设置主键、非空等约束。最终给我们呈现的是一张具有规则的表格。 非结构化
在 Redis、MongoDB、Neo4j 等非结构化数据库中数据不以表等形式存储而是以 Redis键值对 MongoDBjson存储文档类型 Neo4j图类型 差别二关联性 与 非关联性
关联性
SQL中表与表之间存在关联通过外键的方式建立
非关联性
NoSQL中不存在关联性而是通过 json嵌套的方式 差别三规范化查询语句 与 非规范化
规范化
SQL中存在一套非常规范的查询语句
# 查询语句示例
select id,name,age from tb_user where id1;# DQL实际执行顺序
FROM表名
WHERE条件
GROUP BY分组
HAVING分组后条件
SELECT字段
ORDER BY排序
LIMIT分页非规范化
NoSQL中
# Redis
get user:1# MongoDB
db.users.find({_id:1})# elasticsearch
GET http://localhost:9200/users/1差别四事务 与 无事务
事务
SQL中通过事务控制命令对事务进行控制控制的原因主要为了保证数据的完整性以及数据的一致性。即ACID特性
原子性Atomicity
事务是不可分割的最小操作单元要么全部成功要么全部失败一致性Consistency
事务完成时必须是所有数据保持一致状态隔离性Isolation
多组事务存在并发但是根据数据库系统提供的隔离机制互不干扰持久性Durability
事务一旦提交或回滚其对数据库中数据的更改是持久性的。start transaction; # 控制事务命令
# 被控制的事务
...
commit; # 正确即提交
rollback; # 错误即回滚无事务
NoSQL中不存在事务管理的说法故无法满足 ACID (原子性、一致性、隔离性、持久性)所以说若对数据库安全性有需求则应该首选关系型数据库。 差别五磁盘存储 与 内存存储
磁盘存储
SQL中大多数采用磁盘存储所以对比 NoSQL的内存存储肯定性能不如其但是满足ACID的要求
内存存储
NoSQL中大多数数据存储在内存中如此性能比较高但是内存会因为突然关机而数据消失所以比如 Redis会定期从内存中存入磁盘以此支持数据持久化。 Redis
诞生于2009年全称 Remote Dictionary Server是基于内存的键值型NoSQL数据库。
特征
键值型单线程串行执行原子性安全低延迟速度快基于内存支持数据持久化定期从内存存入磁盘支持主从集群分片集群支持多语言客户端。 Redis 的安装
未完待续 2023年3月10日晚间完成