没长正的技术专栏 勤动手、多思考

数据库概述

2014-01-01

阅读:

DB  MySQL

了解数据库基本知识、分类、使用场景

一、SQL

是用于访问和处理数据库的标准的计算机语言。

1.1 OLTP 与 OLAP 区别

OLTPOn-Line Transaction Processing)翻译为联机事务处理(数据库应用), OLAPOn-Line Analytical Processing)翻译为联机分析处理(数据仓库应用),从字面上来看OLTP是做事务处理,OLAP是做分析处理。从对数据库操作来看,OLTP主要是对数据的增删改,OLAP是对数据的查询。

来源

OLTP与OLAP区别

1.3 数据库强一致性方案

github: percona/percona-xtradb-cluster

1.4 3NF

  • 1NF:列不可再分(相似的列需要合并)
  • 2NF:属性完全依赖主键(不存在重复数据)
  • 3NF:属性不依赖于其他非主属性
    • 数据不能存在传递关系,即每个属性都跟主键有直接关系而不是间接关系。

二、DB分类

常见的分类为关系型数据库(结构化数据库)和非关系型数据库(非结构化) ### 1. 关系型数据库

常用的关系数据库

  • H2

  • Access
  • MySQL
  • SQL Server
  • Oracle
  • SyBase
  • DB2
  • Sqlite

2. 非关系型数据库

常用的非关系数据库

  • KV存储:Redis 和 Memcached

  • 文档存储:MongoDB

  • 列存储:Hbase、ClickHouse(联机分析(OLAP)的列式数据库管理系统

  • 图存储:Neo4j

  • 对象存储

  • XML存储

    ….

NoSQL数据库分类

类型 示例 特点
列存储 单元格 单元格
单元格 单元格 单元格

NewSQL: TiDB(PingCAP)、VoltDB、ScaleDB

3. SQL 、NoSQL、NewSQL区别

特性 SQL NoSQL NewSQL
关系模型 ×
SQL语法 ×
ACID ×
水平扩展 ×
海量数据 ×
无结构化 × ×

4. 事务

XA、TCC、DTP

事务模型

2021-12-02_事务模型

XA: 强一致性,(TM与RM之间) 存在长事务风险(必须等待锁释放才能)。

TCC: try/confirm/cancel AP 异步 (一阶段:发起方,二阶段:事务管理器) 短事务

DTP: prepare/commit/rollback AP (两阶段都是有TM调用)

参考

nosql-database

菜鸟教程DataBase维基百科

Hbase、Kudu和ClickHouse横向对比

-- 不要停止思考

欢迎拍砖,多多交流,转载请注明出处:[没长正的技术专栏](http://blog.meizhangzheng.com) 如涉及侵权问题,请发送邮件到xsj34567@163.com,如情况属实本人将会尽快删除。


上一篇 Test

下一篇 MySQL

Comments

Content