首页

【阅读分享】不同数据库类型结构存储模型对比图例

标签:数据库     发布时间:2024-03-30   
主要有哪几种数据库类型?(图转自bytebytego,翻译整理by dogstar)@b@@b@✅ 第1种、关系型数据库最为常见的莫过于关系型数据库,通过二维表格来存放数据。支持事务、关联查询等操作。典型代表的关系型数据库有:开源的MySQL、微软的SQLServer、甲骨文的Oracle。另外,还有偏向数据分析的OLAP数据库,其特点是:数据量巨大、分布式存储、偏向数据计算、聚合和转换,俗称的数据仓库/大数据分析。搭建好之后,不管背后存了多少TB/多少GB/甚至PB数据,只需要在应用层发起一条查询,就会有一堆服务器集群帮你计算(厉害吧 ^_^)。@b@@b@✅ 第2种、键值数据库特点:在一个无序的键值集合中通过 key-value 键-值对 存放你的数据。很明显,key是唯一的、不能重复的(但value可以重复),无序(即不支持key排序)。那有什么好处呢?好处就是搜索查找指定的key非常棒!常见的就有高效缓存 Redis、Memcache等,也俗称NoSQL。@b@@b@✅ 第3种、文档数据库可以理解为把一大坨数据存到一个key,它将数据存储为一系列的文档,通常使用JSON、BSON或XML格式进行序列化。例如:MongoDB。@b@@b@✅ 第4种、列式存储数据库主要是以列相关存储架构进行数据存储的数据库,适合于批量数据处理和即时查询。相比行式数据库,可能可以更好解决“稀疏矩阵”的空间浪费,并且查询效率更高,特别适用 读多写少 的场景。典型的有PostgreSQL。🙉🙉@b@@b@最后科普:@b@📙 1)Database是指数据库、SQL是指结构化查询语言(Structured Query Langauge),通过SQL语句,你只需要告诉数据库你要什么数据,而不用关心具体的实现过程。例如查询全世界年龄最大的人是谁。@b@📙 2)数据库表关系之间有:一对一(1:1)、一对多的关系(1:N),甚至多对多(N:M)。@b@📙 3)怎么编程?采用ORM框架。为什么?因为主流的编程思想是OOP面向对象编程,每个类中有属性和行为;而关系数据库是二维表,不能直接映射,因此需要通过ORM方式进行匹配。所以有时你会听到:Has-One、IS-One、HAS-Many、BELONGS-TO这些关系的表述。

555-4892a5c6c7061941630c~tplv-obj_1025_1365.png