认识与存储数据库

149 阅读2分钟

01 存储&数据库简介 |青训营

什么是存储系统

在Go语言中,一个提供了读写、控制类接口,能够安全有效地把数据持久化的软件,用于持久化存储和管理数据的软件或硬件系统,可以称为存储系统。

存储系统的特点

  1. 性能敏感、
  2. 容易受硬件影响、
  3. 代码既“简单”又“复杂”、
  4. 并发性、
  5. 跨平台支持

在实际开发中,存储系统的特点可能因具体的存储系统类型和实现而有所不同。在选择和使用存储系统时,应根据具体的业务需求和性能要求来评估和选择合适的存储系统。

存储系统的RAID技术

在Go语言中,RAID(冗余独立磁盘阵列)技术通常是由存储系统或数据库引擎提供的,而不是Go语言本身提供的。RAID技术通过将多个磁盘组合起来,以提高存储系统的性能、容错能力和可用性。

RAID 0

  • 多块磁盘简单组合
  • 数据条带化存储,提高磁盘带宽
  • 没有额外的容错设计

RAID 1

  • 一块磁盘对应一块额外镜像盘
  • 真实空间利用率仅50%
  • 容错能力强

RAID 0+1

  • 结合了RAID 0和RAID 1
  • 真实空间利用率仅50%
  • 容错能力强,写入带宽好

需要注意的是,RAID技术可以提供冗余和容错能力,但并不是万无一失的。在使用RAID技术时,仍然需要定期备份数据,并进行监控和维护,以确保数据的安全和可靠性。

数据库系统

分为关系型数据库,一个是非关系型数据库

数据库——关系型数据库特点

  1. 结构化数据友好
  2. 支持事务
  3. 支持复杂查询语言

数据库——非关系型数据库特点

  1. 半结构化数据友好
  2. 可能支持事务
  3. 可能支持复杂查询语言

总结

存储数据库是指用于存储和管理大量结构化或非结构化数据的软件系统。它提供了各种功能,如数据的读写、查询、索引、事务处理和数据备份等。存储数据库可以分为关系型数据库(如MySQL、PostgreSQL)和非关系型数据库(如MongoDB、Redis)等不同类型。 它的简洁性、并发性能和丰富的库支持使得使用Go语言开发存储数据库的应用程序变得更加高效和便捷。以上是我对数据库的理解。