中国数据库的前世今生:披荆斩棘,乘风破浪

news2024/9/22 4:03:13

文章目录

  • 前言
  • 国外数据库技术蓬勃发展
  • 中国信息化起步与发展(数据库技术探索)
  • 国外数据库商战策略
    • 解决燃眉之急
    • 学习先进技术
  • 数据库技术的新格局
    • 雷声大雨点小的千年虫
    • 新型数据库的诞生
    • 国产数据库展露头脚
  • 开源助力国产数据库弯道超车
    • 去“IOE”化
    • 大数据席卷而来
    • 国产数据库崛起
  • 展望未来

前言

从古至今,人类会用各种方式记录数据,从原始时期在木头和骨头上刻痕,到古代文明中的竹简、丝帛以及纸张上的笔墨记载,直到20世纪50年代,人类对数据的管理进入数据库时代。在数据库成为当今数字化时代记录和管理数据的主要方式之一,你知道其发展历程吗?让我们一起了解中国数据库的前世今生吧。

国外数据库技术蓬勃发展

为了适应市场竞争和业务发展的需要,同时随着计算机技术的发展,国际上涌现出了众多数据库产品。

20世纪60年代,世界上第一个数据库:IDS,诞生于通用电气公司 ,在当时得到了广泛的应用,为数据库的发展奠定了基础。

IBM紧随其后也研发出了自己数据库:IMS。并在70年代,随着关系型数据模型的兴起,研发出结构化查询语句,也就是SQL语言前身。

70年代末,甲骨文创办者 Larry Ellison 发现数据库的商机,在往后的几十年里一直占据数据库第一宝座的Oracle诞生。

在国外数据库技术蓬勃发展之际,彼时的中国数据库领域又呈现出怎样的态势?

中国信息化起步与发展(数据库技术探索)

1977年,中国恢复高考,第一批大学生重新走进校园,彼时的学生似乎还不太理解数据库这三个字的意义,中国数据库领域也只是在探索阶段。

作为数据库学科的奠基人,萨师煊教授在80年代带领学生进行数据库理论探索和原型研究,培养了中国数据库的第一代人才,为后续国产数据库的发展埋下了一颗种子。

正因没有数据库这样的工具,彼时的中国信息化状态就如腾讯云开发者社区出品的《中国数据库前世今生》纪录片所讲:

“当时条件有限,代码要先在纸上写好,再去机房录入。”
“年底做报表数据,数据录入员花费几天几夜的时间将几麻袋的数据手动录入后,再写程序计算统计。”

这一幕幕情景无不彰显出信息化初期发展的不易与坚韧。

而当国外数据库进入中国市场时,老一辈开拓者们惊觉,原来先前在信息化领域的工作和数据库理念竟是如此契合,可见他们在探索道路中的窘迫和被动。

国外数据库商战策略

解决燃眉之急

90年代,正是中国经济飞速增长的时候,各行各业对信息技术的需求急剧增加。但此时我国的信息技术人才短缺,所以急需引进国外厂商服务来解决燃眉之急。

以魏中朝先生为领军人物,率先引领Oracle公司开拓中国市场,随后IBM与Sybase等企业也紧随其后。正是这些国外厂商的引进,才使得中国信息化在90年快速发展,在这10年里,金税工程、金融、电信、电力、政府、航天等很多应用落地,可以说如果没有数据库技术,这些都不成立。

可想而知,当时的中国有多么重视数据库技术。

有多么重视?

以Oracle为例,1997年,Oracle CEO 第一次访问中国时享受的是国宾待遇。今天看来,似乎很难理解一个外企高管为何能享受如此待遇。因为这关系到未来20年的数字经济的发展

学习先进技术

随着国外数据库技术的引进,不仅解决了燃眉之急,也为中国市场带来启发。为了国产数据库的发展,国家为高校的数据库研究提供经费支持,从而也有了第一代原型数据库,比如东软的Openbase、中软的Cobase和华科的DMDatabase,并逐步应用在可用度不高但保密性高的科研、国防、军工等领域,也意味着打破了国外数据库的垄断。

数据库技术的新格局

雷声大雨点小的千年虫

在2000年新时代来临之前,信息界有个重大的事件:“千年虫”。

由于当时的存储成本很高,为了尽量减少存储成本,会将存储数据进行缩减。例如,如果用四位数字表示年份,编程人员会采用两位数字表示,但是随着新世纪的来临,大家才突然意识到用两位数字表示年份无法辨识公元2000年及其以后的年份,在2000年来临的前几年,一些政府和企业就耗费不少资金来解决千年虫问题。不过,在随后发生的事情,千年虫并没有如预言那样发生重大的灾害消息。

新型数据库的诞生

2000年有个特火的词“CRM”,CRM是一种商业策略,具体来说就是:收集并分析客户数据,生成各种报表和图表,帮助企业了解客户行为、市场趋势,为决策提供数据支持

当时几乎全民CRM,一些用于数据分析的数据库在这个阶段就发展起来,例如Sybase IQ列式数据库、IBM的DB2(数据仓库)以及OLAP数据库。

那么这些数据库带来哪些效率的提升?

就如《中国数据库前世今生》》纪录片说道:“金融系统每天收盘后的数据,要花费8~9小时去计算和分析,使用Sybase IQ列式数据库后可以压缩到1小时,很大程度上带动了生产力的提高”。

除此之外,还有一个挺大的动静就是NoSQL的出现,例如内存数据库和Hadoop。

国产数据库展露头脚

2000年后期,国家“十一五”规划发布,称要以信息化带动工业化。在国家政策的扶持下,达梦数据库、人大金仓、南大通用和航天神舟开始发展,并称为国产数据库的四朵金花。

开源助力国产数据库弯道超车

从2010年开始,中国互联网迅猛发展,其间数据库领域也经历了变革:以“去IOE”化为先声,开源数据库蓬勃兴起,大数据广泛应用以及云数据库的崛起,共同塑造了数据库技术发展趋势。

去“IOE”化

继阿里提出去“IOE”化后,2010年代互联网掀起去IOE浪潮,目的是为了降低企业运营成本。特别是Oracle除了高昂的版权费用外,还要额外收取年度服务费,为了摆脱强势的 Oracle,一批中国互联网公司转向开源数据库。

大数据席卷而来

随着移动互联网的发展,电商、物流、饮食、出行等众多和日常生活紧密相连的行业,其业务数据呈爆炸式增长。为了能处理这样体量的业务和数据,像Hadoop体系的大数据技术就不断的应用并持续发展。初次之外,一些喊着分布式、强调性能的开源数据库技术Redis、mongodb等NoSQL也被广泛应用。

NoSQL中的“No”是什么意思?我想这是我听过最好的一段解释了:

起初,NoSQL主要是为了应对传统关系型数据库在处理大规模非结构化或半结构化数据时的局限性而提出的。通过键值对(K,V)、列存储、文档存储或图形数据库等模型组织数据,以替代SQL。随着NoSQL的发展,大家又意识到SQL在某些场景下仍然不可或缺,又演进出如Hive、Spark以及Flink这些在NoSQL数据存储之上提供SQL的解决方案。所以,NoSQL的叫法是从“No SQL”的不得已演变为“Not Only SQL”。

从中也可以看到技术迭代之快,纪录片中的“还没理解数仓是什么,数仓都已经落伍了”我想大部分IT人都深有体会。

国产数据库崛起

开源数据库的普及,为国产数据库的发展提供了一定的借鉴,尤其是一些大公司,为了支撑业务自研了多款数据库,也在为后面云时代的到来打下了基础。

2015年左右随着云发展,这些大公司将很好地支撑大体量业务的技术投放到市场上发挥价值,也就是云数据库的建设。一边引入较为主流的开源数据库,如MySQL,Redis,PostgreSQL 等将其托管在管控平台,一边挣扎着解决分布式数据库带来的扩展、吞吐、读写同步延迟等问题,如TDSQL、PolarDB、GaussDB推进国产化分布式数据库的发展。

而TDSQL更是在数据库领域的“奥林匹克”TPC-C榜单登顶

要知道在 2019 年之前,TPC-C 榜单 Top 10 一直被 Oracle、IBM 等国外传统数据库所占据,这一现状标志着国产数据库在性能和技术上取得了重大突破,实现了弯道超车。

在40余年的发展过程中,依然有很多优秀的国产数据库厂商在提升国产数据库的竞争力。

展望未来

随着AI技术的不断发展和应用场景的落地,对数据处理与存储的需求将更加迫切,然而并没有一蹴而就的解决方案,自研之路依然充满挑战。但此时的我们比老一辈境况好的多,在当时面临各领域的封锁,正是老一辈的前赴后继,才为数据经济的发展奠定了基础。我们要传承这样的精神,继续为国产数据库创造竞争力,一路乘风破浪,披荆斩棘。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2037209.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用OIDC登录kubesphere遇到的坑细节

1.通过代理telepresence到本地调试,使用默认账号密码,提示账号密码错误。 2.kubesphere在sso登录的时候,提示签名错误,其实这个错误不是很明确,所以要到本地调试,找到根本原因。 # 错误1 Tnauthorized: fa…

《Linux运维总结:基于ARM64架构CPU使用docker-compose一键离线部署etcd 3.5.15容器版分布式集群》

总结:整理不易,如果对你有帮助,可否点赞关注一下? 更多详细内容请参考:《Linux运维篇:Linux系统运维指南》 一、部署背景 由于业务系统的特殊性,我们需要面对不同的客户部署业务系统&#xff0…

skywalking架构

1.整体架构 整个架构,分成上、下、左、右四部分: 在SkyWalking中,trace 数据和 metrics 数据是两种关键的监控数据类型,它们帮助你理解应用的运行状态、性能瓶颈和故障点 1.1Trace 数据 Trace 数据是分布式追踪数据,它…

【原创】java+springboot+mysql学业跟踪指导管理系统设计与实现

个人主页:程序猿小小杨 个人简介:从事开发多年,Java、Php、Python、前端开发均有涉猎 博客内容:Java项目实战、项目演示、技术分享 文末有作者名片,希望和大家一起共同进步,你只管努力,剩下的交…

Centos7安装jdk1.6(jdk-6u45-linux-x64.bin)

目录 一,查看是否安装jdk:二,下载安装文件:三,开始安装a. jdk-6u45-linux-x64-rpm.bin文件安装:b. jdk-6u45-linux-x64.bin文件安装【建议安装此文件】: 四,配置环境变量&#xff1a…

37.docker拉取镜像失败和创建mysql5.6容器

问题 docker pull 拉取镜像文件超时,网络连接不上。 解决方案 在/etc/docker目录下创建daemon.json文件。 文件内容为: { "builder": { "gc": { "defaultKeepStorage": "20GB", "en…

计算机视觉-CS231n

Image classifcation knnRegularizationBack PropagationNeural NetworksConvolutional Networks Training Neural Networks Deep learning 、CNN、RNN Detection and segmentation Visualizing and understanding GAN、Reinforcement learning Generative models

城市信息模型:构建未来智慧城市之基底座

在智慧城市的宏大叙事中,城市信息模型(City Information Model, CIM)平台如同城市智能的神经中枢,将数据、空间与技术深度融合,为城市规划、管理、服务、居民生活提供了前所未有的洞察与优化途径。CIM平台的构建不仅是…

【Python系列】txt文件读取操作

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

使用mybatis注解和xml映射执行javaWeb中增删改查等操作

Mapper接口 使用注解执行SQL语句操作和相应的Java抽象类(对于简单的增删改查使用注解) Mapper public interface EmpMapper {// 根据id删除员工信息Delete("delete from mybatis.emp where id#{id}")public int EmpDelete(Integer id);// 查…

2024年最新版小程序云开发数据模型的开通步骤,开始开发微信小程序前的准备工作,认真看完奥!

小程序官方又改版了,搞得石头哥不得不紧急的再新出一版,教大家开通最新版的数据模型。官方既然主推数据模型,那我们就先看看看新版的数据模型到底是什么。 一,什么是数据模型 数据模型是什么 数据模型是一个用于组织和管理数据的…

k-means聚类算法k-means++聚类算法

k-means聚类算法&k-means聚类算法 聚类(Clustering) 是按照某个特定标准(如距离)把一个数据集分割成不同的类或簇,使得同一个簇内的数据对象的相似性尽可能大,同时不在同一个簇中的数据对象的差异性也尽可能地大。也就是说,聚类后同一类的…

从战略到系统架构:信息系统设计的全面解析

在当今数字化时代,信息系统已成为企业运营、管理和创新的核心驱动力。信息系统设计的重要性不仅关乎企业的技术实现,更直接影响到企业的战略执行和市场竞争能力。本文将从战略视角出发,深入探讨信息系统设计的全过程,包括从战略制…

使用Nexus搭建Maven私服仓库

一、私服仓库简介 在Java的世界中,我们通常使用Maven的依赖体系来管理构件(artifact,又称为二方库或三方库)的依赖,Maven仓库用于存储这些构件。一般的远程仓库(比如Maven Central)只提供下载功…

微信小程序中实现自动滚动

使用scroll-view组件的scroll-into-view属性&#xff1a; <scroll-view class"container" scroll-y"{{true}}" scroll-into-view"recordBottomScroll"><view class"text_style" style"color: #252526;">{{te…

Ubuntu20.04 源码安装 OMPL 与 Moveit

文章目录 一、源码安装OMPL1.1 先检查是否已安装二进制 ompl1.2 若已经提前安装二进制&#xff0c;需先行卸载1.3 OMPL官网安装教程 二、源码安装 moveit2.1 先检查是否已安装二进制Moveit2.2 源码安装 Moveit2.2.1、更新软件包2.2.2、安装依赖2.2.3、创建Moveit工作空间2.2.4…

8月12日学习笔记 DNS补充

一&#xff0c;DNS工作原理 查询方式 1.递归查询&#xff0c;逐级查询&#xff0c;一次到位&#xff0c;但是速度慢 2.迭代查询&#xff0c;多次查询一个地址&#xff0c;可以缓存 一次递归&#xff0c;多次迭代 dig解析域名 yum -y install bind-utils.x86_64 dig trace …

selenium使用Edge的 webdriver提示错误

最近由于项目的原因需要更换selenium的驱动&#xff0c;从Google谷歌更换成Edge驱动&#xff0c;然后发现官方下载的驱动文件不能直接放到python执行&#xff0c;提示一直在报错&#xff0c;后续通过多方查找才知道是驱动名称问题&#xff01;&#xff01;&#xff01; 查看Ed…

Hadoop-yarn-unauthorized 未授权访问漏洞

一、漏洞描述&#xff1a; Hadoop是一款由Apache基金会推出的分布式系统框架&#xff0c;它通过著名的 MapReduce 算法进行分布式处理&#xff0c;Yarn是Hadoop集群的资源管理系统。YARN提供有默认开放在8088和8090的REST API&#xff08;默认前者&#xff09;允许用户直接通过…