第五篇笔记 存储与数据库 |青训营

45 阅读3分钟

在实际开发过程中,我们需要将大量的用户和产品信息加载到进程中,但是这些数据是存放在后台专门的数据库中的,这些数据的存储格式和特点决定了我们的程序进行调用和连接时需要做出相应的调节.

数据的来源是多样的,可能是用户在前端界面输入的数字和字母,也可能是业务产生的数据,还可能是外界导入的产品数据,总之类型来源各不相同.老师在课程中借助小明这个案例介绍到,一条数据的持久化存储过程如下:首先是检验数据的合法性,接着是使用合适的数据结构修改内存,最后是性能或寿命友好的方式写入介质中.

首先,什么是存储系统?常见的定义认为提供了读写,控制的接口,能够安全有效地将数据持久化地软件就是存储系统.存储系统作为后端软件和功能实现地基础具有奠基作用,同时又跟硬件设施相关,性能很容易受到硬件影响.

在计算机组成原理这门课上,我们已经学过计算机存储相关的知识,计算机有内存,缓存,我们使用的一些外部存储设备例如硬盘也可以称为外存,而存储系统就是依赖这些存储相关硬件设计的软件,例如我们学习过的数据库,例如SQL server MYSQL等等.

数据库可以分为关系型数据库和非关系型数据库,我们学习和现在流行的都是关系型数据库.关系模型也就是任意元素组成的有序对,可以直观的借助二维表格表示.关系型数据库具有结构化数据友好,事务的一致性,支持复杂查询语言等优点.

事务具有四大特性,这道题还是这次青训营的考试题目之一: ACID A:原子性.所有此事务的操作要么全部成功,要么全部失败进行回滚,成功的操作必须应用到数据库中,失败的事务不会对数据库造成任何影响

C:一致性,数据库操作必须从一个一致性状态切换到另一个一致性状态,事务执行前后处于同一状态

I:隔离性.多个用户并发访问数据库时,各个事务之间要彼此隔离独立,避免彼此干扰,造成数据错误或操作问题

D:持久性,一个事务被提交以后改变是永久的,对数据库中的数据改动也是永久的,不会因为其他故障而改变

除了常见的关系型数据库,还有非关系型数据库,例如分布式数据库

单个网络节点上的存储系统可以称为单机数据库,事务可以在单机内执行.不过单机数据库也可以分为关系型和非关系型,最后老师还介绍了数据库领域的新技术和新趋势

数据库是计算机知识学习中非常重要的一环,我之前上课的时候就在想目前常用的关系型数据库,虽然有诸多优点,但是随着大数据时代的来临,同时高并发访问的需求也在增大,关系型数据库如何应对这样的冲击,而且关系型数据库难以横向扩展,会不会逐渐出现落后产品生态的问题.新兴技术的勃发,也意味着传统数据库领域即将迎来新的变革.