数据库的初体验

Posted 还行少年

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库的初体验相关的知识,希望对你有一定的参考价值。

一.数据库的基本概念

1 数据(Data)

  • 描述事物的符号记录
  • 包括数字,文字,图形,图像,声音,档案记录等
  • 以“记录”形式按统一的格式进行存储

2 表

  • 将不同的记录组织在一起
  • 用来存储具体数据

3 数据库

  • 表的集合,是存储数据的仓库
  • 以一定的组织方式存储的相互有关的数据集合

4 数据库管理系统(DBMS)

  • 是实现对数据库资源有效组织、管理和存取的系统软件

5 数据库系统

  • 是一个人机系统,由硬件、OS(操作系统)、数据库、DBMS、应用软件和数据库用户组成
  • 用户可以通过DBMS或应用程序操作数据库

二、主流的数据库介绍

1 关系型数据库

  • 关系数据库系统是基于关系模型的数据库系统
  • 关系模型的数据结构使用简单易懂的二维数据表
  • 关系模型可用简单的“实体-关系”(E-R)图来表示
  • E-R图中包含了实体(数据对象)、关系和属性三个要素

1.1 实体-关系

  • 实体
    也称为实例,对应现实世界中可区别于其他对象的“事件”或“事物“”
  • 属性
    实体所具有的某一特性,一个实体可以具有多个属性
  • 关系
    实体集之间的对应关系称为联系,也称为关系
  • 所有实体及实体之间的联系的集合构成一个关系数据库

1.2 关系数据库的存储结构

  • 关系数据库的存储结构是二维表格
  • 二维表
    每一行称为一条记录,用来描述一个对象的信息
    每一列称为一个字段,用来描述对象的一个属性

1.3 常用关系数据库

  • Oracle
    甲骨文公司产品,面向所有主流平台,安全、完善,操作复杂
  • MySQl
    甲骨文公司收购,免费开源、相比较Oracle体积小
  • DB2
    IBM公司产品,面向所有主流平台,大型、安全、完善

2 非关系数据库

  • 非关系数据库也被称作NoSQL (Not Only SQL)
  • 存储数据不以关系模型为依据,不需要固定的表格式

2.1 非关系型数据库的优点

  • 数据库可高并发读写
  • 对海量数据高效率存储和访问
  • 数据库具有高扩展性与高可用性

2.2 常用的非关系数据库

  • Redis
    开源、内存存储、高速缓存和消息队列代理
  • MongoDB
    基于分布式文件存储的数据库

3 关系型数据库和非关系型数据库的区别

  • 成本
    Nosql数据库(非关系型数据库)简单易部署,基本都是开源软件,不需要像使用Oracle那样花费大量成本购买使用,相比关系型数据库价格便宜
  • 查询速度
    Nosql数据库将数据存储于缓存之中,而且不需要经过SQL层的解析,关系型数据库将数据存储在硬盘中,自然查询速度远不及Nosql数据库
  • 存储数据的格式
    Nosql的存储格式是key,value形式、文档形式、图片形式等等,所以可以存储基础类型以及对象或者是集合等各种格式,而数据库则只支持基础类型
  • 扩展性
    关系型数据库有类似 join 这样的多表查询机制的限制导致扩展很艰难。Nosql基于键值对,数据之间没有耦合性,所以非常容易水平扩展
  • 持久存储
    Nosql不适用于持久存储,海量数据的持久存储,还是需要关系型数据库
  • 数据一致性
    非关系型数据库一般强调的是数据最终一致性,不像关系型数据库一样强调数据的强一致性,从非关系型数据库中读到的有可能还是处于一个中间态的数据
  • 事务处理
    Nosql不提供对事务的处理

小结

可以发现现在主流的还是关系型数据库,非关系型数据库中 Redis 和 MongoDB 最受欢迎
传统数据库存在着先天性的弊端,但是 NoSQL 数据库又无法将其替代, NoSQL 只能作为传统数据的补充而不能将其替代,所以规避传统数据库的缺点是目前大数据时代必须要解决的问题

以上是关于数据库的初体验的主要内容,如果未能解决你的问题,请参考以下文章

JMS服务器ActiveMQ的初体验并持久化消息到MySQL数据库中

IDEA+SpringBoot MyBatis Dynamic SQL的初体验(二)

六十四Kylin的初体验

springboot+支付宝完成秒杀项目的初体验

python的初体验

SpringMVC的初体验-3