阳振坤:AI 大模型的基础是数据,AI越发达,数据库价值越大
2024年1月12日,第四届OceanBase数据库大赛决赛在北京圆满落幕。在大赛的颁奖典礼上,OceanBase 首席科学家阳振坤老师为同学们献上了一场主题为“爱上数据库”的公开课,他不仅分享了个人的成长历程,还阐述了对数据库行业现状与未来的见解和思考。

阳老师回忆了自己年轻时,与如今的同学们相仿的年纪,追随导师王选院士投身激光照排机研发的岁月。他感慨道:“那时,我们的信息系统与发达国家相比,存在着巨大的差距。虽然时至今日,这样的差距仍然存在,但已经大幅缩小,甚至在不少领域,我们已经实现了超越。”
近年来,人工智能技术迅猛发展,谈及 AI 大模型与数据库的关系,他表示,AI 大模型本身的基础其实还是数据,AI 模型越发达,数据库的价值会越大,数据库的空间也会越大。
未来数据库会如何发展?他认为,数据库的形式和功能将发生显著变化。现代数据库应具备两大核心特征:一是强大的海量数据处理能力,二是云数据库服务模式。因此,数据库的发展方向必然是多模一体化,以及具备敏捷伸缩和水平扩展的能力。
精彩节选
1、未来数据库不会消失,但形式和功能会发生显著变化
AI 大模型主要依靠训练的数据、训练的结果,以及和用户的交互,这背后海量数据的处理离不开各种各样的数据库。所以 AI 的模型越发达,我觉得数据库的价值会越大,数据库的空间也会越大。
在可预见的未来里,数据库作为存储、管理和检索数据的核心工具,作用只会更加重要,传统关系型数据库也不再是唯一选择。
NoSQL、NewSQL、分布式数据库等新型数据库将广泛应用,云数据库和 Serverless 架构让用户更多依赖云服务商提供的解决方案,AI 和机器学习的引入将使数据库管理更加自动化。
2、数据库激增、类型多样与实时处理是数据库的三大挑战
今天在数据库领域,关系数据库仍然占很大比例,差不多是 70%。有很多人预测,关系数据库的比例会缩小,我是相反的看法,我觉得关系数据库的比例会变大。
这些年,为满足多样化数据类型和复杂查询需求,NoSQL、NewSQL、KV 等部分替代了传统关系型数据库。一个重要原因是传统的关系型数据库多为单机数据库,扩展能力受限,所以人们才会用 KV、NoSQL 等作为解决方案。但这些系统缺少数据库最根本的东西:ACID,导致它本身带有局限性。
数据库这些年发展还出现了一个现象,就是交易和分析割裂。当数据量不大的时候,可以按照交易的方式进行分析,只是效率低一点。但当数据量大了之后,第一是存储,原来的交易数据库面临存储挑战,更谈不上分析;第二是效率,当数据量增长了 1000 倍,分析的时间不可能随之增加到 1000 倍,这时的分析也就失去了意义。
正是因为如此,现在的业务生产系统中,交易和分析是割裂的,形成两个系统。一旦交易系统的数据发生变化,分析系统也要同步改变。这不仅带来成本增加,复杂性也随之上升。
3、云是未来数据库发展的主要趋势
今天,云在数据库市场里占据主流。左边的图里,蓝色部分云数据库市场份额,黄色部分是线下部署的市场份额。现在,云已经占了超过 60%。从右边的图可以看出,数据库每年的市场增量有 90% 在云上,这意味着随着时间的推移,云数据库的占比会越来越大。

(数据来源:Market Share Analysis:DataBase Management Systems,Worldwide,2023)
为什么云服务发展很快?我觉得有两点:效率和成本。
云上的资源可以很快申请,马上就能得到,时间是以秒计算,而线下部署一台机器再快都是以天计算的。在成本方面,中等规模以下的企业,购买云服务很便宜;对大型、特大型的企业由于规模效应,也能带来成本的节省。这其中最重要的原因就是资源的池化与复用。
以 CPU 为例,绝大部分企业的计算机 CPU 利用率是个位数,不到 10%,造成算力浪费。而云上可以做到 20%,因为各家企业的业务有时高有时低,大家互补起来,提高资源的利用率。同时,云上的存储和人力,也可以通过复用提高利用率。
但是数据库不完全是这样,数据库是个有状态的东西。大家知道一个事务建立连接,它的很多状态你是要保持住的。数据库有敏捷的伸缩能力是一个挑战,但如果你没有伸缩能力,你就做不到资源的复用。
4、OceanBase在走一条传统数据库走不了的路
传统集中式数据库第一没有容量,第二很难能解决行存列存冲突的问题。因为行存便于数据修改,而列存的修改代价非常大。如果一个表有 100 个列,插入或删除一条记录,意味着要在硬盘上做 100 次的读、100 次的写,操作代价非常大,效率也就会非常差。
这个里面涉及到两个问题,一个是分布式一个是敏捷伸缩。如果数据库没有敏捷伸缩的能力,就无法像云那样做到资源复用,例如高德地图的导航,除了早晚高峰,凌晨用的人很少,如果没有弹性能力,就会造成资源浪费。
过去的数据库其实是不具备扩展能力的,新的数据库在朝这个方向努力,OceanBase 现在在很多地方还不如 Oracle,但是我们今天走的是一条传统数据库走不了的路。
传统集中式数据库它没有一个很好的扩展能力,而 OceanBase 这种分布式数据库成长起来,它将成为新一代的数据平台。过去需要搭一个交易数据库和一个大数据系统,而现在可以在一个数据库里实现这些功能,去掉两个系统带来的交互和成本。
相关文章:
阳振坤:AI 大模型的基础是数据,AI越发达,数据库价值越大
2024年1月12日,第四届OceanBase数据库大赛决赛在北京圆满落幕。在大赛的颁奖典礼上,OceanBase 首席科学家阳振坤老师为同学们献上了一场主题为“爱上数据库”的公开课,他不仅分享了个人的成长历程,还阐述了对数据库行业现状与未来…...
Linux磁盘空间不足,12个详细的排查方法
在Linux系统运维过程中,磁盘空间不足是一个常见且棘手的问题。当磁盘空间被占满时,系统的正常运行会受到影响,甚至可能导致服务中断。因此,迅速有效地排查和解决磁盘空间问题显得尤为重要。本文将详细介绍16个排查Linux磁盘空间问…...
Spring Web MVC综合案例
承接上篇文章——Spring Web MVC探秘,在了解Spring Web MVC背后的工作机制之后,我们接下来通过三个实战项目,来进一步巩固一下前面的知识。 一、计算器 效果展示:访问路径:http://127.0.0.1:8080/calc.html 前端代码&a…...
微软预测 AI 2025,AI Agents 重塑工作形式
1月初,微软在官网发布了2025年6大AI预测,分别是:AI模型将变得更加强大和有用、AI Agents将彻底改变工作方式、AI伴侣将支持日常生活、AI资源的利用将更高效、测试与定制是开发AI的关键以及AI将加速科学研究突破。 值得一提的是,微…...
lvgl性能调优
LV_USE_PERFORMANCE lvgl_performance 是 LVGL 提供的性能分析工具,可以帮助开发者评估和优化图形库的性能。在一些特定的版本中,lvgl_performance 是一个宏或者工具,用来分析性能瓶颈,特别是图形渲染的效率。 下面是如何使用 l…...
CSS实现实现票据效果 mask与切图方式
一、“切图”的局限性 传统的“切图”简单暴力,但往往缺少适应性。 适应性一般有两种,一是尺寸自适应,二是颜色可以自定义。 举个例子,有这样一个优惠券样式 关于这类样式实现技巧,之前在这篇文章中有详细介绍: CSS 实现优惠券的技巧 不过这里略微不一样的地方是,两个…...
STL--list(双向链表)
目录 一、list 对象创建 1、默认构造函数 2、初始化列表 3、迭代器 4、全0初始化 5、全值初始化 6、拷贝构造函数 二、list 赋值操作 1、赋值 2、assign(迭代器1,迭代器2) 3、assign(初始化列表) 4、assig…...
ZooKeeper 中的 ZAB 一致性协议与 Zookeeper 设计目的、使用场景、相关概念(数据模型、myid、事务 ID、版本、监听器、ACL、角色)
参考Zookeeper 介绍——设计目的、使用场景、相关概念(数据模型、myid、事务 ID、版本、监听器、ACL、角色) ZooKeeper 设计目的、特性、使用场景 ZooKeeper 的四个设计目标ZooKeeper 可以保证如下分布式一致性特性ZooKeeper 是一个典型的分布式数据一致…...
“深入浅出”系列之C++:(11)推荐一些C++的开源项目
1. SQLiteCpp - 简单易用的Sqlite C封装库 仓库地址:https://github.com/SRombauts/SQLiteCpp 简介:SQLiteCpp是一个对Sqlite数据库进行C封装的开源库,代码行数约2,500行。它提供了简洁易用的接口,使得在C项目中操作Sqlite数据库…...
《重生到现代之从零开始的C++生活》—— 类和对象2
类的默认成员函数 默认成员函数就是用户没有显示实现,编译器会自动生成的成员函数,一个类会默认生成6个成员函数 构造函数 构造函数时特殊的成员函数,构造函数的初始化对象 函数名与类名相同 没有返回值 对象实例化的时候胡自动调用构造…...
“UniApp的音频播放——点击视频进入空白+解决视频播放器切换视频时一直加载的问题”——video.js、video-js.css
今天,又解决了一个单子“UniApp的音频播放——点击视频进入空白解决视频播放器切换视频时一直加载的问题” 一、问题描述 在开发一个基于 video.js 的视频播放器时,用户通过上下滑动切换视频时,视频一直处于加载状态,无法正常播放…...
【Pandas】pandas Series transform
Pandas2.2 Series Function application, GroupBy & window 方法描述Series.apply()用于将一个函数应用到 Series 的每个元素或整个 SeriesSeries.agg()用于对 Series 数据进行聚合操作Series.aggregate()用于对 Series 数据进行聚合操作Series.transform()用于对 Series…...
【博客之星2024年度总评选】年度回望:我的博客之路与星光熠熠
【个人主页】Francek Chen 【人生格言】征途漫漫,惟有奋斗! 【热门专栏】大数据技术基础 | 数据仓库与数据挖掘 | Python机器学习 文章目录 前言一、个人成长与盘点(一)机缘与开端(二)收获与分享 二、年度创…...
飞牛 使用docker部署Watchtower 自动更新 Docker 容器
Watchtower是一款开源的Docker容器管理工具,其主要功能在于自动更新运行中的Docker容器 Watchtower 支持以下功能: 自动拉取镜像并更新容器。 配置邮件通知。 定时执行容器更新任务。 compose搭建Watchtower 1、新建文件夹 先在任意位置创建一个 w…...
【Block总结】TAdaConv时序自适应卷积,轻量高效的时间建模卷积|即插即用
论文解读:Temporally-Adaptive Models for Efficient Video Understanding 论文信息 标题:Temporally-Adaptive Models for Efficient Video Understanding 发表时间:2023年 作者:黄子渊等 论文链接:arXiv 论文 代…...
Spring Boot 项目启动报错 “找不到或无法加载主类” 解决笔记
一、问题描述 在使用 IntelliJ IDEA 开发基于 Spring Boot 框架的 Java 程序时,原本项目能够正常启动。但在后续编写代码并重建项目后,再次尝试运行却出现了 “错误:找不到或无法加载主类 com.example.springboot.SpringbootApplication” 的…...
CSS 网络安全字体
适用于 HTML 和 CSS 的最佳 Web 安全字体 下面列出了适用于 HTM L和 CSS 的最佳 Web 安全字体: Arial (sans-serif)Verdana (sans-serif)Helvetica (sans-serif)Tahoma (sans-serif)Trebuchet MS (sans-serif)Times New Roman (serif)Georgia (serif)Garamond (se…...
Linux高并发服务器开发 第十五天(fork函数)
目录 1.fork 函数 1.1创建子进程 1.2getpid 函数 1.3getppid 函数 1.4getgid函数 1.5循环创建 n 个子进程 1.6fork后父子进程异同 1.6.1读时共享,写时复制 1.6.2fork后父子进程共享 1.6.3gdb调试父子进程 1.fork 函数 pid_t fork(void); 成功:…...
【人工智能】Python中的自动化机器学习(AutoML):如何使用TPOT优化模型选择
《Python OpenCV从菜鸟到高手》带你进入图像处理与计算机视觉的大门! 解锁Python编程的无限可能:《奇妙的Python》带你漫游代码世界 随着机器学习在各行业的广泛应用,模型选择和优化成为了数据科学家面临的主要挑战之一。自动化机器学习&am…...
探秘自然地理:从太阳到地球的奇妙之旅与灾害预警
在浩瀚无垠的宇宙中,我们的地球与太阳紧密相连,它们的奥秘和变化,时刻影响着我们的生活。今天,就让我们一同深入探索自然地理的基础知识,揭开太阳与地球的神秘面纱,同时了解那些可能给我们带来巨大影响的自…...
多场景 OkHttpClient 管理器 - Android 网络通信解决方案
下面是一个完整的 Android 实现,展示如何创建和管理多个 OkHttpClient 实例,分别用于长连接、普通 HTTP 请求和文件下载场景。 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas…...
【解密LSTM、GRU如何解决传统RNN梯度消失问题】
解密LSTM与GRU:如何让RNN变得更聪明? 在深度学习的世界里,循环神经网络(RNN)以其卓越的序列数据处理能力广泛应用于自然语言处理、时间序列预测等领域。然而,传统RNN存在的一个严重问题——梯度消失&#…...
2025 后端自学UNIAPP【项目实战:旅游项目】6、我的收藏页面
代码框架视图 1、先添加一个获取收藏景点的列表请求 【在文件my_api.js文件中添加】 // 引入公共的请求封装 import http from ./my_http.js// 登录接口(适配服务端返回 Token) export const login async (code, avatar) > {const res await http…...
【AI学习】三、AI算法中的向量
在人工智能(AI)算法中,向量(Vector)是一种将现实世界中的数据(如图像、文本、音频等)转化为计算机可处理的数值型特征表示的工具。它是连接人类认知(如语义、视觉特征)与…...
代理篇12|深入理解 Vite中的Proxy接口代理配置
在前端开发中,常常会遇到 跨域请求接口 的情况。为了解决这个问题,Vite 和 Webpack 都提供了 proxy 代理功能,用于将本地开发请求转发到后端服务器。 什么是代理(proxy)? 代理是在开发过程中,前端项目通过开发服务器,将指定的请求“转发”到真实的后端服务器,从而绕…...
springboot整合VUE之在线教育管理系统简介
可以学习到的技能 学会常用技术栈的使用 独立开发项目 学会前端的开发流程 学会后端的开发流程 学会数据库的设计 学会前后端接口调用方式 学会多模块之间的关联 学会数据的处理 适用人群 在校学生,小白用户,想学习知识的 有点基础,想要通过项…...
libfmt: 现代C++的格式化工具库介绍与酷炫功能
libfmt: 现代C的格式化工具库介绍与酷炫功能 libfmt 是一个开源的C格式化库,提供了高效、安全的文本格式化功能,是C20中引入的std::format的基础实现。它比传统的printf和iostream更安全、更灵活、性能更好。 基本介绍 主要特点 类型安全:…...
【Elasticsearch】Elasticsearch 在大数据生态圈的地位 实践经验
Elasticsearch 在大数据生态圈的地位 & 实践经验 1.Elasticsearch 的优势1.1 Elasticsearch 解决的核心问题1.1.1 传统方案的短板1.1.2 Elasticsearch 的解决方案 1.2 与大数据组件的对比优势1.3 关键优势技术支撑1.4 Elasticsearch 的竞品1.4.1 全文搜索领域1.4.2 日志分析…...
渗透实战PortSwigger靶场:lab13存储型DOM XSS详解
进来是需要留言的,先用做简单的 html 标签测试 发现面的</h1>不见了 数据包中找到了一个loadCommentsWithVulnerableEscapeHtml.js 他是把用户输入的<>进行 html 编码,输入的<>当成字符串处理回显到页面中,看来只是把用户输…...
Vue 3 + WebSocket 实战:公司通知实时推送功能详解
📢 Vue 3 WebSocket 实战:公司通知实时推送功能详解 📌 收藏 点赞 关注,项目中要用到推送功能时就不怕找不到了! 实时通知是企业系统中常见的功能,比如:管理员发布通知后,所有用户…...
