首页 > 数据库 >【中国数据库前世今生】数据存储管理的起源与现代数据库发展启蒙

【中国数据库前世今生】数据存储管理的起源与现代数据库发展启蒙

时间:2024-08-20 13:16:11浏览次数:10  
标签:存储管理 存储 今生 卡片 记录 数据库 阶段 数据

记录开启本篇的目的:

作为1名练习时长2年半的DBA,工作大部分时间都在和数据库打交道,包括Oracle,Mysql,Postgresql,Opengauss等国内外数据库。但是对数据库的发展史却知之甚少。

正好腾讯云开发者社区正在热播:【纪录片】中国数据库前世今生,借此机会了解数据库发展历史,和演变进程,既充实知识体系架构,有可以有益于读者。

1.数据的起源

说到数据库,大家可能并不陌生,你的银行卡余额可以实现从一个银行网点存入,在另一个银行网点取出。你的王者数据只要登录同一个账号就能在不同设备上打野都得益于数据库保存了你的"数据"。

包括黑客使用钓鱼网站盗取你的数据,也是利用漏洞进入数据库获取你的账号,密码。

并在在大学中,计算机类专业学生基本上都会接触过Mysql或者SQL Server等数据库产品,也许,即使你工作多年,没有从事数据库行业,也一定会对这本书有印象吧,基本上他是学习数据库这门课的必备书籍。

img

但是古代我们可没有当今的数据库,甚至上个世纪五六十年代我国也没有数据库,那么前人是如何记录数据的呢?

2. 现代数据库出现前的数据保存和管理

对于大部分接触数据库的非DBA开发者来说,使用数据库最多的无非是增删改查(insert,delet,uodate,select),那么,在先到数据库工具发明以前,人们是怎么实现数据的增删改查和保存的呢

在数字化和数据库技术普及之前,人们对数据的记录和管理主要依赖于一些传统的方法。这些方法虽然在效率和准确性上无法与现代技术相媲美,但它们在当时是最有效的数据管理方式,直到今天,也是人们记录数据的方式之一。本小节将探讨一些在数据库技术出现之前,人们用来记录和存储管理数据的常见方法。

2.1 纸质记录

纸质记录是最原始的数据记录方式之一。人们使用笔和纸来记录信息,如账簿、日记、表格等。这些记录可以手工整理和分类,但查找特定信息时往往需要花费大量时间。

image-20240729011421129

特点

  • 易于创建:任何人只要有纸和笔就可以开始记录。
  • 直观性:信息一目了然,易于理解和阅读。

缺点

  • 检索效率低:查找特定信息时需要手动翻阅。

  • 易损坏:纸质记录容易受潮、褪色或被损坏。

2.2 文件柜存储

文件柜是纸质记录的物理存储解决方案。通过将记录好的文件、文档分类存放在文件柜中,可以更好地管理和保护这些记录。

image-20240729011447581

特点

  • 组织性:通过文件夹和标签,可以有效地组织大量文档。
  • 物理保护:文件柜为纸质记录提供了物理保护。

缺点

  • 空间占用:需要足够的空间来存放文件柜。
  • 检索不便:尽管比单纯纸质记录有所改进,但检索特定文件仍然不够快捷。

2.3 索引卡片

索引卡片是一种用于快速查找信息的工具。每张卡片上记录一条信息,然后根据一定的规则(如字母顺序)进行排序,以便于快速检索。

image-20240729011725979

特点

  • 快速检索:通过索引排序,可以快速定位到特定信息。
  • 灵活性:卡片可以根据需要重新排序或分类。

缺点

  • 手动维护:需要人工更新和维护索引顺序。
  • 信息量限制:每张卡片只能记录有限的信息。

2.4 打孔卡片

打孔卡片是早期计算机中使用的一种数据输入方式。通过在卡片上打孔来表示不同的数据,然后通过读卡机读取数据。

image-20240813130540935

特点

  • 机械化输入:相比手工记录,打孔卡片提高了数据输入的速度。
  • 适用于早期计算机:在计算机技术发展的早期阶段,打孔卡片是主要的数据输入方式。

缺点

  • 数据限制:每张卡片能表示的数据量有限。
  • 易出错:打孔错误可能导致数据错误。

2.5 小节

尽管这些传统方法在现代看来效率低下,但它们在当时是最有效的数据管理方式。随着技术的发展,数据库的出现极大地提高了数据存储、检索和处理的效率。现代数据库技术不仅提高了数据处理的速度,还增加了数据的安全性和可访问性。

3. 现代数据的引入和发展

毫不夸张的说,在使用现代数据库以前,人们对于数据的存储和管理基本上是基于以上方法或者以上方法的改进优化来实现的。对于整个数据的管理体系十分庞大且处理效率相对低下。在存储大量数据时,无论采用什么方式管理,都存在巨大的人力成本浪费。

在前辈一代代的努力下,现代数据库经过数年的发展,已经进入我们生活的方方面面,对于大部分非开发者来说,他们可能不会接触到数据库的开发部署,但无时无刻享受着现代数据库发展带来的生活便利。

3.1 现代数据库发展起步

此阶段主要是

在20世纪60年代,计算机技术刚刚起步,数据存储主要采用人工方式,数据的维护和管理非常困难。

1946年,有个叫冯·诺依曼的人发明了计算机,最开始的计算机的主要用途是将程序指令存储器和数据存储器合并在一起,然后进行相应的运算。这时候的数据管理非常简单。主要是通过大量的分类、比较和表格绘制的机器运行数百万穿孔卡片来进行数据的处理。然而,随着计算机的诞生和成熟,数据管理技术也迅速发展。传统的文件系统难以应对数据增长的挑战,也无法满足多用户共享数据和快速检索数据的需求。

此时,数据管理的主要目标是存储和检索数据,因此,这种简单数据存储阶段被称为“关系数据库管理系统”。

结构化数据存储阶段随着计算机技术的发展,到了70年代,人们开始探索如何更有效地存储和管理数据。此时,数据管理的主要目标是提高数据的准确性和完整性,因此,结构化数据存储阶段被称为“关系数据库管理系统”。在这个阶段,人们开始使用SQL(StructuredQuery Language)来操作和管理数据库,这也是现代数据库技术的基础。

阶段三:对象数据存储阶段到了80年代,随着计算机技术的进一步发展,人们开始认识到,数据不仅仅是结构化的,还可能是对象化的。因此,这个阶段被称为“对象数据库管理系统”。在这个阶段,数据库开始支持对象的概念,可以存储和管理对象化的数据。

阶段四:分布式数据库阶段随着计算机网络技术的发展,到了90年代,人们开始探索如何分布式地存储和管理数据。这个阶段被称为“分布式数据库系统”。在这个阶段,数据库开始支持分布式的概念,可以在多台计算机上存储和管理数据。

阶段五:云计算数据库阶段到了21世纪,随着云计算技术的发展,人们开始探索如何在云上存储和管理数据。这个阶段被称为“云计算数据库系统”。在这个阶段,数据库开始支持云的概念,可以在云上存储和管理数据。

阶段六:大数据数据库阶段随着大数据技术的发展,人们开始探索如何处理和管理海量的数据。这个阶段被称为“大数据数据库系统”。在这个阶段,数据库开始支持大数据的概念,可以处理和管理海量的数据。

站在前辈的肩膀上

本篇文章的完成了,离不开各位前辈的文章,资料分享。在此一并感谢并做标注说明。如有侵权,请联系本人即刻删除。

本文引用及参考文章如下:

  1. 数据库的发展历程与阶段从起步到现代技术的演进

标签:存储管理,存储,今生,卡片,记录,数据库,阶段,数据
From: https://www.cnblogs.com/getup/p/18369284

相关文章

  • 【数据库干货汇总】2024年上半年墨天轮最受欢迎的40篇技术文章+文档
    作为数据库领域的专业社区,墨天轮社区上汇聚了众多优秀的技术专家与一线从业者,他们积极参与社区共建,通过文章、文档分享了自己的工作实践与学习经验。小编综合阅读量、点赞量、收藏数、下载数等指标,从2024年1月1日-6月30日众多的内容中筛选出20篇优质文章、20篇优质文档,涵盖Oracle......
  • JSP基于Java烟支信息管理系统z019j--(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表系统功能:员工,烟支类型,烟支信息,检测信息,烟支入库,烟支出库开题报告内容一、项目背景与意义随着烟草行业的快速发展和市场竞争的加剧,烟支生产过程中的信息管......
  • JSP基于Jsp的前端课程学习网站xa8bc(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表系统功能:教师,课程名称,资料分类,前端课程,视频分类,课程视频,课堂作业,作业提交,作业批改,学生开题报告内容一、项目背景与意义随着互联网技术的普及和教育资......
  • JSP基于JSP技术的新电商助农平台iy799(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表系统功能:用户,商家,产品分类,农产品,特价产品,种植技术,技术类型技术要求:开发语言:JSP前端使用:HTML5,CSS,JSP动态网页技术后端使用SpringBoot,Spring技术主数......
  • 数据库 vs 数据仓库
    数据库(Database)和数据仓库(DataWarehouse)在许多方面存在差异,包括用途、设计、数据结构和性能优化等。一、用途数据库主要用于支持日常的事务处理,例如在线交易、订单处理、客户管理等。它强调数据的一致性、完整性和并发性,以确保业务操作的准确性和高效性。数据仓库则侧......
  • 拒绝背锅!39 岁失业后,我写出了一个超一万亿使用量的数据库
    拒绝背锅!39岁失业后,我写出了一个超一万亿使用量的数据库投递人 itwriter 发布于 2024-08-1911:42 评论(4) 有997人阅读 [收藏] « »SQlite如今走过了24个年头,如今有了超一万亿的活跃使用量,它被许多顶尖的网页浏览器、操作系统、移动电话和其他嵌入式系统使......
  • 深入分析与解决方案:缓存与数据库双写不一致问题
    我们上次探讨了Redis的常见问题,本章将深入分析更细致的细节,例如如何从业务角度有效处理缓存与数据库之间的双写不一致问题。接下来,让我们深入研究这个话题。key重建优化开发人员通常使用“缓存+过期时间”的策略,以便既能加速数据读写,又能确保数据的定期更新。这种模式基本上能......
  • 如何在Oracle中使用同义词优化数据库访问
    1.同义词的概念:同义词是为数据库对象定义的别名,目的是简化SQL语句的书写。通过使用同义词,用户可以用一个简短且易记的名称来替代一个复杂的数据库对象名称,从而使得SQL语句更简洁。2.同义词的类型:私有同义词:由普通用户创建,通常只能由创建该同义词的用户使用。公共同义......
  • Oracle数据库必学!超实用的9个字符串处理函数
    Oracle查询语句中的单行函数,特别是一些常用的字符串处理函数。1.ConCAT函数作用:将两个字符串连接在一起,生成一个新的字符串。使用方法:concat(字符串1,字符串2)示例:SELECTconcat('Hello,','World')FROMDUAL;结果为:“Hello,World”。2.CHR与ASCII函数CHR函数......
  • C#上传excel,解析主从表,1W数据快速插入数据库,5s完成
    参考文章netcore天马行空系列-各大数据库快速批量插入数据方法汇总ExcelMapperController核心代码[HttpPost]publicasyncTask<IActionResult>ImportToDoItems(IFormFilefile){if(file==null||file.Length==0){returnBadRequest("Fileis......