数据库与存储基本知识 | 青训营笔记

2023年 8月 22日 37.6k 0

1、数据的产生与流动

image.png 用户再APP或者网页上注册数据之后,数据便会发送到后端服务器中,对于一些需要记录存储的数据如用户ID等,会被存储再数据库系统中。 在进行数据的持久化操作中,会进行:

  • 检验数据的合法性;
  • 修改内存;
  • 写入存储介质;

在数据写入存储介质的时候需要注意的是缓存和拷贝的流程,缓存有的时候会提高数据存储的过程;拷贝的过程一般会使用到CPU,很昂贵,所以有的时候会寻求绕过CPU拷贝的方式,如DMA技术和零拷贝技术来提高效率。

2 存储系统与数据库

2.1 存储系统与RAID技术

存储系统就是一个软件,它可以将数据有效安全地持久化,并且给用户提供了读写、控制等接口。

2.2 数据库

  • 关系:任意元素组成的若干有序对反映事物间的关系;
  • 关系型数据库:关系数据库是存储系统,但是在存储之外,又有其他能力包括适合处理结构化数据,支持事务,支持复杂查询语言等;
  • 非关系型数据库:非关系数据库也是存储系统,但是一般不要求严格的结构化,其可能支持事务和复杂查询语言,这要看具体的非关系型数据库产品

3、主流数据库产品

  • 单机存储:单个计算机节点上的存储软件系统,一般不涉及网络交互,如Linux本地文件系统
  • 分布式存储:分布式存储是在单机存储的基础上实现了分布式协议,涉及大量的网络交互,如HDFS
  • 单机关系型数据库:单个计算机节点上的数据库系统,采用关系型存储,如Oracle、MySQL等
  • 单机非关系型数据库:典型的有MongoDB、Redis、Elasticsearch;
  • 分布式数据库:由于容量、弹性和性价比等问题,在单机存储的基础上发展出了分布式存储技术

对于容量的问题,可以通过存储池的设计来突破单机的存储上限的问题,存储节点池化,动态地进行容量的扩缩;同时也可以通过存储池来解决弹性和性价比的问题。

存储未来发展的方向:

  • Bypass OS kernal:也就是绕开系统调用的消耗,直接在用户态进行访问磁盘,将中断改为轮询,减少用户态和内核态的切换;
  • 将人工智能技术和存储有机地结合起来;
  • 硬件的发展;

相关文章

服务器端口转发,带你了解服务器端口转发
服务器开放端口,服务器开放端口的步骤
产品推荐:7月受欢迎AI容器镜像来了,有Qwen系列大模型镜像
如何使用 WinGet 下载 Microsoft Store 应用
百度搜索:蓝易云 – 熟悉ubuntu apt-get命令详解
百度搜索:蓝易云 – 域名解析成功但ping不通解决方案

发布评论