数据库漫谈-发展简史

        数据管理最早都是开发者自行定义的,应用和数据管理是一体的,没有独立的数据管理系统。1961年为了支持阿波罗计划的执行,IBM开发了ICS数据库,这是个层次数据库,是最早的大型数据库。另一个巨头GE公司看到ICS的问题,推出了网状数据库IDS。IDS 的主要开发者 Bachman 因为该项工作,在 1973 年获得了图灵奖。 Codd对层次模型和网状模型Say NO,推出了划时代的数据库模型:关系型数据库,使得数据库和应用分离,成为单独发展的系统。看到关系型数据库的发展,Ellison毅然决然地拿出2000美刀成立了一个未来价值千亿的公司Oracle。IBM估计肠子都悔青了,后知后觉的推出了DB2,这个时候只能在Oracle背后吃土了。

       sybase公司这个时候横空出世,集齐了三大法器。数据库:sybase,数据库设计工具:powerdeisigner,开发工具:powerbuild,一时间风头无两。

       微软公司通过某种手段获取了sybase的代码,顺势推出了自己数据库系统SQL Server。基本上90年代就是这4家数据库系统占据了绝大多数份额。做管理系统,需要花大把的银子买数据库,而且是按人头(多少用户数),或按CPU数购买。甲方、乙方都在心里流血。

       免费的数据库MySQL出现了。省钱是永恒的主题,财大气粗的阿里也不例外,通过一场去IOE运动,用MySQL替换了Oracle。关系数据库也无法笑到最后,因为表和对象之间完全对不上。大量非结构数据用关系数据库实在不方便。数据库的性能也无法满足高性能要求。新一代的MongoDB和Redis就出现了。

      各专业领域的数据管理工具也出现了:图数据库Neo4J,流数据库Kafka,全文搜索ES 。

      最后出场的是向量数据库。

      数据库的发展还在持续。

      回顾下数据库发展历史上几位大神

     1、Bachman。上文已经提到过,由于开发了IDS,于1973年获得图灵奖。

     2、Edgar F. Codd。上文也提到过,由于关系型数据库,于1981年获得图灵奖。

     3、Raymond F. Boyce。发明了SQL。没有获得图灵奖,可能和英年早逝有关。

     4、Jim Gray。提出了经典的数据库事务ACID(原子性、一致性、隔离性、持久性)概念,于1998年获得图灵奖。

     5、Michael Stonebraker。2014年图灵奖获得者,开发了PostgreSQL前身Ingres。

     6、Jeffrey D. Ullman。对数据库理论和实践做出了杰出贡献,于2020年图灵奖得主。

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

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

相关文章

实验14 MVC

二、实验项目内容&#xff08;实验题目&#xff09; 编写代码&#xff0c;掌握MVC的用法。【参考课本 例1 】 三、源代码以及执行结果截图&#xff1a; example7_1.jsp&#xff1a; <% page contentType"text/html" %> <% page pageEncoding "ut…

PHP医院安全(不良)事件报告系统源码 vue2+element支持11大类不良事件上报、审核处理、分析改进

PHP医院安全&#xff08;不良&#xff09;事件报告系统源码 vue2element支持11大类不良事件上报、审核处理、分析改进 医院安全&#xff08;不良&#xff09;事件管理系统采用无责的、自愿的填报不良事件方式&#xff0c;有效地减轻医护人员的思想压力&#xff0c;实现以事件为…

某招聘网站搜索结果接口之acw_sc__v2逆向

上文链接 某招聘网站搜索结果接口逆向之webpack扣取 分析参数 acw_sc__v2 663449dacb63fbe529520fb21063cf354dbce1cf 既然在Cookie中那么需要借助Hook脚本 (function() {//严谨模式 检查所有错误use strict;var cookieTemp "";Object.defineProperty(document,…

基于SpringBoot的考务管理系统 - 源码免费(私信领取)

1. 研究目的 本项目旨在设计并实现一个基于Spring Boot的考务管理系统&#xff0c;以提高考试管理的效率&#xff0c;简化考试流程&#xff0c;确保考试的顺利进行。 2. 研究要求 a. 需求分析 通过深入了解考务管理流程和需求&#xff0c;分析用户对考试管理系统的需求&…

springboot+websocket开发简单的在线群聊聊天web版本

springbootwebsocket开发简单的在线群聊聊天web版本&#xff01;近期在测试websocket插件的群聊功能。下面是一个简单的demo。分享给大家&#xff0c;亲测可以使用的。 1&#xff1a;首先是一个chat.html页面。代码如下&#xff1a; <!DOCTYPE html> <html lang"…

Centos 启动jar包的详细步骤

一、准备工作 1.1 创建目录和日志文件 在linux系统&#xff0c;你认为合理的地方创建一个目录&#xff0c;可以用来存放所有项目的jar包&#xff0c;也可以每一个项目创建一个目录存放单独的jar包。 #解释&#xff1a;新建projectName目录 命令&#xff1a;mkdir projectNam…

Linux学习之路 -- 文件 -- 文件操作

在学习C语言时&#xff0c;我们就学习过文件相关的内容&#xff0c;但是由于知识储备尚且不足&#xff0c;无法深入的了解文件&#xff0c;下面我们就要重新认识一下文件。 <1> 简单介绍(铺垫) 1.前面我们说过&#xff0c;文件 内容 属性&#xff0c;所以我们对文件的…

GO语言核心30讲 进阶技术 (第一部分)

原站地址&#xff1a;Go语言核心36讲_Golang_Go语言-极客时间 一、数组和切片 1. 两者最大的不同&#xff1a;数组的长度是固定的&#xff0c;而切片的长度是可变的。 2. 可以把切片看成是对数组的一层封装&#xff0c;因为每个切片的底层数据结构中&#xff0c;一定会包含一…

4.2_文本处理工具

## 1.grep ## grep [Globally search a Regular Expression and Print] &#xff08;1&#xff09;grep 格式 ##grep 格式## grep 匹配条件 处理文件 grep root passwd #过滤root关键字 grep -E egrep #扩展搜索 grep -i root passwd ##忽…

【leetcode】优先队列题目总结

优先队列的底层是最大堆或最小堆 priority_queue<Type, Container, Functional>; Type是要存放的数据类型Container是实现底层堆的容器,必须是数组实现的容器,如vector、dequeFunctional是比较方式/比较函数/优先级priority_queue<Type>; 此时默认的容器是vect…

深度学习之基于Vgg16卷积神经网络印度交警手势识别系统

欢迎大家点赞、收藏、关注、评论啦 &#xff0c;由于篇幅有限&#xff0c;只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 一、项目背景 随着智能交通系统的发展&#xff0c;手势识别技术成为了一个关键组成部分&#xff0c;特别是在交通管…

基于SSM SpringBoot vue宾馆网上预订综合业务服务系统

基于SSM SpringBoot vue宾馆网上预订综合业务服务系统 系统功能 首页 图片轮播 宾馆信息 饮食美食 休闲娱乐 新闻资讯 论坛 留言板 登录注册 个人中心 后台管理 登录注册 个人中心 用户管理 客房登记管理 客房调整管理 休闲娱乐管理 类型信息管理 论坛管理 系统管理 新闻资讯…

ArrayList还是LinkedList?

引言 集合作为一种存储数据的容器&#xff0c;是我们日常开发中使用最频繁的对象类型之一。JDK为开发者提供了一系列的集合类型&#xff0c;这些集合类型使用不同的数据结构来实现。因此&#xff0c;不同的集合类型&#xff0c;使用场景也不同。 很多同学在面试的时候&#x…

多列列表OCX控件

VB6写的一个多列列表OCX控件源码&#xff0c;核心就是利用数组划分成多列数据&#xff0c;可装载亿条数据以上&#xff0c;控件引用了四个PictureBox控件分别作为:索引号显示&#xff0c;列表&#xff0c;垂直滚动条和横向滚动条&#xff0c;基本实现列表的添加、修改和删除等功…

文本嵌入的隐私风险:从嵌入向量重建原始文本的探索

随着大型语言模型&#xff08;LLMs&#xff09;的广泛应用&#xff0c;文本嵌入技术在语义相似性编码、搜索、聚类和分类等方面发挥着重要作用。然而&#xff0c;文本嵌入所蕴含的隐私风险尚未得到充分探讨。研究提出了一种控制生成的方法&#xff0c;通过迭代修正和重新嵌入文…

TCP 协议

TCP协议段格式 源/目的端口号&#xff1a;表示数据是从哪个进程来&#xff0c;到哪个进程去。 序号&#xff1a;发送数据的序号。 确认序号&#xff1a;应答报文的序号&#xff0c;用来回复发送方的。 4 位首部长度&#xff1a;一个 TCP 报头&#xff0c;长度是可变的&#xff…

Spring Boot使用Logback将某些日志输出到单独的文件

缘起 重构了某个接口&#xff0c;想监控下新接口各个处理过程的时间&#xff0c;从而评估和监控日常性能。监控使用Spring自带的StopWatch&#xff0c;日志使用Logback 配置 先拷贝一份infoAppender配置过来改个名 <!-- 监控日志 --><appender name"monitorAp…

简化Transformer模型,以更少的参数实现更快的训练速度

在深度学习领域&#xff0c;Transformer模型因其卓越的性能而广受欢迎&#xff0c;但其复杂的架构也带来了训练时间长和参数数量多的挑战。ETH Zurich的研究人员Bobby He和Thomas Hofmann在最新研究中提出了一种简化的Transformer模型&#xff0c;通过移除一些非必要的组件&…

【VueUse】超越基本功能的高级 Vue 元素操作

在vue开发中我们经常需要操作DOM元素&#xff0c;从简单的添加类到动态创建元素&#xff0c;这些操作都是不可避免的。而在VueUse库中&#xff0c;Elements相关API函数为我们提供了一系列强大而灵活的工具&#xff0c;帮助我们更轻松地处理DOM元素。无论是优雅地处理元素、动态…

JavaEE技术之MySql高级(索引、索引优化、sql实战、View视图、Mysql日志和锁、多版本并发控制)

文章目录 1. MySQL简介2. MySQL安装2.1 MySQL8新特性2.2 安装MySQL2.2.1 在docker中创建并启动MySQL容器&#xff1a;2.2.2 修改mysql密码2.2.3 重启mysql容器2.2.4 常见问题解决 2.3 字符集问题2.4 远程访问MySQL(用户与权限管理)2.4.0 远程连接问题1、防火墙2、账号不支持远程…