首页 > 数据库 >数据库简介

数据库简介

时间:2022-10-19 12:03:24浏览次数:50  
标签:关系 IBM 简介 数据库 MySQL SQL Oracle


数据库简介

概念

  • 数据库:按照数据结构来组织、存储、管理数据的仓库。

诞生
计算机的发明是为了做科学计算的,而科学计算需要大量的数据输入和输出。
早期,可以使用打孔卡片的孔、灯泡的亮灭来表示数据输入、输出。

数据库简介_数据库简介

  • 1940年,数据可以存储在磁带上,顺序的读取、写入磁带。
  • 1956年IBM发明了磁盘驱动器这个革命性产品,支持随机访问。
  • 数据库简介_数据库_02

  • 随着信息化时代的到来,有了硬件存储技术的发展,有大量的数据需要存储和管理。

数据库DBMS发展

  • 萌芽期:文件管理
  • 第一代:层次数据库、网状数据库
  • 第二代:SQL、关系型数据库
  • 第三代:面向对象的DBMS(OODBMS),对象关系的DBMS(ORDBMS)

文件系统管理

  • 磁盘上一个个文件,数据鼓励,数据冗余
  • 格式不统一,很难统一管理
  • 无法高效查询,无法灵活查询

层次数据库

以树型结构表示实体及其之间的联系。关系只支持一对多。

代表数据库IBM IMS。

网状数据库

通用电气最早在1964年开发出网状数据库IDS,只能运行在GE自家的主机上。

数据库简介_数据_03

  • 结点描述数据,结点的联系就是数据的关系。
  • 能够直接描述客观世界,可以表示实体间多种复杂关系,而这是层次数据模型无法做到的。比如,一个结点可以有 多个父结点,结点之间支持可以多对多关联。

关系数据库

  • 使用行、列组成的二维表来组织数据和关系,表中行(记录)即可以描述数据实体,也可以描述实体间关系。 关系模型比网状模型、层次模型更简单,不需要关系数存储的物理细节,专心于数据的逻辑构建,而且关系模型有 论文的严格的数学理论基础支撑。
  • 数据库简介_数据库简介_04

  • 1970年6月,IBM的研究员E.F.Codd发表了名为“A Relational Model of Data for Large Shared Data Banks”的论 文,提出了关系模型的概念,奠定了关系模型的理论基础。
  • 1976年,IBM实验室System R项目,通过实现数据结构和操作来证明关系模型实用性,并直接产生了结构化查询语言SQL。1987年,SQL被ISO组织标准化。

关系模型,有严格的数学基础,抽象级别较高,简单清晰,便于理解和使用。
经过几十年的发展,关系数据库百花齐放,技术日臻成熟和完善。
基于关系模型构建的数据库系统称为RDBMS(Relational DataBase System)。 IBM DB2、Oracle的Oracle和Mysql、微软的MS SQL。以前的Infomix、Sybase等。

Oracle的发展

拉里·埃里森(Larry Ellison)仔细阅读了IBM的关系数据库的论文,敏锐意识到在这个研究基础上可以开发商用软件 系统。他们几个创始人决定开发通用商用数据库系统Oracle,这个名字来源于他们曾给中央情报局做过的项目名。

  • 1979年发布了ORACLE 2.0版本(实际上是1.0)。1983年,Oracle v3。1984年,Oracle v4。1985年,Oracle v5。1988年,Oracle v6引入了行级锁等新技术,然而这是个不稳定的版本。直到1992年的时候,Oracle7才逐渐 稳定下来,并取得巨大成功。2001年的9i版本被广泛应用。
  • 2009年4月20日,甲骨文公司宣布将以每股9.50美元,总计74亿美金收购SUN(计算机系统)公司。2010年1月成 功收购。
  • 2013年,甲骨文超过IBM,成为继微软之后的全球第二大软件公司。

Mysql的发展

  • 1985年几个瑞典人为大型零售商的项目设计了一种利用索引顺序存取数据的软件,这就是MyISAM的前身。1996 年,MySQL 1.0发布,随后发布了3.11.1版本,并开始往其它平台移植。2000年MySQL采用GPL协议开源。 MySQL 4.0开始支持MyISAM、InnoDB引擎。2005年10月,MySQL 5.0成为里程碑版本。
  • 2008年1月被Sun公司收购。
  • 2009年1月,在Oracle收购MySQL之前,Monty Widenius担心收购,就从MySQL Server 5.5开始一条新的GPL分 支,起名MariaDB
  • MySQL的引擎是插件化的,可以支持很多种引擎:
  1. MyISASM,不支持事务,插入、查询速度快。
  2. InnoDB,支持事务,行级锁,MySQL 5.5起的默认引擎

去IOE

  • 它是阿里巴巴造出的概念。其本意是,在阿里巴巴的IT架构中,去掉IBM的小型机、Oracle数据库、EMC存储设 备,取而代之使用自己在开源软件基础上开发的系统。传统上,一个高端大气的数据中心,IBM小型机、Oracle数 据库、EMC存储设备,可以说缺一不可。而使用这些架构的企业,不但采购、维护成本极高,核心架构还掌握在他 人手中。
  • 对于阿里巴巴这样大规模的互联网应用,应该采用开源、开放的系统架构。这种思路并不是阿里巴巴的新发明,国 外的谷歌、Facebook、亚马逊等早已为之。只不过它们几乎一开始就有没有采用IT商业公司的架构,所以他们也 不用“去IOE”。
  • 去IOE,转而使用廉价的架构,稳定性一定下降,需要较高的运维水平解决。

NoSQL

  • NoSQL是对非SQL、非传统关系型数据库的统称。
  • NoSQL一词诞生于1998年,2009年这个词汇被再次提出指非关系型、分布式、不提供ACID的数据库设计模式。

随着互联网时代的到来,数据爆发式增长,数据库技术发展日新月异,要适应新的业务需求。
随着移动互联网、物联网的到来,大数据的技术中NoSQL也同样重要。

  • 数据库流行度排名 2017.12
  • 数据库简介_数据库_05

  • 数据库流行度排名 2018.6
  • 数据库简介_数据_06

  1. SQL关系型数据库
  • Oracle 目前性能最好的关系型数据库。给钱就给你提供服务。只认钱。
  • MySQL 目前被oracle收购,原来是sum公司。单sum公司被oracle收购了。给钱也能提供更好的服务。分为过个版本。
  • Microsoft SQL Server 微软的一款数据库,但没有多少服务器会使用这个数据库。
  • MariaDB 前身是Mysql,Mysql被收购后,另起炉灶,拉了个分支,重命名为MariaDB,开元。由Mysql作者维护。
  • SQLite 小巧的数据库。通常应用在Android平台。关系型数据库
  • DB2 桌面系数据库。
  • Microsoft Access
  1. NoSQL非关系型数据库
  • MongoDB 文档数据库Document store,更像json。字段自由。每一行的字段可以不和上一行的一样。
  • Redis 基于内存的数据库。key-value store。内部存储的就是kv对。(由于数据不落地(不落磁盘),所以效率比较高。),有持久化方案,实际是可以写入磁盘。(通常有集群)
  1. 数据仓库
  • Hive 支持SQL,是Hadoop生态圈里面的数据库,大数据领域的组件之一。写成的特殊的SQL语句,会转换成代码,将代码下发到各个节点。并行计算,统计。
  • HBase 列存数据库Wide column store,列可以不固定,每一行的列可以不一样。国内用的比较多。存储海量数据
  • Cassandra 列存数据库Wide column store,列可以不固定,每一行的列可以不一样。国外用的比较多。存储海量数据库。
  1. 搜索引擎数据库(Search engine)
  • Elasticsearch 倒排索引数据库,快速定位数据。分布式数据库。
  • Solr 单机版倒排索引数据库,可以快速检索。中小型搜索网站,一般用Solr就可以解决问题。


标签:关系,IBM,简介,数据库,MySQL,SQL,Oracle
From: https://blog.51cto.com/u_8406447/5769531

相关文章

  • 创建数据库和表
    想要创建数据库和v表,首先要有一个创建数据库的工具,有SQL,MySQL等等,我用的是SQLServer2019,各位可以参考一下,安装的话,可以参考这个教程进行安装https://blog.csdn.net/m0_67......
  • RedisGraph图形数据库多活设计方案
    目前CMDB使用RedisGraph存储各种关系映射数据,数据的重要性不言而喻,所以数据的防灾、高性能及高可用非常重要。目前现状RedisGraph是单节点运行,存在数据防灾、高可用、性能不......
  • 数据库连接池druid基本使用和druid工具类
    5.Druid:数据库连接池实现技术,由阿里巴巴提供的 1.步骤: 1.导入jar包druid-1.0.9.jar 2.定义配置文件: *是properties形式的 ......
  • 564 数据库连接池_druid_工具类测试 and 565 JDBCTemplate_介绍
    数据库连接池_druid_工具类测试/***Druid连接池工具类测试类*使用新的工具类*/publicclassJDBC_utils_Test{publicstaticvoidmain(String[]args){......
  • MySQL 视图创建(跨数据库)
    格式CREATEVIEW视图所在库库名.视图名AS(SELECT表所在库库名.表名.列名AS新列名...FROM表所在库库名.表名);注意:数据库必须是在同一台服务器上,两个数据......
  • 562数据库连接池_druid_基本使用 and563 数据库连接池_druid_工具类
    数据库连接池_druid_基本使用Druid:数据库连接池实现技术,由阿里巴巴捉供的步骤︰1.导入jar包druid-1.0.9.jar2.定义配访i文件:足properties形式的......
  • RuoYi-Vue切换达梦数据库(一)
    一、达梦数据库安装这里使用的达梦8开发版 ,安装过程没什么且包内有说明文档。要注意的点是创建数据库实例时,记得取消勾选字符串比较大小写敏感。二、达梦数据库用户设......
  • RuoYi-Vue切换达梦数据库(二)
    一、JDBC依赖代码部分适配 RuoYi-Vuev3.8.4前后端分离版1、修改admin模块下的pom.xml文件Maven仓库中存在,直接替换注意jdbc包的版本:Dm7JdbcDriver18中7是DM数据库的......
  • 数据库oracle
    14控制用户访问知识点:1)如何创建用户、修改密码;2)如何创建角色,把不同的权限分配给角色、用户;3)如何进行授权和回收权限(grant、revoke);14.1创建用户DBA使用createuse......
  • 02#嵌入式系统基础:MCU 简介
    单片机与微控制器这两个术语的语义是基本一致的。早期英文是Single-chipMicrocomputer,之后大多数称之为Micro-controller。现在又有新的词语MicrocontrollerUnit,也就......