当前课程知识点:数据库概论 >  第十章 其他数据库技术概述 >  10.1 数据库新技术概述 >  Video

返回《数据库概论》慕课在线视频课程列表

Video在线视频

Video

返回《数据库概论》慕课在线视频列表

Video课程教案、知识点、字幕

各位同学

大家好

我是来自

云南大学软件学院的教师何婧

在前面的课程中

我们已经学习了数据库的基础知识

相关理论

以及数据库设计

开发

管理的主要方法

然而

我们正处在一个

计算机技术飞速发展的时代

数据库领域

也涌现出了许多新的理论和方法

在本节课中

我将为大家简要介绍一下

数据库技术的新进展

数据库技术产生于

20世纪60年代中期

至今仅仅50多年的历史

但是却已经造就了三位图灵奖得主

发展成了以数据建模

和数据库管理系统核心技术为主

内容丰富的一门学科

带动了一个巨大的软件产业

进入21世纪以来

随着硬件技术的飞速发展

数据需求和应用需求的巨大变化

数据库技术

遇到了前所未有的挑战

也迎来了新的发展机遇

当今的数据库系统是一个大家族

数据模型丰富多样

新技术内容层出不穷

应用领域广泛深入

在此

我们重点学习大数据的基本管理技术

什么是大数据

大数据具有哪些特征呢

在以往的文献中

出现过超大规模数据

海量数据这样的名词

大数据这个词是在2008年

《Science》上发表的一篇文章中

正式被提出来的

并在之后得到了广泛应用

这些名词共同的特点

都是说随着人类社会的发展

需要处理的数据规模在不断扩大

但是

大数据不仅仅是指数据规模大

它还具有其他一些特征

在现有的文献中

通常用若干个V来表示它

我们学习一下大数据

最基础的4V特性

首先是指数据量大

数据单位从常用的MB

GB

发展到了现在的TB

PB

乃至ZB

根据知名市场研究机构IDC 的预测

到2020 年

整个世界的数据总量将会增长44倍

达到35.2ZB(1ZB=10 亿TB)

这将是一个非常巨量的数据

第二个特征是指数据的多样性

随着互联网

移动互联网

物联网

车联网等等各种新技术的发展

数据的来源更加丰富

大数据的数据结构也更加具有多样性

订单

日志

博客

音频

视频等都是数据

这些结构化数据

半结构数据

非结构化数据不断累积

在现代的大数据管理系统中

需要考虑不同类型数据的存储

和管理技术

第三个特征是快速化

速度是大数据区分于

传统数据的重要特征

从数据的生成到消耗

时间窗口非常小

在海量数据面前

需要实时分析获取到的信息

处理数据的效率就是组织的生命

第四个特征是大数据的价值密度低

挖掘大数据的价值类似沙里淘金

比如用户评价分析

几百万的评价记录

真正有借鉴意义的就是几句

比如视频监控

每天产生24小时的视频数据

真正有价值的就是几秒钟

正因为大数据具有了

与以往数据不同的特征

所以

近年来

数据库系统不再是传统的

关系型数据库系统一家独大

NoSQL数据库

NewSQL数据库不断涌现

数据库技术的发展

呈现出一种百花齐放的发展态势

下面

我们来看一下

NoSQL数据库的几种典型结构

由于关系模型

不能够灵活的存储结构多样的数据

具有复杂关系的数据表不易于扩展

并且关系模型对并行访问的支持能力不足

在这样的情况下

NoSQL技术异军突起

蓬勃发展

根据数据模型的不同

NoSQL数据库可以划分为四类

键值数据库

列存储数据库

文档数据库

和图数据库

具体分析如下

第一是键值数据库

键值数据库中的数据组织成

键值对的模型

它的核心思想是采用分布式哈希表

维护键值到具体数据的映射关系

数据本身是无结构的

可以当做一个字符串来进行处理

当用户查询数据

根据键的值可以快速找到相应的数据的值

目前

典型的键值数据库包括

亚马逊的Dynamo

Berkeley DB[77]等

键值数据库模型结构简单

数据处理高效

能够进行大规模的横向扩展

但是

键值数据库主要支持

针对单键值的高效查询

针对其他非键属性的查询

则只能进行全数据集扫描

第二种是列存储数据库

列存储数据库的基本数据模型

仍然是键值对

但是

该类数据库中的数据值

组织成了列族的形式

一个列族中包含多个列

每个列带有一个时间戳

使得列族能够支持嵌套包含映射

即列族可以包含多个子列族

子列族可以包含多个列

同一个列根据时间戳

可以映射到多个行

谷歌公司的BigTable

开源的HBase等都是基于

列存储的NoSQL数据库

那么我们具体来看一下

HBase数据库的实现

HBase是BigTable的开源实现

采用了基于Colunm Family的数据模型

表中有两个列族

分别是cf1和cf2

列族cf1中只有一个列

就是column1

列族cf2中包含两个具体的列

column2和column3

根据不同的时间戳表示

Key值为

row2的列名为

column1,column3的数据有三个

在动态的云环境中

这样的设计能够维护数据的历史信息

便于数据的回溯

列存储数据库针对Key值的查询性能很高

但是

由于该类数据库的物理存储

也是按列族连续存储的

这使得针对列的查询效率高

针对行的查询效率则受到了较大影响

第三种NoSQL数据库是文档数据库

文档数据库的基本数据模型

同样是Key-value模型

但是

在文档数据库中

键值Key指向的是一个文档

文档以半结构化的格式进行存储

例如JSON格式

通过Key访问到的是一个数据对象

使得编程人员

不必考虑复杂的存储结构

采用面向对象的程序语言

就能够方便的读取数据

典型的文档数据库包括MongoDB

CouchDB[78]等

那么第四种NoSQL数据库是图形数据库

与行、列式存储的数据库系统不同

图形数据库直接采用

图结构来存储和描述数据

因此

图形数据库在存储模型

物理设计

查询处理

事务管理等方面

都明显区别于其他的数据库系统

图形数据库主要应用于社交网络

药物分子分析等领域

Neo4J[80]

Hyper Graph DB[83]等

都是目前受到广泛关注的图形数据库系统

总之

NoSQL数据库没有统一的

严格的数据模型定义

在Key-value模型的基础上

不同类型的NoSQL数据库

提出的数据模型各异

但是

它们都保证了高度的可扩展性

NoSQL数据库也存在自己的不足之处

由于采用非关系数据模型

因此

它不具备高度结构化查询的特性

在复杂查询方面的效率不如关系数据库

而且也不支持事务的ACID性质

近几年

NewSQL数据库开始逐步升温

NewSQL是对各种新的可扩展

高性能数据库的简称

这类数据库不仅具有

NoSQL数据库对海量数据的存储管理能力

还保持了传统数据库支持ACID和SQL的特性

不同的NewSQL数据库

内部结构差异很大

但是

它们有两个共同的显著特点

一是都支持关系数据模型

二是都使用SQL作为其主要接口

目前典型的NewSQL数据库系统包括

Spanner

微软公司的SQL Azure

亚马逊公司的RDS等等

好了

同学们

《数据库概论》课程到这里就结束了

同学们下来一定要多加学习

因为

数据库技术在不断发展

当前

正是一个充满了挑战和机遇的时代

希望同学们在数据库领域不断探索

收获更多新的突破

数据库概论课程列表:

导论

-数据库概述

--Video

-导论--数据库概述

第一章 数据库基础

-1.1 数据库基础

--Video

-第一章 数据库基础--1.1 数据库基础

第二章 关系运算

-2.1 CAP数据库

--CAP数据库

-第二章 关系运算--2.1 CAP数据库

-2.2 自然关系运算1

-- 自然关系运算1

-第二章 关系运算--2.2 自然关系运算1

-2.3 自然关系运算2

--自然关系运算2

-第二章 关系运算--2.3 自然关系运算2

第三章 结构化查询语言SQL

-3.1 SQL概述

-- SQL概述

-3.1 SQL概述--作业

-3.2 数据定义DDL

--数据定义DDL

-3.2 数据定义DDL--作业

-3.3 SQL数据更新DML

--SQL数据更新DML

-3.3 SQL数据更新DML--作业

-3.4 复杂SQL查询操作1

--复杂SQL查询操作1

-第三章 结构化查询语言SQL--3.4 复杂SQL查询操作1

-3.5 复杂SQL查询操作2

--复杂SQL查询操作2

-第三章 结构化查询语言SQL--3.5 复杂SQL查询操作2

第四章 数据库完整性、视图与安全性

-4.1 数据完整性

--4.1 数据完整性

-4.1 数据完整性--作业

-4.2 完整性约束

--完整性约束

-4.2 完整性约束--作业

-4.3 外键约束

--外键约束

-4.3 外键约束--作业

-4.4 触发器

--触发器

-4.4 触发器--作业

-4.5 视图

--视图

-4.5 视图--作业

-4.6 安全性

--安全性

-4.6 安全性--作业

第五章 索引

-5.1 索引

--Video

-5.2 B+树索引

--Video

第六章 规范化理论

-6.1 函数依赖

--Video

-6.2 Armstrong公理

--Video

-6.3 无损分解

--Video

-6.4 范式举例

--Video

-6.5 三种范式

--Video

-6.5 三种范式--作业

第七章 实体关系模型

-7.1-E-R模型概述

--E-R模型概述

-7.2 E-R模型详解

--Video

-7.3 E-R模型的拓展

--Video

-7.4 E-R模型实例分析

--Video

第八章 事务处理

-8.1 事务的ACID性质介绍

--ACID介绍

-8.1 事务的ACID性质介绍--作业

-8.2 事务经历

--事务经历

-8.2 事务经历--作业

-8.3 可串行化调度和前趋图

--可串行化调度和前趋图

-8.3 可串行化调度和前趋图--作业

-8.4 两阶段封锁

--两段锁协议

-8.4 两阶段封锁--作业

-8.5 隔离级别

--隔离级别

-8.5 隔离级别--作业

-8.6 事务恢复

--事务恢复

-8.6 事务恢复--作业

第九章 数据库应用与开发

-9.1 数据库使用介绍

--数据库使用介绍

-9.2 Java访问数据库

--Java访问数据库

-9.2 Java访问数据库--作业

第十章 其他数据库技术概述

-10.1 数据库新技术概述

--Video

Video笔记与讨论

也许你还感兴趣的课程:

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