当前位置:首页 > 问答 > 正文

说说数据库是怎么开始的,后来又是怎么慢慢变得这么重要的

说起数据库的诞生,我们得回到上世纪五六十年代,那时候的计算机,主要用来进行复杂的科学计算,比如导弹弹道或者核物理实验,处理的数据量虽然大,但结构很单一,基本上就是一堆数字,当时要存点东西,用的就是最直接的办法——文件系统,这就像我们今天在电脑上创建一个文本文件(.txt)或者一个表格文件(.csv),把数据一条条写进去。(来源:计算机历史学家关于早期数据存储的论述)

但这种文件系统用起来非常麻烦,想象一下,如果一个公司要用文件来管理员工信息和工资,他们可能有一个“员工基本信息.txt”,里面记录着员工号、姓名、部门;还有一个“员工工资.txt”,里面记录着员工号、月份、工资数额,财务想发工资,需要知道某个部门所有员工的姓名和对应的工资金额,他该怎么办?他得先打开基本信息文件,找出那个部门的所有员工号,然后再打开工资文件,像查字典一样,一个一个员工号地去匹配,找出对应的工资,如果公司有几千名员工,这个工作量简直无法想象,更头疼的问题是数据冗余和不一致,如果一个员工换了部门,你可能只记得在基本信息文件里改了部门,却忘了在另一个“项目分配文件”里更新,那数据就乱套了,如果很多人想同时修改同一个文件,也很容易产生冲突,导致数据出错。(来源:对早期文件管理系统缺点的普遍分析)

人们迫切需要一种更好的方法来管理这些越来越重要的数据,在60年代左右,数据库的概念开始萌芽,当时的一些计算机科学家,比如查尔斯·巴赫曼,开始思考能不能设计一个“数据仓库”,这个仓库不是简单的一堆文件,而是一个有结构、有关联的整体,巴赫曼等人提出的网状数据库模型,可以看作是数据库的早期探索,它试图用指针像网一样把相关的数据记录连接起来,这比孤立的文件前进了一大步。(来源:关于Charles Bachman和早期数据库模型的史料)

说说数据库是怎么开始的,后来又是怎么慢慢变得这么重要的

但真正让数据库理论大厦奠定基石的,是IBM的研究员埃德加·科德,他在1970年发表了一篇划时代的论文,提出了一个革命性的想法:关系模型,这个模型极其巧妙,它认为所有数据都可以用一张张简单的二维表(就像Excel表格)来表示,表与表之间通过某些共同的字段(员工号”)建立关系,这个想法听起来很简单,但却威力无穷。(来源:E.F. Codd的论文《A Relational Model of Data for Large Shared Data Banks》)

为什么关系模型这么厉害?它太容易理解了,表格是人人都熟悉的形式,大大降低了使用门槛,它解决了文件系统的一大痛点——数据冗余和一致性,员工部门信息只需要在一张“部门表”里存一次,所有员工通过“部门编号”与之关联,部门名称变了,只需要改“部门表”里的一个地方就行了,科德还发明了一种强大的语言——SQL(结构化查询语言),用来操作这些表格,你想完成上面那个“查某个部门所有员工工资”的任务,只需要写一行类似“SELECT 姓名, 工资 FROM 员工表, 工资表 WHERE 部门=‘销售部’”的SQL语句,数据库瞬间就能给你结果,再也不用人工去两个文件里翻来翻去了。(来源:对关系数据库模型优势的通用技术解释)

说说数据库是怎么开始的,后来又是怎么慢慢变得这么重要的

理论有了,但真正把关系型数据库推向市场、让它变得家喻户晓的,是一家叫甲骨文的公司和它的创始人拉里·埃里森,埃里森极具远见地看到了关系型数据库的巨大商业潜力,全力开发基于SQL的商业化数据库产品,随着80年代企业信息化的浪潮,越来越多的公司需要管理销售、库存、财务、客户信息,关系型数据库凭借其强大的查询能力、清晰的数据结构和可靠的安全性,几乎成了企业级应用的不二之选,甲骨文公司也借此迅速崛起。(来源:商业史中对Oracle公司早期发展的记载)

到了90年代,随着个人电脑的普及和互联网的爆炸式增长,数据库的重要性更是达到了前所未有的高度,我们每个人的生活都开始与数据库紧密相连:在网上购物,你的订单信息存在淘宝或亚马逊的数据库里;在银行取钱,你的账户余额存在银行的数据库里;用搜索引擎查找信息,谷歌和百度背后是浩如烟海的索引数据库;甚至在社交媒体上发一条朋友圈,这条内容也被存在腾讯的数据库里。(来源:观察互联网时代数据存储的普遍现象)

可以说,数据库从最初一个为了解决文件管理麻烦的技术工具,慢慢演变成了整个数字世界的基石,它不再仅仅是企业后台管理的工具,而是支撑起现代社会经济活动、社会交往和信息服务的核心基础设施,没有数据库,今天我们所熟悉的便捷的数字化生活将完全无法运转,它的重要性,正是在解决一个又一个实际问题的过程中,随着数据价值的飙升而一步步确立起来的。