跳至主要內容
数据库系统概论

数据库系统概论

数据库核心术语

数据

数据是数据库中存储的基本对象,可以对数据做如下定义:描述事物的符号称为数据

描述事物的符号多种多样,所以数据有多种表现形式。

数据的表现形式还不能完全地表达其内容,需要经过解释,数据和关于数据的解释是密不可分的,每一个数据都有它的意义,数据的解释指的是对数据含义的说明,数据的含义称为数据的语义,数据与其语义是不可分的。

数据库

数据库就是存放数据的仓库,只不过这个仓库是在计算机存储设备上,而且数据是按一定格式存放的。


钝悟...大约 11 分钟数据库关系型数据库综合数据库关系型数据库
Mysql 高可用

Mysql 高可用

复制

复制是解决系统高可用的常见手段。其思路就是:不要把鸡蛋都放在一个篮子里。

复制解决的基本问题是让一台服务器的数据与其他服务器保持同步。一台主库的数据可以同步到多台备库上,备库本身也可以被配置成另外一台服务器的主库。主库和备库之 间可以有多种不同的组合方式。

MySQL 支持两种复制方式:基于行的复制和基于语句的复制。这两种方式都是通过在主库上记录 bin log、在备库重放日志的方式来实现异步的数据复制。这意味着:复制过程存在时延,这段时间内,主从数据可能不一致。

复制如何工作


钝悟...大约 5 分钟数据库关系型数据库Mysql数据库关系型数据库Mysql高可用
Redis 事件

Redis 事件

Redis 服务器是一个事件驱动程序,服务器需要处理两类事件:

  • 文件事件(file event) - Redis 服务器通过套接字(Socket)与客户端或者其它服务器进行通信,文件事件就是对套接字操作的抽象。服务器与客户端(或其他的服务器)的通信会产生文件事件,而服务器通过监听并处理这些事件来完成一系列网络通信操作。
  • 时间事件(time event) - Redis 服务器有一些操作需要在给定的时间点执行,时间事件是对这类定时操作的抽象。

关键词:文件事件时间事件


钝悟...大约 3 分钟数据库KV数据库Redis数据库KV数据库Redis
Redis 管道

Redis 管道

关键词:Pipeline

Pipeline 简介

Redis 是一种基于 C/S 模型以及请求/响应协议的 TCP 服务。通常情况下,一个 Redis 命令的请求、响应遵循以下步骤:

  • 客户端向服务端发送一个查询请求,并监听 Socket 返回(通常是以阻塞模式,等待服务端响应)。
  • 服务端处理命令,并将结果返回给客户端。

显然,如果每个 Redis 命令都发起一次请求、响应,会很低效。因此,Redis 客户端提供了一种批量处理技术,即


钝悟...大约 3 分钟数据库KV数据库Redis数据库KV数据库RedisPipeline
Redis 发布订阅

Redis 发布订阅

Redis 发布订阅 (pub/sub) 是一种消息通信模式:发送者 (pub) 发送消息,订阅者 (sub) 接收消息。Redis 客户端可以订阅任意数量的频道。

Redis 有两种发布订阅模式

  • 基于频道(Channel)的发布订阅
  • 基于模式(Pattern)的发布订阅

关键词:订阅SUBSCRIBEPSUBSCRIBEPUBLISH观察者模式


钝悟...大约 3 分钟数据库KV数据库Redis数据库KV数据库Redis订阅观察者模式
搜索引擎数据库

搜索引擎数据库

📖 内容

Elasticsearch

Elasticsearch 是一个基于 Lucene 的搜索和数据分析工具,它提供了一个分布式服务。Elasticsearch 是遵从 Apache 开源条款的一款开源产品,是当前主流的企业级搜索引擎。

Elasticsearch 面试总结


钝悟...大约 2 分钟数据库搜索引擎数据库数据库搜索引擎数据库
KV 数据库

KV 数据库

📖 内容


钝悟...小于 1 分钟数据库KV数据库数据库KV数据库
Redis 数据结构

Redis 数据结构

关键词:对象SDS链表字典跳表整数集合压缩列表

SDS

SDS 简介

SDS 是 Simple Dynamic String 的缩写,即简单动态字符串。Redis 为 SDS 做了一些优化,以替代 C 字符串来表示字符串内容。此外,SDS 还被 Redis 用作缓冲区(buffer),如:AOF 模块中的 AOF 缓冲区;客户端状态中的输入缓冲区。


钝悟...大约 29 分钟数据库KV数据库Redis数据库KV数据库Redis数据结构链表字典跳表
2
3
4
5
...
10