首页 > 数据库 >高斯数据库HCNA之数据库技术发展史

高斯数据库HCNA之数据库技术发展史

时间:2023-11-03 20:00:46浏览次数:41  
标签:关系 结构化 高斯 数据库 HCNA 数据库系统 数据 数据模型

二、数据库技术发展史

1、数据库技术产生与发展

数据库技术应数据管理任务的需要而产生
数据管理的发展
应用需求推动
软硬件的飞速发展为基础
三个阶段

2、数据库系统阶段发展

高斯数据库HCNA之数据库技术发展史_数据库

3、数据库管理三个阶段比较

高斯数据库HCNA之数据库技术发展史_数据模型_02

4、数据库系统优势

整体数据的结构化
  数据面向整个系统而不是单个应用,被多个应用共享
数据的共享性高,冗余度低且易扩充
数据独立性高
  物理独立性:应用程序与数据库中数据的物理存储是相互独立的
  逻辑独立性:应用程序与数据库的逻辑结构是相互独立的
统一管理和控制
  数据的安全性保护
  数据的完整性检查
  并发控制
  数据库恢复

高斯数据库HCNA之数据库技术发展史_数据库_03

5、数据库系统发展特点

数据库系统已经成为计算机信息系统和智能应用系统的核心技术之一和重要基础
数据库系统的发展特点
数据库的发展集中表现在数据模型的发展上
与其他计算机技术交叉结合
面向应用领域发展数据库新技术

高斯数据库HCNA之数据库技术发展史_数据_04

6、层次、网状、关系模型

高斯数据库HCNA之数据库技术发展史_数据模型_05

Codd博士继续发表多篇文章,阐述范式理论和衡量关系系统的12条标准,用数学理论奠定了关系模型的基础
关系模型是建立在集合代数基础上的
关系模型是一组关系组成的,每个关系的数据结构都是一张规范化的二维表,如胶片中的学生信息表为例
一个关系通常对应一张表
元组:表中的一行为一个元组
属性:表中的一列为一个属性
码:也称为键
域:一组相同数据类型的值的集合
关系模式:关系名(属性1,属性2,属性3,......属性n)
比如例子中的关系就是学生(学号,姓名,年龄,性别)

7、结构化查询语言

SQL语言
高级的非过程化编程语言,允许用户在高层数据结构上工作
不要求用户指定数据存放方法
不需要用户了解具体数据存放方式
底层结构完全不同的各种关系型数据库系统可以使用相同的SQL语言作为数据操作和管理的接口

高斯数据库HCNA之数据库技术发展史_数据_06

8、关系型数据库ACID特性

原子性(Atomicity)
事务是数据库的逻辑工作单位,事务中的操作,要么全做,要么全不做
一致性(Consistency)
事务的执行结果必须是使数据库从一个一致性状态转到另一个一致性状态
隔离性(Isolation)
数据库中一个事务的执行不能被其他事务干扰,即一个事务的内部操作及使用的数据对其他事务是隔离的,并发执行的各个事务不能相互干扰
持久性(Durability)
事务一旦提交,对数据库中数据的改变是永久的,提交后的操作或者故障不会对事务的操作结果产生任何影响

9、关系型数据库产品历史回顾

高斯数据库HCNA之数据库技术发展史_数据库_07

10、其他数据模型

面相对象数据模型(Object Oriented Data Model,OO模型)
  将语义数据模型和面向对象程序设计方法结合起来,用一系列面向对象核心概念构成模型基础
  由于面向对象数据库操作语言过于复杂,没有得到开发人员认可
XML数据模型
  随着互联网迅速发展,出现了大量的半结构化和非结构化数据源,XML成为网上交换数据的标准之一以及研究热点,相应的出现了半结构化数据的XML数据模型
  纯XML数据库基于XML节点数模型,可以支持XML数据管理,但是同样要解决传统关系型数据库所面临的各种问题
RDF数据模型
  互联网的信息没有统一表达方式,W3C提出资源描述框架(Resource Description Framework,RDF)来描述和注解互联网资源
  RDF是描述互联网资源的标记语言,结构为(主语,谓语,宾语)
  主要用于语义网、知识库的基础数据模型,是当前知识图谱技术的基石

11、数据管理技术的新挑战

高度可扩展性和可伸缩性
随着数据获取手段的自动化,多样化和智能化,导致数据量急剧增大

数据类型多样和异构处理能力
结构化数据到半结构化/非结构化数据
文本到图形图像,音频视频等多媒体数据
流数据、队列数据

数据处理时效性要求
传感、网络和通信技术发展对于数据快速流入和处理,实时性方面提出了更高要求

大数据时代来临
传统关系型数据库面临海量异构、形式复杂、高速增长、价值密度低的数据问题遇到全面挑战
NOSQL技术顺应大数据发展的需要,蓬勃发展

高斯数据库HCNA之数据库技术发展史_数据模型_08

12、NoSQL技术特点和类型

NoSQL(Not Only SQL)
非关系型的、分布式的、不保证满足ACID特性的一类数据管理系统

技术特点
对数据进行分区(partitioning),利用大量节点并行处理获得高性能,同时能够采用横向扩展方式(scale out)
降低ACID一致性约束,允许暂时不一致,接受最终一致性,遵循BASE(Basically Available,Softstate,Eventual Consistency)原则
各数据分区提供备份(一般是三份),对应节点故障,提高系统可用性

高斯数据库HCNA之数据库技术发展史_数据库_09

13、主要NoSQL数据库简介

NoSQL并不是为了取代RDBMS
优势显著,缺点也较为明显
与RDBMS一起构建完整的数据生态系统

高斯数据库HCNA之数据库技术发展史_数据_10

14、NewSQL浅谈

NewSQL浅谈指追求NoSQL的可扩展性同时能够支持关系模型(包括ACID特性)的关系型数据库系统,主要面向OLTP场景
能够支持SQL作为主要的使用语言
NewSQL的分类
采用了新架构重新构建产品
  shared-nothing,多节点并发控制,分布式处理,利用复制实现容错,流式控制等技术架构
  Google Spanner,H-Store,VoltDB等
采用Transparent Sharding中间件技术
  数据分片(sharding)的过程对于用户来说是透明的(transparent),用户的应用程序不需要做出变化
  Oracle Mysql Proxy,MariaDB MaxSacle等
DAAS(Database-as-a-Service,数据库即服务)
  云服务商提供的数据库产品,云服务商提供具备NewSQL特性的数据库产品
  Amazion Aurora,阿里云的Oceanbase,腾讯云的CynosDB

标签:关系,结构化,高斯,数据库,HCNA,数据库系统,数据,数据模型
From: https://blog.51cto.com/u_13236892/8174092

相关文章

  • 基础课-数据库5
    9.多表连接查询关系型数据库使用多个有关联关系表春初数据,解决数据冗余存储关系型数据库在查询时,可能需要一次查询多个表的数据一次查询多个表数据,称为多表连接查询多表连接实际上是多个表的的数据连接,连接好之后可以理解为一个新的虚拟表多表连接时,默认叫笛卡尔积连接形式,会......
  • 无涯教程-MongoDB - 删除数据库
    在本章中,无涯教程将看到如何使用MongoDB命令删除数据库。MongoDBdb.dropDatabase()命令用于删除现有数据库。DropDatabase-语法dropDatabase()命令的基本语法如下-db.dropDatabase()这将删除所选的数据库。如果您尚未选择任何数据库,则它将删除默认的"test"数据库。Dr......
  • 无涯教程-MongoDB - 创建数据库
    在本章中,无涯教程将看到如何在MongoDB中创建数据库。MongoDB使用DATABASE_NAME用于创建数据库,该命令将创建一个新数据库(如果不存在),否则将返回现有数据库。CreateDatabase-语法useDATABASE语句的基本语法如下-useDATABASE_NAMECreateDatabase-示例如果您要使......
  • Go语言gin框架入门到精通,涵盖文件服务器、中间件、安全认证、数据库
    Go语言gin框架入门到精通,涵盖文件服务器、中间件、安全认证、数据库 Gin官方文档:GinWebFramework(gin-gonic.com)仓库地址:gin-gonic/gin:GinisaHTTPwebframeworkwritteninGo(Golang)官方示例:gin-gonic/examples:Arepositorytohostexamplesandtutoria......
  • 记一次生产数据库连接超时问题排查
    背景SpringBoot2.0.8+ Hikari+ Oracle 历史项目,很久没维护了,生产上正常运行两年有余,双活架构,突然有一天其中一台后端服务器数据库连接池报错:SQLError:0,SQLState:08006SQLError:17002,SQLState:08006JDBCConnectionException:UnabletoacquireJDBCConnection初步排查......
  • SQLite数据库实现数据增删改查
    当前文章介绍的设计的主要功能是利用SQLite数据库实现宠物投喂器上传数据的存储,并且支持数据的增删改查操作。其中,宠物投喂器上传的数据包括投喂间隔时间、水温、剩余重量等参数。实现功能:创建SQLite数据库表,用于存储宠物投喂器上传的数据。实现对数据库表中数据的插入操作,即将......
  • 在 Oracle 数据库中,哪些操作会导致索引失效?
    索引失效的七字口诀:模型数空运最快,字面意思就是运送一个模型,要用飞机空运,不要用陆运和海运,数空运最快。口诀中的每一个字都代表一种索引失效的类型。我逐个讲解一下。1.模:代表模糊查询。like的模糊查询以%开头,索引失效。2.型:代表数据类型。类型错误,如字段类型为varchar,wher......
  • 【Mquant】4:量化投研之配置本地数据库
    量化投研配置本地数据库是量化投资领域中非常重要的一环。通过搭建本地数据库,可以方便地存储和管理股票市场的日频数据,为后续的因子计算和策略研究提供支持。1.数据库搭建首先我们抛出一个问题:真的需要数据库吗?前段时间跑了一个回测代码(这里用的是mysql):用海龟策略跑2011年到......
  • PostgreSQL技术大讲堂 - 第32讲:数据库参数调整
     PostgreSQL从小白到专家,是从入门逐渐能力提升的一个系列教程,内容包括对PG基础的认知、包括安装使用、包括角色权限、包括维护管理、、等内容,希望对热爱PG、学习PG的同学们有帮助,欢迎持续关注CUUGPG技术大讲堂。 第32讲:数据库参数调整 第32讲:11月04日(周六)19:30-20:30,......
  • MySQL 数据库 cpu 飙升的话,要怎么处理?
    排查过程:(1)使用top命令观察,确定是mysqld导致还是其他原因。(2)如果是mysqld导致的,showprocesslist,查看session情况,确定是不是有消耗资源的sql在运行。(3)找出消耗高的sql,看看执行计划是否准确,索引是否缺失,数据量是否太大。处理:(1)kill掉这些线程(同时观察cpu使用率是......