存储 & 数据库 | 青训营后端

129 阅读7分钟

数据生命周期

数据的生命周期描述了数据从产生到最终持久化的过程,涵盖了数据的创建、传输、处理、存储和最终的销毁或归档等阶段。数据的生命周期如下几个部分:

  • 数据产生(Generation): 数据的生命周期从其产生的时刻开始。数据可以由传感器、用户输入、其他系统的输出等产生。例如,一个用户提交的在线订单。
  • 数据传输(Transmission): 产生的数据可能需要通过网络或其他通信渠道传输到处理或存储的位置。这可能涉及多个中间环节,如HTTP请求、消息队列、Socket通信等。
  • 数据处理(Processing): 数据可能会经过一系列处理步骤,包括验证、清洗、转换、计算等,以确保数据的完整性和准确性。这些处理步骤可能在实时或批处理环境中进行。
  • 数据存储(Storage): 处理后的数据通常需要存储在持久化存储介质中,如数据库、文件系统、云存储等。数据存储的选择取决于数据的类型、访问模式和需求。
  • 数据访问与分析(Access and Analysis): 存储的数据可以随时被查询、检索和分析。这些分析可能用于洞察数据趋势、做出决策,或用于生成报告。
  • 数据保留与归档(Retention and Archiving): 根据法律法规和业务需求,某些数据可能需要在一定时间内保留。过了保留期限的数据可能会被归档或销毁。
  • 数据销毁(Data Destruction): 一旦数据不再需要,需要按照安全准则进行销毁,以防止敏感信息泄露。数据销毁可以是物理销毁,也可以是数据加密或覆盖。

数据的生命周期不同于不同类型的数据和业务需求,可能会有不同的阶段和流程。合理管理数据的生命周期可以提高数据的价值,确保数据的安全性,以及满足法规和合规要求。

存储和数据库简介

存储系统和数据库都是计算机系统中用于管理数据的重要组件,但它们的角色、功能和特点有所不同。

存储系统: 存储系统是一个广泛的概念,指的是用于持久化存储数据的一组硬件和软件设施。存储系统包括硬件存储介质(如磁盘、固态硬盘、磁带等)以及用于管理、组织和访问这些存储介质上的数据的软件层。存储系统负责存储数据,提供持久性和可靠性,以及通过不同层次的抽象和接口来访问数据。

数据库: 数据库是一个特定类型的存储系统,用于组织、存储、检索和管理数据,尤其是结构化数据。数据库管理系统(DBMS)是数据库的软件组件,负责处理数据的结构、查询、事务管理、权限控制等任务。数据库可以分为关系型数据库(如MySQL、Oracle、SQL Server)和非关系型数据库(如MongoDB、Redis、Cassandra)等,不同类型的数据库适用于不同的数据存储和访问需求。

异同点:

  • 角色和功能: 存储系统主要关注数据的持久性和存储管理,提供基本的数据存储和访问功能。数据库不仅提供数据存储和访问,还提供了数据的结构化、查询、事务、安全性等高级功能,使数据更有组织和意义。
  • 数据类型: 存储系统可以存储各种类型的数据,包括结构化数据、非结构化数据和半结构化数据。数据库主要用于管理结构化数据,但现代数据库也能存储其他类型的数据。
  • 数据组织: 存储系统通常以文件、块或对象的形式存储数据,可以是任意格式的。数据库则以表格(关系型)或文档、键值对(非关系型)等结构化格式存储数据。
  • 查询和分析: 数据库具备强大的查询和分析能力,允许用户根据各种条件检索和分析数据。存储系统的查询和分析能力相对较弱,通常需要额外的工具和应用来实现。
  • 事务管理: 数据库支持事务,可以确保数据的一致性和完整性。存储系统通常不具备事务管理的能力。
  • 接口和抽象: 存储系统提供基本的读写接口,而数据库提供更高级别的查询、事务和安全接口,以及用于数据建模和管理的抽象。
  • 应用场景: 存储系统适用于存储各种类型的数据,包括文件、日志、备份等。数据库适用于需要对数据进行结构化管理、查询和分析的场景,如企业应用、电子商务等。

总结:存储系统是数据库的基础,而数据库提供了更高级别的数据管理和访问能力,适用于需要复杂数据操作和管理的场景。

主流的存储和数据库产品

  • 存储产品

    • 单机存储

      单机存储是指数据存储在单个计算机系统(通常指一台物理计算机或虚拟机)的存储介质上,而不涉及分布式系统、集群或网络连接。在单机存储模式下,所有的数据存储、访问、管理和处理都在同一台计算机上完成,没有涉及多台计算机之间的数据共享和交互。

    • 分布式存储

      分布式存储是一种将数据分散存储在多台计算机系统上的存储模式,它允许数据在不同的物理节点之间进行分布和管理。分布式存储系统的设计目标是为了提高数据的可靠性、可扩展性、性能和容错能力,以满足现代大规模数据处理和存储需求。

      分布式存储系统的特点:数据冗余性和容错性、可扩展性、高性能、数据一致性、多节点协调等等。

      常见的分布式文件系统HDFS,学习过程中也对IPFS分布式存储有一定的了解和学习,具有去中心化等特点。

  • 数据库产品

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

      • 关系型数据库采用表格(表)的方式来组织和存储数据,每个表包含多个行和列,每行代表一条记录,每列代表一种数据类型。关系型数据库使用结构化查询语言(SQL)来进行数据操作和查询。我们常学习使用的MySQL等数据库。
      • 非关系型数据库采用各种不同的数据模型,不限于表格结构,以适应不同类型的数据。非关系型数据库强调灵活性、性能和可伸缩性,如Redis。

      常用的数据库还有MongoDB等。

    • 数据库产品的发展

      数据库产品将继续朝着更高效、更安全、更灵活、更适应云环境和大数据的方向发展。更加注重分布式和水平扩展、安全性和隐私保护、性能优化等方面。

学习感悟

随着社会现实的需要和网络技术的飞速发展,对存储和数据库的要求越来越高。近年来,边缘计算、区块链、人工智能大模型等新技术的崛起,对其有了更高的要求。对于主流的数据库系统如MySQL和Redis,也有比较深的学习。对分布式去中心化的IPFS存储也有一定的了解,期待新技术、与时俱进你!