作者:佚名 来源于:世界儿童文学网
在关系型数据库中,实体以及实体间的联系均由单一的结构类型来表示,这种逻辑结构是一张二维表。
关系型数据库以行和列的形式存储数据,这一系列的行和列被称为表,一组表组成了数据库。
MySQL
开源,支持大容量数据,常用于Web应用
PostgreSQL
开源,支持特殊数据类型,如GIS、JSON等
SQL Server
Microsoft出品,Windows平台数据库
Oracle
付费的数据库,支持高并发和海量数据应用
DB2
IBM出品,高度可扩展和兼容的数据库
在线分析处理OLAP(On-line Analytical Processing)是一种用于分析和查询大规模数据集的计算机处理技术。
OLAP技术主要用于多维数据分析和数据挖掘,通过提供多维数据模型和多维查询功能,帮助用户从不同角度和层次上对数据进行分析和查询,侧重分析决策。
这些叛逆者有自己的酷俱乐部,对传统 SQL 方式说“不”。NoSQL 数据库有四种令人兴奋的风格:
①图数据库:想想社交网络,其中人与人之间的关系最重要。这就像绘制谁与谁是朋友地图一样。图数据库是以点、边为基础存储单元。
Neo4j
Java平台的图数据库,支持ACID事务和Cypher查询语言。
Amazon Neptune
全托管的图数据库,支持多种图数据模型和查询语言。
JanusGraph
分布式图数据库,支持多种后端存储和多种查询语言。
HugeGraph
百度开源的分布式图数据库
②键值数据库:就像一个宝箱,每个项目都有其唯一的键值,找到需要的东西是小菜一碟。在上万并发连接下,轻松地完成高速查询。而MySQL,在几百个并发连接下,就基本上崩溃了。
Redis
基于内存的高性能Key-Value数据库,用于缓存与消息
MemcacheDB
MemcacheDB的前端缓存是Memcached
etcd
etcd是一个高可用的分布式键值存储系统,
主要用于共享配置信息和服务发现。
DynamoDB
DynamoDB是亚马逊的key-value模式的存储平台
③文档数据库:文档数据库是一种以类似于 JSON 的格式存储信息的数据库。它与传统数据库不同,是为处理文档而不是表格而设计的。
MongoDB
开源的文档型数据库,存储以JSON格式数据
CouchDB
Apache开源的文档型数据库,RESTful API接口
Kudu
Cloudera出品的快速轻量级HDFS上运行的列存储
ClickHouse
面向列的开源数据库,用于在线分析与报告
④Column DB:数据以列的方式组织并存储,查找速度快,常用于数据分析。
HBase
面向列的分布式数据库,运行在Hadoop上
Cassandra
面向列的分布式数据库,提供高可用性
Kudu
Cloudera出品的快速轻量级HDFS上运行的列存储
ClickHouse
面向列的开源数据库,用于在线分析与报告
SQL语句由数据库系统分几个步骤执行,包括:• 解析SQL语句并检查其有效性• 将 SQL 转换为内部表示,例如关系代数• 优化内部表示并创建利用索引信息的执行计划• 执行计划并返回结果
SQL的执行非常复杂,涉及很多考虑因素,例如:• 索引和缓存的使用• 表连接的顺序• 并发控制• 事务管理
INNER JOIN
内连接
LEFT JOIN
左连接
RIGHT JOIN
右连接
OUTER JOIN
外连接
LEFT JOIN EXCLUDING INNER JOIN
左连接减内连接
RIGHT JOIN EXCLUDING INNER JOIN
外连接减内连接
OUTER JOIN EXCLUDING INNER JOIN
右连接减内连接
上一篇: 四大文明古国有哪些(四大古国谁最老)
下一篇: 天然气滴滴滴叫不停怎么回事(燃气表一直滴滴响怎么解决)
【相关文章】
版权声明:文章观点仅代表作者观点,作为参考,不代表本站观点。部分文章来源于网络,如果网站中图片和文字侵犯了您的版权,请联系我们及时删除处理!转载本站内容,请注明转载网址、作者和出处,避免无谓的侵权纠纷。