MatrixOne Git4Data 技术详解(一):海量数据的 Git 时刻

从零到一:移远EC200UCN_LA OpenCPU开发中的‘避坑’实战指南 本文详细介绍了移远EC200UCN_LA 4G通信模块的OpenCPU开发实战指南,涵盖开发环境搭建、项目构建、通信接口开发、调试技巧及固件升级等关键环节。通过避坑经验和实用技巧,帮助开发者高效完成二次开发,提升4G通信模块的应用开发效率。 阅读详情

一年前,我们在自己的开发者大会上,发布了 MatrixOne 的一项重要能力:Git4Data, 让海量数据像代码一样,能被版本控制——可以 commit、branch、diff、merge、cherrypick。一键回到过去,无代价的创建分支,协作。

过去这大半年,我们看到它开始在多个场景上生根发芽,尤其是在 AI 相关的领域,它在MLOps,Agent 的自进化,Memory 的管理上面有了很多应用实践。我们看到 Git4Data 正在成为面向可自我进化的AI Agent的Data Infra的核心底层技术,所以我们将开启一个文章系列,来说透它的能力,原理,应用场景以及业务价值。

在这里插入图片描述
Git4Data 处在 MatrixOne 与自我进化 AI Agent 之间——它们赖以运转的版本控制层。

一件被低估的事

过去三十年,软件生产力经历了一场爆炸。我们习惯把它归功于更好的语言、更快的硬件、云、框架。但其实还有一个容易被大家被忽视的,是版本控制。
严格说,版本控制不是 Git 发明的——它有一条谱系:先有 CVS,再有 SVN,最后才是 Git。但前面那些,给你的主要是
“历史”和“撤销”:你能回到过去某一版,却很难轻松地岔出一条分支、改完再合并回来。在 SVN 里开分支、做合并,是一件
昂贵又痛苦的事,于是大多数团队能不开就不开。真正的跃迁发生在 Git:它把开分支和合并的成本,降到了几乎为零。
正是这一步,把版本控制从“一个存放历史的地方”,变成了“一种大规模并行协作的媒介”。

于是写软件这件事,从一门孤独、危险、串行的手艺,变成了一种可以工业化、规模化、而且无所畏惧的协作。说到底,
它做成了两件事:把“犯错的成本”降到接近零——错了就回退;把“并行的成本”降到接近零——各开各的分支,最后合并。
注意这里的次序:第一件,SVN 时代就大致有了;而真正点燃协作大爆炸的,是第二件。

正因为犯错可逆、并行不互踩,今天才会有上亿素未谋面的开发者,跨时区、跨公司,并发地共建同一套代码——Linux、
整个开源世界,都建立在这个前提之上。在 Git 之前,这是不可想象的。

这里藏着一条“底层规律”:一个领域,一旦同时拿到“廉价的可逆”和“廉价的并行”,就会发生一次相变——从手艺
变成工业,从个人变成协作,从少数变成规模。代码经历过这次相变。而软件工程师面对的另一半——数据——还没有。

数据,还活在 Git 之前——因为它太大了

软件工程师每天面对两样东西:代码,和数据。在 AI 时代,数据的分量甚至已经盖过了代码。但这两样东西的工作方式,
停在两个完全不同的年代。

代码这一半,二十年前就被 Git 接管了。数据这一半,至今还活在更早以前:改生产数据前,先手动复制一张备份表,
然后祈祷;出了事,翻出六小时前的备份、半夜叫醒 DBA;几个人要改同一份数据,靠“你先别动、我改完叫你”。

说得更准一点:今天的数据库,大多还停在“SVN 时代”。 备份、时间点恢复(PITR)这些,给了你“历史”和“撤销”
——能把库退回过去某一刻;但它们给不了你廉价的分支与合并:你没法轻松地从“昨天下午三点那个状态”岔出一条活的、
能写的分支,在上面做实验,再把成果合并回主线。它们是数据库的 SVN,不是数据库的 Git。

数据为什么一直没拿到这个原语?不是没人想做,而是它太大了。Git 那套办法,是把整个文件读进内存来做 diff 和
merge——文件小,没问题;可数据动辄几亿行、上 TB,“读进内存”在这个尺度上直接失效。于是过去十五年,“一切皆可
as-code”——基础设施、配置、流水线、策略——几乎征服了整个技术栈,唯独漏掉了最大、也最重要的一块:海量的
数据本身。它成了版本控制这套纪律之外,最后的化外之地。

真正难的,是在海量上还便宜

填上这块空缺,数据就拿到了代码二十年前就拿到的三样东西:一扇任意门——出了事,一条 SQL 回到过去的任意一刻;
一个多元宇宙——拿真实生产数据岔出一条平行分支,跑危险改动、做实验,主线毫发无伤,不要了直接丢;一块
协作画布——一群人各开分支并行改,改完看 diff、合并、冲突自动裁决,就是你天天在 GitHub 上走的 PR 流程,
只不过改的是数据。

在这里插入图片描述
任意门、多元宇宙、协作画布——分支、合并、回退,用 git 的提交图画出来,只不过对象是表。

这些动作,本身都不新。新的是:它们终于能在一个扛得住生产的数据库里,对海量数据、以接近零的代价发生。
MatrixOne 把它们做成了普通 SQL:

CREATE SNAPSHOT before_update FOR TABLE db1 users;   -- 存档,相当于 git commit
UPDATE users SET status = 'inactive';                -- 手滑,忘了 WHERE
RESTORE TABLE db1.users{snapshot="before_update"};   -- 回去,相当于 git reset --hard

注:本文 SQL 语法基于 MatrixOne 4.0 版本。

它之所以便宜到让你愿意随手就用,靠的和 Git 是同一个把戏:开分支不复制数据,只记一个指向现有数据的指针。所以
——给一张 6 亿行的表开一个完整分支,0.2 秒,多占 314 KB。不是优化得好,是它压根没搬数据,所以开销与
数据有多大无关。

在这里插入图片描述
开分支只记一个指针,不复制数据——所以克隆 6 亿行只要 0.2 秒、314 KB,而不是 114 秒、34 GB。

这正是关键:难的从来不是版本控制本身,而是在海量数据上还能让它廉价。 在一张表只有几万行时,怎么做都行;
在几亿行、上 TB 时,还能让快照、克隆、行级 diff 和 merge 都是秒级、近乎零成本——这才是过去没人迈过去的那道坎。
Git4Data 之于数据库的备份,正是当年 Git 之于 SVN 的那一跃:从“能回到过去”,到“能在海量数据上廉价地岔出
无数条平行的现在、再合并回来”。

Git4Data 对现在整个行业的价值

一个诚实的问题:数据没有 Git,也凑合了三十年,为什么偏偏现在要紧?

因为生产和编辑数据的,正在从人,变成 AI。
过去,数据由少数小心的人、缓慢地改。今天,海量的数据由成群的、持续运转的、会犯错的 agent 在生成和修改。而
agent 的三个本质特征——自主、会犯错、需要并行探索——恰恰就是当年 Git 被发明出来、为管理人类开发者而要解决的
那三件事。

一个没有版本控制的 agent,只有两个结局:要么鲁莽,不可逆地乱改;要么瘫痪,什么都不敢动。当数据的修改者从“人”
变成“机器群”,规模和频率都上一个数量级,branch / merge / rollback 对数据,就从“一个利于复现的好功能”,升级成了
“这件事能安全成立的唯一前提”。

所以,让海量数据可版本化,不只是补上一笔三十年的历史欠账。它是 AI 时代数据基础设施的前置条件:智能体要
安全地、可回溯地、能协作地操作数据,数据本身就必须先是可版本化的。

总结

Git 用三十年证明了一件事:当你给一个领域装上“廉价的可逆”和“廉价的并行”,它不会线性变好,而会加速的指数级上升。代码经历了这个相变,结果是整个开源世界和我们今天所知的软件工业。

现在轮到数据,而且是海量的数据。这一次,踩下油门的不只是人,还有 AI。

接下来,我们的系列文章会把MatrixOne彻底打开,讲清楚它在底层是怎么把 TB 级数据的
版本做到豪秒级的:快照、克隆、行级 diff 与 merge 的实现原理;再之后,我们再看看这些git原语是如何用在数据运维、模型训练、agent 进化、memory 管理的场景上的。

基于 YOLOv26 的陶瓷产品缺陷检测系统:智能视觉质检方案 本文提出了一种基于YOLOv26深度学习模型的陶瓷产品智能缺陷检测系统。该系统针对陶瓷生产中的裂纹、气泡、釉面缺陷等8类常见质量问题,采用YOLOv26目标检测算法实现高精度自动化检测。系统架构包含数据采集、预处理、YOLOv26检测和后处理四个模块,具有多类别分类、实时推理和强鲁棒性等技术优势。文章详细介绍了数据预处理与增强方法,并提供了Python代码实现示例。该方案可显著提升陶瓷产品质量检测效率,替代传统人工检测方式,为陶瓷制造业提供智能化质检解决方案。 阅读详情

相关推荐

NVMe与PCIe的完美结合:高速存储背后的技术解析

本文深入解析了NVMe与PCIe技术如何完美结合,实现高速存储性能的飞跃。从机械硬盘到NVMe SSD的进化历程出发,详细介绍了PCIe总线的高带宽优势与NVMe协议的低延迟设计,以及两者协同工作带来的显著性能提升。通过实测数据对比,展示了NVMe SSD在消费级和企业级应用中的卓越表现,并提供了选购与优化建议。

weixin_29216353的博客 377

# MatrixOne Git4Data 技术详解(八)·AI 训练实践篇:从数据进入到模型迭代——Git4Data 能力如何贯穿机器学习全流程

Git4Data 系列(八),AI 训练实践篇开篇:先建立机器学习全流程的坐标系。从数据接入、质量门禁、清洗标注、特征工程、训练/验证/测试集发布、模型评估,到上线监控与反馈重训,逐环节说明 snapshot、branch、diff、merge、cherry-pick、restore 与 PITR 能解决什么、不能解决什么,并以一个持续迭代的风控模型完整串联。配套脚本在 MatrixOne 4.1.0 上实测。

MatrixOrigin的博客 429

科研党必备:用MATLAB批量处理.mat文件数据的3种高效方法

本文为科研人员提供了使用MATLAB批量处理.mat文件数据的三种高效方法,涵盖智能数据加载、专业可视化与自动化报告生成。通过构建自动化框架、多维度数据画图策略及批量处理流程,帮助用户显著提升数据处理效率与图表专业性,解决海量实验数据的管理与分析难题。

weixin_29089057的博客 75

MatrixOne Git4Data:为机器学习数据管理打造可执行、可审计、可复现的版本链

清洗与标注环节,先打快照,标注员各自开分支,处理重叠标注区冲突,资深评审员挑回争议样本,标注平台与 Git4Data 能力分工明确;训练、验证、测试集发布环节,不仅要冻结数据,还要明确切分成员关系与规则,采用库级快照发布,可复现样本角色,新版本发布前需分别 review 样本内容和切分成员关系;实际管理中存在诸多难题,背后反映出机器学习缺乏作用在数据本身的版本语义,MatrixOne 的 Git4Data 能力可填补这一缺口,本文先建全流程地图,后续深入典型节点。Branch 用于隔离未证明正确的假设;

IT界那些事儿 16

(实战)[re:Invent 2018]-001:赛道分析-(致敬1024)

打印log

Rainbow 2784

第11节:GPU 线程层级:线程、线程块、网格

层级标识变量功能线程threadIdx执行单元,处理数据线程块blockIdx管理多个线程,提供共享内存网格管理多个 blockGPU 编程中,合理安排线程层级,是提升性能的关键。

yumeiguo的博客 212

基于WAP模式与Git4Data构建安全可靠的ETL数据发布门禁

在数据工程领域,ETL(提取、转换、加载)流水线是数据仓库与数据湖的核心组件,负责将原始数据转化为可供分析使用的可靠数据资产。其核心原理在于通过一系列预定义的转换规则,对数据进行清洗、整合与加工。这一过程的技术价值在于保障下游数据分析、商业智能(BI)报表及机器学习模型的输入质量,是数据驱动决策的基石。然而,直接将未经校验的数据写入生产环境存在巨大风险,可能引发数据污染与业务决策失误。为此,Write-Audit-Publish(WAP)模式应运而生,它通过引入一个隔离的审计缓冲区,在数据最终发布前进行系统

weixin_33947521的博客 379

向华为学习——解读158页 华为敏捷园区网技术解决方案【附全文阅读】

华为敏捷园区网解决方案通过策略随行和体验随身技术,满足移动办公场景下的网络需求。该方案采用敏捷交换机和防火墙自动执行策略配置,实现用户身份认证与业务策略的无缝衔接,且策略配置与IP地址解耦,简化了管理流程。相比传统技术,该方案有效解决了用户分级、QoS保障、无线接入等关键问题,确保用户在移动过程中获得一致的网络体验。

cdfunlove的博客 381

MatrixOne未来展望:超融合数据库如何重塑云边计算

MatrixOne作为一款AI原生的超融合数据库,凭借其独特的HTAP(混合事务/分析处理)架构和Git-for-Data特性,正在成为云边计算时代的关键基础设施。它通过云原生化和存储、计算、事务分离的架构构建HSTAP超融合数据引擎,实现单一数据库系统支持OLTP、OLAP、流计算等多种业务负载,为智能代理和应用提供数据与内存支持。 ## 超融合数据库:打破传统数据壁垒 在传统数据架构中,O

gitblog_00707的博客 378

C#构建高精度预测模型:从数据预处理到模型部署的实战指南

【代码】C#构建高精度预测模型:从数据预处理到模型部署的实战指南。

墨夶的博客 1266

cesium 气象云(体积云)

本文介绍了基于Cesium的气象云渲染技术方案,其核心是通过GPU加速的光线投射算法实现气象云的三维可视化。方案采用分层架构设计:GPU计算层由顶点着色器和片段着色器组成,负责光线投射计算、3D纹理采样和颜色映射;CPU控制层处理数据预处理、纹理创建和参数配置。关键技术包括:顶点着色器计算相机位置和光线方向,片段着色器实现光线步进采样、颜色映射和半透明混合。该方案高效解决了气象数据与地理场景的融合问题,支持云图、温度场等复杂三维气象数据的实时渲染,具有高真实感和良好性能。

God's asylum的博客 1205

Windows开发工具环境管理:Git、Node.js、Python多版本与PATH冲突排查

Windows开发工具安装成功却无法运行,或始终调用错误版本?本文围绕Git、Node.js、Python及Codex CLI,系统讲解PowerShell命令解析、PATH环境变量、版本管理器冲突、npm脚本入口、Python install manager与虚拟环境管理。通过可复制的排查命令、Mermaid流程图、只读诊断工具和离线PATH实验,帮助开发者建立稳定、清晰、可复现的Windows开发工具链。

flyingonpine的博客 721

【计算机视觉 | MMDetection】关于mmdetection如何计算参数量、计算量和速度FPS

【计算机视觉 | MMDetection】关于mmdetection如何计算参数量、计算量和速度FPS

wzk4869的博客 3022

AI应用-多人AI协作越界处理

AI加速开发催生越界问题:多人协作中,AI因无视代码所有权而“顺手”修改他人文件,引发静默破坏、冲突与信任危机。根源在于AI无边界意识、改动生成快、评审难覆盖。治理需三道防线:事前用OWNERS.md明权责,事中通过本地Git Hooks实时提醒越界,事后以平台MR流程强制负责人评审。双方案结合,实现“提交即提醒、合入必审批”,在效率与安全间建立可持续协作机制。

325

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

[LLM Wiki理论与实践-05]解读OpenWiki的Personal模式构建的知识库目录结构

[LLM Wiki理论与实践-04:使用OpenWiki的Personal模式构建知识库]介绍了如何执行安装OpenWiki和通过执行`openwiki personal --init`命令以个人模式进行初始化,最终调用`openwiki personal --update`和`openwiki ingest`命令利用配置的Connector加载外部数据源来生成构建个人知识库的Wiki页。这篇文章我们就来看看采用OpenWiki的Personal模式构建的知识库对应目录的结构以及具体文件的内容。

JaydenAI的博客 371

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

自建 Git 服务器和裸仓库差在哪:要能提合并请求

在一台 Linux 上 git init --bare 就能自建 Git 服务器,但它只能推拉代码,没有网页、合并请求、评审和按仓库分配的权限。对照裸仓库和 AngusGit 各自能做什么,再走一遍在 AngusGit 上发起合并请求的最短路径,以及已有裸仓库怎么完整搬过来。

AngusTester 334

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

重装 openvino、yaml-cpp

【代码】重装 yaml-cpp。

u010948546的博客 223

手机远程能开PowerShell、Git Bash吗?ToDesk v5.3.0.0 远程终端三种玩法

手机远程控制电脑,能直接打开 PowerShell 和 Git Bash 吗?ToDesk v5.3.0.0 带来了更便捷的远程终端操作体验。本文围绕远程终端的三种实用玩法展开,介绍如何通过手机远程连接电脑、使用 PowerShell 执行系统命令、借助 Git Bash 进行代码管理,以及多终端操作的应用场景,帮助你了解远程终端的使用方法,提升远程办公、开发调试和日常运维效率。

承于所学,探技术之渊;以代码求政,寻成长之道。 2万+

【git原理与使用】git基本操作及底层原理(二)

此时我们发现,现在这个目录下就只有readme这一个文件了,并且readme里面的内容也只有最初的第一行了(因为工作区也回退了),git log也只打印了第一次的提交了!当前我们的版本库中是没有更新readme的这次修改的,所以当前版本库的这个版本就是没有发生修改的版本,那不这次readme文件修改之前的版本嘛。通过上一篇文章的学习,我们知道了 Git 有工作区、暂存区和版本库。如果有一天你发现之前的工作做的出现了很大的问题,需要在某个特定的历史版本重新开始,这个时候,就需要版本回退的功能了。

m0_70980326的博客 165

自建git服务器需要安装什么套件,需要web应用吗?

自建 Git 服务器的方式有很多种,是否需要 Web 应用取决于你想要的协作体验和功能复杂度。如果你只需要“能 push / pull 代码” → 不需要 Web 应用​。👉 结论:如果你只是想三丰云“有个地方放代码”,完全不需要 Web 应用。如果你需要“团队协作、权限、PR、Issue” → 需要 Web 应用。二、进阶方案:免费云服务器做带 Web 界面的 Git 服务(推荐)一、最简方案:只用 Git 本身(不需要 Web 应用)五、是否需要 Web 应用?✅ 方案二:GitLab(功能最强)

xinhuanjieyi的博客 164

SAP abapGit 实战(三):把改动上传到 Gitee,单分支提交与多分支 PR 协作

回到 Gitee 仓库首页,在「近期动态」里可以看到刚刚提交的记录(示例:提交到 feature/test 分支,54ab379..664057c)。点击该提交即可跳转查看具体改动内容。在 SAP 里打开之前拉下来的对象,随便改一点内容(本文示例给函数模块 ZCM_APPEND_BUTTON 加了一段注释和局部变量声明),用来产生一个可提交的改动。,可以看到 LOCAL(SAP 本地)与 REMOTE(Gitee)的内容对比,改动的行会高亮显示。切到目标分支并执行 pull,系统里的对象变成该分支的状态。

qq_43773123的博客 122

git配置项目子模块

java 的常规依赖通常是采用maven的方式进行操作的,但这次采用的方法是直接使用git submodules进行配置。方式A\方式B都需要将依赖 libs 子模块 (lasp-common-all) 中的公共模块 放到 pom。等同于在libs 下,另外新增了一个git管理的 lasp-common-all项目。

日日留心的技术专栏 146

活动回顾 | AtomGit × 模力无限 AI Meetup 珠海第一颗星,点亮了

有人往商业场景多走一步:小程序「铸履」首页写着「为你的脚,定制一双鞋」,3D 打印、一人一版,底下挂着 AI 试穿和健康档案。(中山市湖银人工智能科技有限公司 CEO、澳门科技出版社 AI 发展部副主任)讲《如何使用 AI 进行创业:AI 浪潮之下,如何一人成军》,把「一人成军」拆成十章:AI 是超级学习机、是放大工具、也能帮你创造新工具,最后串起学习、生产、销售、分析、优化的五维闭环。四个小时里,四场分享、一场一小时的工作坊、十个 Demo、五位上台的小伙伴,和一次全场投票。这一次,两家把坐标落在珠海。

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 254

git submodules

后续相当于直接 git 操作 submodules-remote-url。cd 到 submodule/

日日留心的技术专栏 21

点过“不再询问”就要检查:Claude Code权限文件也可能存着密钥

Apiiro报告揭示带密钥的命令可能进入Claude Code权限文件。结合独立Git实验,解释local配置、忽略规则与历史泄露的区别,以及发现问题后的处理顺序。

2301_76711398的博客 205

Anthropic 弃用 Git 自建源码控制系统 · 11-11

今天值得看的 Anthropic 扔掉 Git 自建源码控制:Claude 写代码太快,给人设计的开发工具成了瓶颈 Gemini 4 Carbon 接入 GitHub Copilot,专攻复杂编码、agent 和安全场景 GitHub 新存

a112746的博客 162
上一篇: 向量索引入核,驾驭亿级向量数据:MatrixOne × NVIDIA cuVS GPU 加速实践
下一篇: MatrixOne Git4Data 技术详解(二):从零跑通所有 Git 原语
MatrixOrigin
博客等级 码龄5年 708粉丝 230原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值