MatrixOne存储优化:HTAP场景下的智能存储优化策略

性能优化实战:当向量库超过 10 万行,如何把检索延迟压到 50ms 以内? 本文系统优化 pgvector 向量检索性能,针对 10 万行数据下查询延迟高达数百毫秒的问题,通过四步优化:选用 HNSW 索引、调优 ef_search、用内积替代余弦距离、结合过滤索引,将延迟从 280ms 降至 3ms 以内。实测表明,合理选型与参数配置可实现毫秒级响应,满足实时场景需求,并附避坑指南,强调索引适用阈值与维护策略。 阅读详情

​

 类 LSM(Log-Structured Merge Trees)数据库通常依赖数据合并清理存储空洞、降低文件重叠度以维持数据有序性,提升查询效率。现有的合并调度技术普遍采用固定阈值触发策略或人工干预机制,通过直方图统计文件重叠情况(如点深度pd的离散区间分布)。

然而,这些方案在面向 HTAP(混合事务/分析处理)场景时面临显著缺陷:

  1. 对非 KV 场景维护自动化不足:传统方法过多依赖数据库管理员手动识别合并时机并触发任务,尤其非 KV 场景下,落盘文件大小不可控时,运维负担剧增;

  2. HTAP 场景适配薄弱:TP 数据的频繁随机更新导致数据分布快速劣化(空洞率与重叠度激增),同时低密度数据流入下层引发连锁合并,造成过量写放大;

  3. 数据分布表征低效:常用直方图需至少16个参数描述文件重叠状态,参数冗余且无法还原分布形态特征(如峰值位置、波动趋势),导致运维决策缺乏精准依据。

因此,上述缺陷严重制约了数据库在HTAP场景下的自动化运维能力与资源利用效率。Matrixone 通过以下四个方面,对存储优化做出改进:

  1. 改进的 merge 策略,通过引入独立 0 层、跨距、空洞分析等概念,控制 HTAP 场景下的写放大,同时保证数据的健康程度

  2. 基于事件驱动的 merge 调度,一方面避免轮询开销,对活跃的表更加聚焦,另一方面对运维交互支持更加灵活

  3. 基于多项式拟合的数据表征。通过线性拟合代替直方图,在参数更少的情况下,可以更直观地展示数据重叠的分布形态,峰值位置,波动趋势等信息

  4. Merge 模拟器,通过采集和模拟两个步骤,可以根据实际数据进行实验,持续改进 merge 策略。

优化策略

在介绍 Matrixone 当前优化策略之前,需要澄清一些概念。首先是业界中已有的概念:

  • 数据文件:储存写入数据的文件。每个文件的元信息存有该表排序键的最大值和最小值。元信息一般常驻内存。

  • Merge 文件层级:数据文件按层组织。随着层级上升,预期单个文件的最大值和最小值的差距会更小,变得更加紧密。

  • 文件重叠:两个文件的最大最小值的区间存在交集。

  • 点深度(point depth,简称 pd ):对于含有多个文件的表,某个点值的深度,定义为该值贯穿文件的数量。对于单个文件,pd 定义为考虑它包含的全部值的深度,取最大值。与其它文件无重叠的单个文件,pd 为 1。

  • 重叠度(overlap count,简称 oc):和文件有重叠关系的文件数量。与其他文件无重叠的单个文件,oc 为 0。

  • 常量文件:文件的最大值和最小值相同,这样的通常不再参与数据合并,这已经是最紧密的状态。

其次是在 Matrixone 的针对 HTAP 场景改进后新增的概念:

  • 0 层:在 Matrixone 中,会把表数据尽可能组织成 128 MB 的文件,更小的文件会放在 0 层,0 层采用独立的 merge 策略。

  • 聚簇(cluster):在同一个层级中,一组文件和另一组文件完全没有重叠,它们各自是一个 cluster。

  • 跨距(span):$span = \frac{oc}{pd}$,并且根据 span 值将文件分为宽(10 < span)、中(2 < span < 10)、窄(span < 2)三个等级。

  • 墓碑文件空洞率:墓碑文件(tombstone) 记录了数据文件中哪些行被删除。如果行对应的数据文件本身已经被删除,称为未命中。未命中行会形成墓碑文件的空洞。所以 $$ vacuumPercent = \frac{missedRowCount}{totalRowCount} $$

  • 数据文件空洞分数:数据文件的行被删除,也会形成空洞。在计算数据文件空洞率时,需要考虑到 merge 的可能性。如果这个文件很容易触发正常 merge,则没有必要专门处理它。所以考虑两个因素,大小和层级。大小越小,层级越低,都越容易 merge。所以将这两个因素权重设置为 50%,按如下公式计算数据文件分数,其中默认 MaxSize = 128 MB,MaxLevel = 8 $$ vacuumScore = \frac{DelRowCount}{RowCount}\left( 0.5\frac{Size}{MaxSize} + 0.5\frac{Level+1}{MaxLevel}\right) $$

0 层:平衡写放大和小文件数量

因为 Matrixone 按照表级别组织数据,目前无法像 KV 存储一样固定内存中 memtable 的数量,受限于此,也就无法保证从内存中刷盘的文件大小。为了避免出现的小文件和大文件进行合并,增加写放大,于是设置 0 层专门处理小于 128 MB 的文件。另外,也需要保证及时合并,避免小文件过多,导致元数据处理时间增加以及 IO 碎片化,影响查询效率。

0 层合并的策略如下: 1. 该层的所有文件的内存大小超过 128 mb,立即执行 merge,确保及时性。 2. 0 层中允许的最大文件数量,随着距离上次 merge 的时间衰减,从而避免过于频繁的 merge,并且确保在有负载的情况下,尽可能累积更多小文件,减小写放大。衰减过程如下: - 初始值 32,终点值 1,衰减全程为 1 小时 - 衰减过程由 (0,0),(0.70, 0.0), (0.0, 1.0), (1,1) 控制点表示的贝塞尔曲线控制

通过动态衰减机制平衡双重目标:前期允许累积小文件减少合并频率(降低写放大),后期强制收紧阈值避免元数据膨胀影响查询效率。

跨距决定组件传递:避免数据分布扰动

0 层以外,merge 的默认策略为: 1. 每层遍历数据文件,识别出全部最大 pd 大于等于 3 的 cluster。 2. 对于每一个 cluster,将其中数据文件分为宽距、中距、窄距三组,每组中的数据文件个数大于等于 3,则收集为一个任务。并且只有窄距组 merge 任务产生的数据文件放置到下一层级,宽距和中距的 merge 产物继续留在当前层 3. 一次 merge 分析产生的多个任务均可以支持并发执行。

由于 Matrixone 中大部分数据文件为 128 MB,span 值和文件数据紧密程度成反比。只有当窄距组 merge 产生的数据文件,符合密度更高的预期,可以放入下一层。反之,当密度更低的数据进入下一层,会引发下一层大量文件的 pd 大于阈值,触发任务,这样的触发会继续传导,直到在最后一层内反复执行,产生无意义的 merge 消耗,导致非常严重的写放大。通过分组,避免数据文件的密度下降规避连锁反应,大量减少写放大。

如下图中,a组表示宽距和窄距混合 merge,并没有产生密度更大的数据文件,反而将本来紧密的数据分散到新数据文件中,稀释了密度。b组中宽距和宽距 merge,高密度的数据文件从两端挤出,留在当前层等待下次 merge。c组中窄距与窄距 merge,形成了更高密度的文件,可以推往下一层级别

空洞分析:更主动的冗余清理

相比数据文件,tombstone 的 merge 策略相对简单:

  1. 小于 8 MB 的文件每 4 个合并一次

  2. 大于 8 MB 的文件每 2 个合并一次

  3. 大于 128 MB 的文件等待空洞分析处理

空洞分析涉及 IO,需要读取完成的 tombstone 内容,因此需要避免频繁调用。目前的触发策略是:

  1. 当一个表每累积 4 次超过 120 MB 的 merge 任务时,触发一次空洞分析。这里的考量是,空洞分析主要应对大 tombstone,只有数据文件被删除时,才有比较大的概率快速提升这些 tombstone 的空洞率。所以通常把注意力放在 0 层以外发生的 merge 上,不过存在一种特殊情况,如果写入的数据完全有序,比如排序键是自增列,这种情况下,0 层以外不会产生 merge,但依然要求对数据空洞做出分析,否则更新累积出的大 tombstone 得不到处理。

  2. 全局每隔 1 小时对全部表做一次空洞分析,这作为一个兜底策略存在。

空洞分析计算该表的两项数据,墓碑文件空洞率以及全部数据文件的空洞分数。

  1. 如果墓碑文件空洞率超过 50%,触发合并全部墓碑文件,清除空洞。

  2. 选择数据文件空洞分数大于阈值的单个文件进行独立 merge,清除空洞,该操作称为 compact。阈值随着 tombstone 最长存活时间线性衰减,因为一个 tombstone 存在的时间越长,越有清除的动机,方式就是通过更多的 compact 提升 tombstone 的空洞率。线性衰减的初值 60,终值 10,时长 40 分钟。触发 compact 后,因为删除一部分数据文件,tombstone 的空洞上升,超过 50 % 后会触发条件 1,最终达成整体的空洞率变低。

Merge Scheduler

Merge Scheduler 由事件驱动,调度器主体是两个处理 goroutine,一个用于处理事件循环,一个用作 IO 处理。

其中 IO 循环,用于处理空洞检查,避免阻塞事件循环。

事件目前有三个消息来源: 1. 包含待执行表的优先队列,排序键为到期时间。当优先队列中的表到期,做 merge 分析,创建任务,如果一次分析后,没有任务产生,将该表的下一轮到期时间加倍,否则保持默认 5 s 后。 2. 消息管道收到的消息。这些消息将调整表在优先队列中的位置,或者执行一些辅助状态的读取和更新。 - 比如一个表新建了 5 个 object,应该将该表向队列头部移动,及时分析是否需要 merge。 - 手动触发任务,把表提到队列头部,并更新分析需要的辅助参数。常用于内部空洞率相关任务触发。 3. 固定心跳。10 s 一次,强制查看优先队列中是否有表可以处理,避免异常逻辑导致分析遗漏。同时也会刷新内存、cpu 等资源信息,作为任务生成的限制。例如,当任务预估内存使用超过限制,主动将参与文件减半,直到满足内存限制,或者文件清空,任务取消。

基于多项式拟合的可视化

现有数据库,如 Snowflake,在表征文件重叠情况时,多采用直方图的形式,记录 pd 在 (0, 1, 2,..., 15, 16, 32, 64, ... 2^n) 区间内的文件个数。这样的表征方式输出参数多,至少 16 个参数,并且失去了重叠的形态信息。

Matrixone 使用多项式拟合的形式展现重叠情况。默认配置下,通过 4 次多项式 $pd(x)=a_{0} +a_{1}x+a_{2}x^2 +a_{3}x^3+a_{4}x^4$ 函数拟合文件的 pd 序列 (按照文件排序键最大值排序),输出的参数只有 5 个浮点数,显著少于直方图的 16 个,并且通过绘图代码,可以复原出拟合图形,更直观地看到数据分布状态。如下图,通过函数拟合替换传统直方图,将 2800 个文件的“位置-pd”序列转化为连续曲线,仅用 5 个参数,直观展示了数据重叠的分布形态,峰值位置,波动趋势等信息,例如曲线两端的峰值表示重叠集中在排序键取值区间的两侧,可以大约这部分是是数据密集写入的区域。

Merge Simulator

在 Matrixone 中,为持续迭代 Merge 策略,内置了一个模拟器,方便对策略在实际数据上的表现做初步的评估。

该项功能主要分为数据采集和模拟两个部分。

日志采集

在日常运行中,可以利用内置的运维命令,打开对特定表的 trace 功能。该功能通过日志记录两种事件,第一,生成新 0 层数据文件(TN 刷盘或者 CN 直接提交)。第二,生成新 tombstone 文件(TN 刷盘或者 CN 直接提交)。在记录 tombstone 时,还会分层统计以下信息:

  1. 命中 object 的数据

  2. 命中 object 数量占当前层的比例

  3. 命中行数在 object 中的平均数

  4. 命中行数在 object 中的方差

模拟

模拟的主要通过替换底层的时钟实现,加速 merge scheduler 能感知的时间流速。下面的例子中,利用单测对 TPCC 100 仓中的 stock 表进行了模拟,实际测试时间 30 分钟。代码中 player.ResetPace(10*time.Millisecond, 3*time.Second) 设置了现实时间和模拟器时间 1:300 的比例。ExtractFromLokiExport 将从日志采集的结果中分析出 object 和 tombstone 两类事件,作为模拟器的驱动源。

func TestSimulatorOnTPCC100Stock(t *testing.T) {
	player := NewSimPlayer()
	player.ResetPace(10*time.Millisecond, 3*time.Second)
	sdata, stombdesc, _ := ExtractFromLokiExport("tpcc100-stock.json", player.sclock.Now())
	player.SetEventSource(sdata, stombdesc)
	player.Start()
	defer player.Stop()
	player.WaitEventSourceExhaustedAndHoldFor(3 * time.Minute)
	t.Logf("report: %v", player.ReportString())
}

最终的模拟结果通过一下输出展示,主要分为两个部分,第一个部分是总体统计数据,比如可以重点关注到,data 生成事件总共 233 个,merge 次数 47,写放大为 1.3,tombstone 生成事件总计 189 个,merge 次数 76,写放大为 6.2。第二部分是每一层的重叠统计,以及空洞情况的展示。

report: {
      "next_sched_check": "1m20s",
      "last_merge": "2m48s",
      "last_vacuum_check": "6m21s",
      "vacuum_check_count": 9,
      "input_data_size": "9.226GiB",
      "input_tombstone_size": "456.6MiB",
      "data_merged_size": "12.03GiB",
      "tombstone_merged_size": "2.778GiB",
      "data_wa": 1.3035256492867446,
      "tombstone_wa": 6.230343106859288,
      "data_merge_count": 47,
      "tombstone_merge_count": 76,
      "data_source_progress": "233/233",
      "tombstone_source_progress": "189/189"
}
level 0 basic stats  : Count: 6, AvgSize: 20.84MiB, AvgRows: 36911, OSizeDist: [0 0 0 0 0 6 0 0], Tolerance: 32
level 1 overlap stats : AvgPointDepth: 2.29, AvgOverlapCnt: 2.24, Obj(s,c,u): 42-0-0, EventsCnt: 84, Clusters: [{2 3}]
level 2 overlap stats : AvgPointDepth: 2.00, AvgOverlapCnt: 1.20, Obj(s,c,u): 5-0-0, EventsCnt: 8, Clusters: []
level 3 overlap stats : AvgPointDepth: 1.00, AvgOverlapCnt: 0.00, Obj(s,c,u): 2-0-0, EventsCnt: 4, Clusters: []
level 4 overlap stats : AvgPointDepth: 1.69, AvgOverlapCnt: 0.92, Obj(s,c,u): 13-0-0, EventsCnt: 18, Clusters: []
level 5 overlap stats : AvgPointDepth: 1.00, AvgOverlapCnt: 0.00, Obj(s,c,u): 2-0-0, EventsCnt: 3, Clusters: []
level 6 no data
level 7 no data
vacuum stats : TotalSize: 341.8MiB, TotalRows: 5600250, HistoSize: [0 0 0 0 0 0 0 3], HistoCreateAt: [0 1 2 0]
     HistoVacuumScore: [25 42 0 0 0], 
     DataVacuumPercent: 35.40%, 
     DelVacuumPercent: 6.40%, 
     DataVacuumScoreToCompact: 25
     TopHollow[0]: 201056fdc75d_0, 127.9MiB, lv1, 35
     TopHollow[1]: 552524a808ed_0, 127.9MiB, lv1, 35
     TopHollow[2]: 9ed39b7850c6_0, 129.5MiB, lv1, 35
     TopHollow[3]: 24f1015143e9_0, 129.5MiB, lv1, 35
     TopHollow[4]: 82b2c3de1e65_0, 127MiB, lv1, 35
     TopHollow[5]: 51a08df26c0c_0, 127MiB, lv1, 35
     TopHollow[6]: 92e6055e0cfc_0, 129.5MiB, lv1, 37
     TopHollow[7]: 15f2772060a0_0, 129.5MiB, lv1, 37
     TopHollow[8]: ee51be10380f_0, 127.1MiB, lv1, 37
     TopHollow[9]: 092d66e5b599_0, 129.5MiB, lv1, 38

通过模拟,一方面是对调度功能的测试,另一方面,也能初步看到策略在现实数据上的表现。但必须承认的是,目前的 merge simulator 还处于一个基础的阶段,对现实的反应并不准确。比如对 tombstone 而言,现在的采集和模拟没有准确刻画 tombstone 的数据分布。目前只是简单地用正态分布进行表征,删除命中的 object 也是随机选择;模拟数据合并时,也是将数据进行平均分布,并没能反应数据密集和稀疏的倾向。这些都是后续改进的方向。

​

Linux系统搭建OpenClaw(原Clawdbot)全流程指南 最新版 工具定位:开源个人 AI 助手,支持文件读取、命令执行、多渠道交互(Telegram / 本地终端等);系统要求:主流 Linux 发行版(Ubuntu/Debian/CentOS 等),Node.js ≥22(核心依赖);安全提示:OpenClaw 为测试版,具备高权限操作能力,建议使用非主力机,配置权限白名单,避免接触敏感数据。 阅读详情

相关推荐

京瓷扫描驱动安装_京瓷喷头拆解和供墨原理剖析

在工业喷头打印领域,京瓷喷头作为主流喷头广泛应用于喷墨行业,目前京瓷喷头市面上销售主要有两个系列:KJ4A和KJ4B。其中KJ4A系列设计是用于油性墨水,例如UV墨水,主要用在广告领域;而KJ4B设计用于水性墨水,例如活性、分散墨水等,主要用在数码印花领域。最近我们团队对京瓷喷头进行了拆解分析,本期和大家分享一下我们对京瓷喷头拆解和喷头供墨原理的研究。京瓷喷头介绍1. KJ4A系列(油性)如下图所...

weixin_39883906的博客 1677

MatrixOne性能优化技巧:10个提升查询效率的实战方法

MatrixOne作为AI原生的HTAP数据库,融合了Git-for-Data特性与内置向量搜索功能,是智能应用的数据与内存核心。本文将分享10个实用的性能优化技巧,帮助你显著提升MatrixOne的查询效率,让数据库处理更快速、更稳定。 ### 1. 优化索引设计:提升查询速度的基础 索引是提升查询效率的关键。在MatrixOne中,合理设计索引可以大幅减少数据扫描范围。建议为频繁查询的字段创

gitblog_01072的博客 543

海康/大华设备如何接入GB28181平台?最新2022版互联避坑指南

本文详细解析了海康/大华设备接入GB28181平台的最新2022版互联避坑指南,涵盖参数配置、实时视音频点播协议交互及典型故障排查。重点介绍了GB/T28181-2022标准下的设备编码规范、SIP服务器配置及媒体流保活机制,帮助工程团队高效解决设备离线和媒体流中断等问题。

weixin_30733003的博客 690

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

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

gitblog_00707的博客 378

(53页PPT)新型智慧病房整体解决方案(附下载方式)

当前医疗场景存在三大核心矛盾:院内感染风险(如输液异常发现滞后)、信息孤岛现象(11类业务系统数据割裂)、管理效能不足(30%护理时间耗费在机械性工作)。实际案例显示,整体运营效率提升40%,患者满意度提高28个百分点,真正实现了"让技术有温度,让数据会说话"的价值理念。本文将从需求分析、技术架构、应用场景三个维度,深度剖析这份53页解决方案的创新价值与实践路径。床旁智能终端整合12项功能:包括体征自动采集(误差率<1%)、医嘱执行核对(100%条码校验)、智能床垫离床报警(响应时间3秒)等。

AI_data_cloud的博客 716

【C++】C++异常语法、使用、规范、异常安全及异常的优缺点

实际中我们可以可以去继承exception类实现自己的异常类。但是实际中很多公司像上面一样自己定义一套异常继承体系。因为C++标准库设计的不够好用。如果有一个块抛出一个异常,捕获异常的方法会使用 try 和 catch 关键字。try 块中放置可能抛出异常的代码,try 块中的代码被称为保护代码。C++ 提供了一系列标准的异常,定义在 中,我们可以在程序中使用这些标准的异常。异常是一种处理错误的方式,

weixin_51692487的博客 1525

MatrixOne向量搜索实战:IVF与HNSW索引性能对比测试

在AI时代,向量搜索已成为智能应用的核心能力。MatrixOne作为一款AI原生的HTAP数据库,内置了IVF和HNSW两种向量索引算法,为开发者提供了强大的相似性搜索功能。本文将深入对比这两种索引的性能特点,帮助您在实际项目中做出最佳选择。 ## 🔍 向量搜索:AI应用的数据基石 向量搜索是现代AI应用的基础设施,广泛应用于推荐系统、语义搜索、图像识别和RAG(检索增强生成)等场景。Mat

gitblog_00390的博客 594

华为OD机考双机位C卷 - 天然蓄水库(Java & Python& JS & C/C++ & GO )

华为OD机考双机位C卷 - 天然蓄水库(OD上机考试双机位C卷)。提供在线OJ刷题。Java、C++、Python、GO语言、C语言、JavaScript题解,并提供完整思路讲解。

算法大师! 1742

MatrixOne AI原生功能解析:如何快速构建RAG应用和语义搜索系统

MatrixOne作为业界首个将Git风格版本控制引入数据库的AI原生HTAP数据库,为开发者提供了构建RAG(检索增强生成)应用和语义搜索系统的完整解决方案。在AI时代,数据智能应用的需求日益增长,MatrixOne通过内置向量检索(IVF/HNSW)和全文检索功能,让您无需外部向量数据库即可直接构建智能应用。🚀 ## 🤖 MatrixOne AI原生架构解析 MatrixOne采用超融

gitblog_00842的博客 474

倍福EL6002做RS232通信获取称重数据..

本文介绍EL6002模块通过RS232自由口通信协议获取从站数据。具体数据对照说明手册即可。

weixin_41883890的博客 1012

基于YOLOv8的铁路轨道异物检测系统设计与实现

目标检测是计算机视觉领域的核心任务之一,旨在识别图像中特定目标的位置和类别。传统方法主要依赖手工特征(如HOG、SIFT等)和分类器(如SVM),而深度学习方法通过卷积神经网络自动学习特征表示,显著提升了检测性能。YOLO(You Only Look Once)系列算法作为单阶段目标检测的代表,以其高效的检测速度著称。YOLOv8是Ultralytics公司于2023年发布的最新版本,在精度和速度上都有进一步提升。

YOLO 575

矩阵起源&InfoQ:2025年面向GenAI的数据智能底座白皮书

本白皮书由矩阵起源与 InfoQ 极客传媒联合发布,聚焦生成式人工智能(GenAI)向 AI 智能体(具备自主理解、规划、执行与反思能力)演进的趋势,针对企业落地 GenAI 时面临的底层数据难题,提出构建 “AI 原生、多模态、安全可控” 的数据智能底座的核心解决方案。企业痛点:某知名保健品零售品牌计划构建营销、客服、财务等领域 AI 助手,但产品资料、业务政策、市场报告等关键数据分散于 CMS、S3、数据库等系统,各 AI 应用独立接入导致 “烟囱式架构”,重复开发、数据口径不一、运维成本高。

weixin_55366265的博客 360

2026年VIVO嵌入式岗位高频面试题(含参考答案)

摘要:VIVO嵌入式岗位考核涵盖智能手机、IoT设备、芯片适配等方向,重点考察硬件底层交互、RTOS/Linux开发、C/C++功底与问题排查能力。题目按优先级排序,分硬件架构、RTOS、C/C++、数据结构、Linux实践、行业认知6大模块,共40道题。硬件部分涉及中断、ARM架构、加速技术、BSP开发等;RTOS部分区分硬/软实时系统;C/C++部分侧重内存管理、位操作;Linux部分考察常用命令;行业部分关注鸿蒙等系统理念。题目设计贴合实际工作场景,全面评估嵌入式开发能力。

Open 52

倒计时3天 | 9月12日矩阵起源产品发布会重磅演讲嘉宾抢先看!

矩阵起源将于9月12日在上海举办“以数生智,以智驭数”产品发布会,探讨数据与AI的深度融合。CEO王龙等高管将分享数据智能飞轮如何推动企业数字化升级,解析超融合HTAP架构等技术创新。活动还设有圆桌论坛,邀请行业专家讨论AI时代的企业核心竞争力。矩阵起源作为数据智能平台提供商,其MatrixOne Intelligence产品已服务多家龙头企业,助力企业智能化转型。

MatrixOrigin的博客 1190

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

AI 应用的数据库架构:按数据类型选技术

**AI 应用的数据库架构:按数据类型选技术** ## 一、关系型库:记录主库 对绝大多数 AI 产品,最安全、省心的起点是一个支持事务与约束的关系型库,作为默认记录主库。 适用场景:租户与用户身份、计费与权益(订阅、配额)、智能体运行与任务状态、工具审批与审计日志、对话元数据(非消息体本身)、文档归属与访问策略、评测结果。 灵活用法:可用 JSON 列存供应商元数据,而不破坏关系保证。具

search_agent的博客 370

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

Chrome 性能优化实战指南:2026 前端页面提速与内存优化全攻略

2026年Chrome已切换为双周更新节奏,页面性能优化规则也随之迭代。本文详解Chrome性能面板高级用法、内存泄漏排查、渲染路径优化与最新API落地技巧,帮助你把页面首屏速度提升50%以上。

Frag0ut的博客 350

AI 应用开发工程师技术实践:大模型接入、通用组件封装与性能优化

本文提出AI应用从PoC到生产的核心挑战:模型调用的持续可用、可控与可优化。通过构建统一LLM网关实现多供应商路由与故障转移,封装对话、工具调用与RAG组件以解耦业务逻辑,结合前缀缓存、批处理与流式背压治理等性能优化手段,形成“接通→接稳→接快”的工程路径,最终以工程化能力决定AI应用的生产可用性。

2301_79189962的博客 619

UGUI 与 NGUI 使用及性能优化

本文解析 Lua 与 ToLua 在 Unity 中的运行机制及热更新原理。Lua 作为可嵌入语言,通过编译字节码由虚拟机执行,支持运行时加载新脚本;ToLua 实现 C# 与 Lua 的双向调用,通过生成 Wrap 代码注册类型接口;热更新依赖于宿主动态加载并执行新脚本,结合资源管理、版本控制与状态处理机制。关键点包括:table 共享引用、函数值不随重定义更新、闭包捕获状态、元表实现类逻辑,以及对象跨语言传递的生命周期管理。完整热更新需独立设计补丁分发与回滚策略。

2503_90324697的博客 315

RISC-V 基础软件的工程化与性能优化实践

从软件生态现状、优化方法到在龙蜥社区、如意社区等的开源贡献,这些探索展现了基础软件连接硬件能力与业务价值的作用,也为 RISC-V 生态共建提供了实践参考。

weixin_60347558的博客 430

低代码平台性能优化实战:从用户认证模块出发的基准测试与优化

整个系统由以下几个核心部分组成:- 前端:基于 React 构建的登录页面 - 后端:Node.js + Express 接口服务 - 数据库:MySQL 用户信息存储前端部分通过 fetch 请求后端/api/login接口,并在接口中处理身份验证、数据库查询与返回结果。// 示例:Node.js 后端 /api/login 接口逻辑(伪代码)return res.status(500).send({ error: '数据库查询失败' });} else {});});

后台模板 196

深入 MyBatis-Plus:避开常见陷阱与性能优化实践

本文结合日常后端开发经验,梳理 MyBatis-Plus 在现代 Spring Boot 环境中的核心用法与易踩坑点。重点讲解 Wrapper 链式调用、自动填充机制、分页插件序列化问题及批量操作的底层行为,分析动态 SQL 生成逻辑与索引失效场景,并提供可验证的代码示例与排查思路。内容聚焦工程落地,明确版本依赖差异,指出官方未强调的性能边界与替代方案。

2402_83344867的博客 431

Day103-RAG 性能优化:检索延迟/并发/批量与缓存分层

RAG 跑通不算完,扛住流量才是真本事。本文把 RAG 的端到端延迟拆成"检索—重排—生成"三段,逐段给出优化手段:Embedding 批量异步、检索并发合并、热点 Query 多级缓存、生成端流式输出,并附一张可直接照着抄的优化清单。

雨1986的博客 264

Caddy反向代理性能优化实战:基准测试到瓶颈定位的5大关

在数据统计报表与BI系统中,反向代理作为流量调度的关键节点,其性能直接影响到整体系统的响应效率。Caddy作为一种轻量级、高性能的Web服务器和反向代理工具,常被用于此类场景。然而,随着访问量的增长,若未进行适当的性能优化,系统可能会出现延迟高、吞吐低等问题。本文将结合真实业务场景,深入探讨如何通过基准测试、瓶颈定位以及优化手段提升Caddy在数据报表服务中的性能表现,并提供可复用的实践经验。

wuchangjian的专栏 199

性能优化实战:常见性能问题定位与解决方案整理

性能优化那点事

sun_daming的博客 321

Chrome性能优化实战:让老旧浏览器重获流畅体验

Chrome越用越卡、打开十几个标签页就占满内存、滚动页面掉帧?不用换电脑也不用重装系统,通过调整原生设置和清理冗余资源,就能让老旧设备上的Chrome重新变得流畅。本文从内存管理、后台限制、缓存优化到实验性功能开启,一步步帮你榨干浏览器性能潜力。

MyBili的博客 245

Chrome浏览器视频播放性能优化配置完整指南

本文从网络排查、硬件加速验证、核心参数配置、缓存清理、扩展管理等维度,手把手带你解决Chrome浏览器视频卡顿、跳帧、CPU占用过高的问题,快速实现4K视频流畅硬解码。

the3clipse的博客 408

单并发提速73%,多并发能力达原来2.4倍:Qwen3.8-27B性能优化实践

推理优化需同时考虑场景配置、引擎实现和底层计算。

SmartX 超融合 273
上一篇: 直播预告 | 您的数据能喂给AI了吗?让GenAI读懂企业语言——产品分享会:矩阵起源MatrixOne Intelligence产品独家解析
下一篇: 技术解读 | 搭建NL2SQL系统需要大模型么?
MatrixOrigin
博客等级 码龄5年 708粉丝 230原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值