ClickHouse-你没有见过的列存储|青训营笔记

237 阅读3分钟

这是我参与「第五届青训营 」笔记创作活动的第15天

ClickHouse-你没有见过的列存储|青训营笔记

本节主要分为四个部分

1.数据库基本概念

2.列式存储

3.ClickHouse存储设计

4.ClickHouse典型应用场景

1.数据库基本概念

数据库是结构化信息或者数据的有序集合,一般以电子形式存储在计算机系统中。通常由数据库管理系统DBMS来控制。在现实中,数据、DBMS及关联应用一起被称为数据库系统

数据库类型

1.关系型数据库

关系型数据库是一种基于关系模型的数据库管理系统,采用表格化的方式来组织和存储数据。每个表格由若干个列(字段)组成,每一行(记录)代表一个具体的实体或事物,各个表格之间可以通过主键和外键等方式建立关系。

关系型数据库最早由美国IBM公司于1970年代开发,目前已经成为业界应用最广泛的数据库类型之一。常见的关系型数据库包括Oracle、MySQL、Microsoft SQL Server、PostgreSQL等。

其主要有以下特点:

  1. 数据结构清晰:数据以表格的形式存储,具有明确的结构和定义,易于理解和管理。
  2. 数据完整性高:通过主键、外键、唯一性约束等机制保证数据的完整性和一致性。
  3. 支持事务处理:关系型数据库提供了ACID(原子性、一致性、隔离性、持久性)的事务处理机制,确保数据的安全性和稳定性。
  4. 支持复杂查询:关系型数据库支持SQL语言,可以进行复杂的查询和统计分析。
  5. 安全性高:关系型数据库提供了访问控制机制,可以限制用户对数据库的访问权限,确保数据的安全性。

非关系型数据库

非关系型数据库(NoSQL,Not Only SQL)是指与关系型数据库相对的一类数据库,它们不遵循传统的关系型数据模型,而是采用其他的数据模型和存储方式,如文档型、键值对型、列族型等。与关系型数据库相比,非关系型数据库具有更高的扩展性、更好的性能和更灵活的数据模型,适合处理非结构化和半结构化数据

其主要特点有以下

  1. 数据模型灵活:非关系型数据库支持多种数据模型,如文档型、键值对型、列族型等,可以灵活地存储和管理不同类型的数据。
  2. 扩展性好:非关系型数据库采用分布式架构,支持水平扩展,可以在不影响性能的情况下扩展存储和处理能力。
  3. 性能高:非关系型数据库具有更高的性能,可以快速读写大量数据,支持高并发和实时数据处理。
  4. 处理非结构化数据:非关系型数据库可以处理非结构化和半结构化数据,如文本、图像、音频、视频等数据类型。
  5. 可伸缩性好:非关系型数据库可以适应不同规模的应用需求,可以从单机部署到集群部署。