当前课程知识点:数据库系统原理与开发 >  第7章 NoSQL数据库技术 >  7.3 键值对数据库 >  7.3.1 键值对数据库-1

返回《数据库系统原理与开发》慕课在线视频课程列表

7.3.1 键值对数据库-1在线视频

下一节:7.3.2 键值对数据库-2

返回《数据库系统原理与开发》慕课在线视频列表

7.3.1 键值对数据库-1课程教案、知识点、字幕

本节的学习内容是我们redis数据库的基本数据类型

我们这节包括四个方面的内容

一个是我们建筑数据库的基本概念

电子数据库的模型和redis数据库的介绍和redis数据类型

下面看第一个文件是数据库的基本概念

电子实验室还是模型

是我们存储模型里头最基本的数据存储模型

就类似于我们的哈希表,在剑河之间建立一种映射关系

实际上这种就极大的简化了我们的关系数据模型

还有电子数据库的一致性表

现在针对单个电子可以包括我们的获取设置,删除,保证一致性

也可以用我们的最终一致性模型来实现我们的一致性

下面看一下我们建筑数据库的类型

根据我们的数据的保存方式,我们可以分为临时其永久性和两者兼有

只要临时的保障方式就是我们的所有数据保存的

处理速度快,但是可能数据会丢失

永久性就是我们在磁盘上保存数据就可以,不会丢失

两者兼有的人,就是我们可以在内存操作之后,把数据保存到磁盘上

但我们这一节要随redis数据库实验

就是我们的两者兼有的这种数据的保存方式

下面我们来看一下我们的键值数据库的数据模型

实际上这位数据模型时间,我们在数据库里头

我们有三个部分,一个是我们的数据结构件的数据库的数据结构实验非常简单

就是一个键和一个值两部分

但是我们的值可以是任何的各种数据类型

当然对键值数据会因为非常简单

只有键和值两部分,我们的数据操作也相应也比较简单

我们可以取键的值设置键的值

还可以删除,当然我们也可以取

值本身这个数据库里还值的本质的内容

还有值的修改等等

这个就是我们值对单行的操作进行,保证数据的完整性

这个就是我们数据模型的三个部分,数据结构

数据操作和完整性的建筑数据库里的体现

下面第三个问题是,我们的redis数据库

我们来看一下这个数据库,做一个简单的介绍

redis是remote dictionary server的缩写

它是一个开源的一个电子数据库

它实际上是一个内存情的电子数据库

实际上放在内存的数据,所有的数据操作,所以速度非常快

而且它是通过电子的单值不同类型来取平的

就是说我们的键是一个,但是我们的值可以

取不同类型在我们的微机室点开支持五种类型

字符串类型、哈希表类型、链表类型

还有集合类型,还有有序集合类型

我们的内存的容量实际上是会限制我们整个他的操作的速度

可以保存多种数据结构,有一个规定是一个gb

而且list可以用来实现,我们尽量记得一些高性能消息服务

用我们的是集合,可以实现高性能的标签服务

而且在数据库里头,我们还可以设置一些键值的一些过期时间啊

通过一步的方式来写入磁盘

具有快速和数据持久化的一些特征

下面我们来分析一下它的特点

一个就是我们刚才说了,他是在组成中它的读写速度非常快

另外一个他支持我们的主从复制,意思就是说我们再可以通过

主服务器和从服务器起来协调完成

所有的数据读都在从服务器里头完成写入才在主服务器里头完成

我们实际上可以用内存式的存储

发布和订阅的通道,这个就是说你可以响应时间可以通过发布的方式

来推迟一些响应的时间,还有一个我们内存可以定期保存的文件系统里头

实际上我们所有的内存数据是操作的内存,但是我们的数据是保存的文件里头去

可以用于故障的恢复,而且还有有很多我们开发包的一个支持

下面我们就来看一下建筑数据库支持的五种数据类型

我们刚才说了,每个数据库所有的数据都是键值

对底层我们都是用二进制的数组来存放的

客户端需要的时间是把数据取出来自己转换

所以说我们所有

键值二进制已经是安全的,任何一个二进制序列就作为键值

空的字符串也是可以作为键值的

还有我们的键值取值不能太长

当然太长,我们的计算成本很高

太短也不行,因为太短,可能的数据容量可读性比较差

所以说我们下面来看一下,我们值得五种类型

字符串、哈希表还有我们的链表

集合类型和有序集合类型,我们来看一下对应相关的

他们的具体细节,首先第一个是字符串

字符串时间是最基本的类型

它实际上可以包含所有任何的数据

虽然我们可以定义成字符串

但是字符串可以定义为二进制里头的字符串

比如说图片也可以作为二进制数据

字符串的类型存进去了

操作日志以及relication等功能

字符串操作就包括我们设置一个字符串得到

一个字符串,还有字符串的增加减少,我们可以得到多个字符串

还可以你获得字符串的长度还可以

字符串后边再增加新的内容

还可以获取某一段的内容,设置及获取某一位

还可以批量设置字符串的等等,这些操作都可以用在我们的

字符串操作里头

字符串的一个列表,它是按照顺序进行排序的

我们可以有从左边插入右边,插入左边,取出右边取出

只要我们的ar表示左右

我们可以用我们这个列表实现

最新消息的排行榜啊,等等

我们整个的实现方式是一个双向链表,我们支持反向的

查找和遍历,使用的时间可以考虑到额外部分的内存开销

可以再换队列里头,我们都用这个结构,我们可以看下这个

我这个图上我们最左边,我们看一下我们这个历史的结构,我们有头和尾巴

实际上还有一个list就是我们的长度

下面几个就是我们的整个的

一些相关的,就对这个列表的一些说明,我们可以从头

从第一个节点进行取证,第一个节点我们也可以从最后一个节点来取最后一个节点

因为我们在这个数据结构里头有头和尾

只出来相关的信息

下面一个这个链表的特征,我们看一下

像我们每一个方端的一个链表都有前后指针

还有一个,他没有还他的第一个节点就不是一个还像的

还有就是头和尾都有指针,还有这样子的,我们正在操作这个链表的过程中

实现它的操作,运算速度非常快

最后这个链表时间可以指向不同的数据,而且最后我们的

这个结构里头我们有几个变量来控制我们这个链表可以保存任意的值

哈希表是键值对的一个集合

实际上也是有一个字符串类型的一个

值得类型的一个映射表,我们看一下实际上

嗯,我们这边给一个例子,我们就给比如说一个

把他用户名作为id,其他的信息做一个介质,但是让我们看下面那个

我们可以整个做一个键值,其他的多个月可以作为一个哈希表来出现

我们下边还有一个例子

这个例子我们看一下九九用户表

用户表这个实际上我们就键值是用户了信息

完了以后

对用户的其他信息,我就把它用哈希表来表示

这个哈希表里头,就包括姓名,性别,生日

和专业每一个列都是有一个

列名和值

这个就是我们哈希表的基本的定义

下面一个就是我们的数据集合

数据集合实际上是一个无序的去重的一个集合,元素也是字符串

对外提供的也是一个列表,就是可以自动排序

也可以存储一个列表,但是数据不重复

内部就是实现是值永远是空的一个哈希表

我们通过哈希的方式来进行快速的排重和排序

所以说对这个集合我们可以用增加一个集合删除读取

还判断元素是不是存在

求集合的并交叉获取元素,获取这种差集,交集等等

这些操作都可以在机房上进行操作的下一个就是

对我们的有序集合,有序集合,实际上和我们的几个操作类似

在这里主要是我们要表示这个集合的

数据是有序的,去重的元素是

还是字符串类型,就是不允许有重复的成员

再集合里头,我们没有成员可以重复,在集合里头

我们必须不能有重复的成员,每个元素就有一个浮点数的分值

是保证我们的

本子从小到大排序排列的集合中

我们常用的命令可以增加删除,也可以求这个

在集合的某一个位置等等这些命令

我们可以通过一个我们每一个分子来做一个优先级来对集合进行排序

所以说我们的所有的插入删除都是有序的

所有的操作操作完以后,整个要保证我们的集合

最后是一个有序的一个表格存在的

内部我们可以使用哈希表,或者使用跳跃表来保证

我们所有的数据的存储和所有的数据里头是有序的

还有一个我们的哈希表里头可以把我们的分子放在里头

最后我们如果是用跳跃表的实现的话

实际上我们可以把分值也是作为排序来进行的

最后我们看一下,整个的总结,就是我们的键值

数据库是由一个节又一个值,建筑数据库的数据模型就是我们的数据结构操作完整性

还有一个,我们redis数据库相关的一些

他的数据类型,五种类型,字符串哈希表链表集合有序表

还有相应他的操作函数这些

这个就是我们本节学习的一个内容

数据库系统原理与开发课程列表:

第1章 数据库系统概论

-1.1 数据库及其系统概念

--1.1 数据库及其系统概念

-1.2 数据库技术发展

--1.2 数据库技术发展

-1.3 数据库应用系统

--1.3 数据库应用系统

-1.4 典型数据库管理系统

--1.4 典型数据库管理系统

-1.5 PostgreSQL对象-关系数据库系统软件

--1.5 PostgreSQL对象-关系数据库系统软件

-第1章 数据库系统概论--本章单元测试

-第1章 数据库系统概论--本章重点问题讨论

第2章 数据库关系模型

-2.1 关系及其相关概念

--2.1.1关系及其相关概念-1

--2.1.2关系及其相关概念-2

-2.2 关系模型原理

--2.2.1关系模型原理-1

--2.2.2关系模型原理-2

-2.3 PostgreSQL数据库关系操作实践

--2.3 PostgreSQL数据库关系操作实践

-第2章 数据库关系模型--本章单元测试

-第2章 数据库关系模型--本章重点问题讨论

第3章 数据库操作SQL语言

-3.1 SQL语言概述

--3.1 SQL语言概述

-3.2 数据定义SQL语句

--3.2.1数据定义SQL语句-1

--3.2.2数据定义SQL语句-2

--3.2.3数据定义SQL语句-3

-3.3 数据操纵SQL语句

--3.3 数据操纵SQL语句

-3.4 数据查询SQL语句

--3.4.1单表数据查询

--3.4.2 内置函数与分组统计

--3.4.3 多表关联查询

-3.5 数据控制SQL语句

--3.5 数据控制SQL语句

-3.6 视图SQL语句

--3.6 视图SQL语句

-3.7 PostgreSQL数据库SQL实践

--3.7 PostgreSQL数据库SQL实践

-第3章 数据库操作SQL语言--本章单元测试

-第3章 数据库操作SQL语言--本章重点问题讨论

第4章 数据库设计与实现

-4.1 数据库设计概述

--4.1 数据库设计概述

-4.2 E-R模型方法

--4.2.1 E-R模型方法-1

--4.2.2 E-R模型方法-2

-4.3 数据库建模设计

--4.3.1 数据库建模设计-1

--4.3.2 数据库建模设计-2

-4.4 数据库规范化设计

--4.4.1 数据库规范化设计-1

--4.4.2 数据库规范化设计-2

-4.5 数据库设计模型SQL实现

--4.5 数据库设计模型SQL实现

-4.6 基于Power Designer的数据库设计建模实践

--4.6 基于Power Designer的数据库设计建模实践

-第4章 数据库设计与实现--本章单元测试

-第4章 数据库设计与实现--本章重点问题讨论

第5章 数据库管理

-5.1 数据库管理概述

--5.1 数据库管理概述

-5.2 事务管理

--5.2 事务管理

-5.3 并发控制

--5.3.1 并发控制-1

--5.3.2 并发控制-2

-5.4 安全管理

--5.4.1 安全管理-1

--5.4.2 安全管理-2

-5.5 数据库备份与恢复

--5.5 数据库备份与恢复

-5.6 PostgreSQL数据库管理项目实践

--5.6 PostgreSQL数据库管理项目实践

-第5章 数据库管理--本章单元测试

-第5章 数据库管理--本章重点问题讨论

第6章 数据库应用编程

-6.1 数据库连接技术

--6.1.1 数据库连接技术-1

--6.1.2 数据库连接技术-2

-6.2 数据库存储过程

--6.2 数据库存储过程

-6.3 数据库触发器

--6.3 数据库触发器

-6.4 数据库游标

--6.4 数据库游标

-6.5 嵌入式SQL编程

--6.5 嵌入式SQL编程

-第6章 数据库应用编程--本章单元测试

-第6章 数据库应用编程--重点问题讨论

第7章 NoSQL数据库技术

-7.1 NoSQL数据库概述

--7.1.1 NoSQL数据库概述-1

--7.1.2 NoSQL数据库概述-2

--7.1.3 NoSQL数据库概述-3

-7.2 列存储数据库

--7.2.1列存储数据库-1

--7.2.2列存储数据库-2

-7.3 键值对数据库

--7.3.1 键值对数据库-1

--7.3.2 键值对数据库-2

--7.3.3 键值对数据库-3

-7.4 文档型数据库

--7.4.1文档型数据库-1

--7.4.2文档型数据库-2

--7.4.3文档型数据库-3

-7.5 图形数据库

--7.5.1图形数据库-1

--7.5.2图形数据库-2

--7.5.3 图形数据库-3

-7.6 HBase数据库项目实践

--7.6 HBase数据库项目实践

-第7章 NoSQL数据库技术--本章单元测试

-第7章 NoSQL数据库技术--本章重点问题讨论

期末考试

-期末测试--期末测试

7.3.1 键值对数据库-1笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。