数据持久化流程

61 阅读2分钟

以下是数据持久化的流程:

数据产生后,需经过校验数据的合法性、在内存中用高效数据结构组织数据、以寿命和性能友好的方式写入存储介质等步骤,实现数据的持久化.

存储系统

  • 定义:提供读写、控制类接口,能安全有效的把数据持久化的软件.
  • 特点:性能敏感;软件架构易受硬件的影响;代码既简单又复杂,如IO读写逻辑简单,但错误处理复杂.
  • 存储器层级结构:呈金字塔结构,塔尖存储设备容量小但性能高,底层则相反,中间层是兼具两者特点的存储器.
  • 数据从应用到存储介质的方法:缓存贯穿存储体系,可提高性能;应尽量减少拷贝;硬件设备多样,需抽象统一接入层.
  • RAID技术:包括RAID 0,多块磁盘简单组合,数据条带化存储提高磁盘带宽但无容错设计;RAID 1,一块磁盘对应一块镜像盘,容错能力强但空间利用率仅50%;RAID 0+1,结合RAID 0和RAID 1的优点,容错强且写入带宽好.

数据库

  • 关系型数据库:是存储系统且具其他的能力,如结构化数据友好,支持事务的ACID特性,有复杂查询语言,如MySQL、PostgreSQL.
  • 非关系型数据库:也是存储系统,不要求严格结构化,半结构化数据友好,可能支持事务和复杂查询语言,如MongoDB、Redis、Elasticsearch.

数据安全

  • 数据加密:对数据进行加密处理,使数据在存储和传输过程中以密文形式存在,防止数据被窃取或篡改后能被轻易解读,如使用对称加密算法或非对称加密算法。
  • 访问控制:通过设置严格的访问权限,限制对数据的访问,确保只有授权用户才能进行相应操作,如基于角色的访问控制,为不同角色分配不同权限。
  • 备份与恢复:定期备份数据,在数据丢失或损坏时,可利用备份恢复数据,保障数据的可用性和完整性,如全量备份和增量备份相结合如全量备份和增量备份相结合。
  • 数据审计:对数据的访问和操作进行记录和审计,便于追踪数据的使用情况,及时发现异常操作和安全隐患,如记录用户的登录时间、操作内容等。