数据库小白小彬同学

数据库概述

  数据库:数据库就是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来,用户可以对数据库中的数据进行增删改查。

数据库管理系统:数据库管理系统是指一种操作和管理数据库的大型软件,用于建立,使用和维护数据库,对数据库进行统一管理和控制,以保证数据库的安全性和完整性。用户通过数据库管理系统访问数据库中表内的数据。

常见的数据库管理系统:

  MySQL、Oracle、DB2、SqlServer、SyBase、SQLite。

MySQL:开源免费的数据库,小型的数据库已经被Oracle收购了。Oracle:收费的大型数据库。

关系型数据库和非关系型数据库:

  关系型数据库最典型的数据结构是表,由二维表及其之间的联系所组成的一个数据组织。优点:1.易于维护,都是使用表结构,格式一致2.使用方便,SQL语言通用,可用于复杂查询3.复杂操作,支持SQL,可用于一个表以及多个表之间非常复杂的查询。缺点:1.读写性能差,尤其是海量数据的高效率读写2.固定的表结构,灵活度稍欠3.高并发读写需求,硬盘I/O是个很大的瓶颈。非关系型数据库严格上不是一种数据库,应该是一种数据结构化存储方法的集合,可以是文档或者键值对等。优点:1.格式灵活,存储格式可以是key、value形式、文档形式、图片形式等等2.速度快,不仅可以使用硬盘,还可以使用随机存储器作为载体3.高扩展性4.成本低。缺点:学习和使用成本高,数据结构相对复杂。非关系型数据库的分类:文档型,key-value型,列式数据库,图形数据库。mysql是关系型数据库,主要用于存放持久化数据,将数据存储在硬盘中,redis是非关系型数据库,也是缓存数据库,即将数据存储在缓存中,用来存储使用频繁的数据。一般二者配合使用。

数据库与数据管理系统的关系:

  客户端通过TCP协议与数据库管理系统建立联系,管理系统又直接面向多个数据库,在数据库中真正存储数据的是表格(数据库表),不同的数据库又面向多个表格。管理系统来建库建表管理数据。

数据库表:

  数据库中以表为组织单位存储数据。表类似我们的Java类,每个字段都有对应的数据类型。用java和关系型数据对比

相关文章