从零理解 AI Native:它不是「给产品加个 AI 功能」,而是一种全新的软件构建方式。本文用具体例子解释 AI Native 的本质、与传统软件的区别、典型特征,以及它对工程师意味着什么。
最近更新
按时间写下的文章
OLAP 选型对比:Doris vs ClickHouse vs Hive
从架构、性能、并发、运维、适用场景多维度对比 Apache Doris、ClickHouse、Hive,帮助在实时 OLAP、数据仓库、离线分析等场景中做出合理的技术选型决策。
Kubernetes 实战指南:从零部署到熟练使用
Kubernetes 实战指南:从零搭建集群到熟练使用 Pod、Deployment、Service、Ingress、ConfigMap 等核心资源,覆盖部署、扩缩容、滚动更新、健康检查的完整操作流程。
手写 SQLite 09:索引 B-Tree 与加速查询
从零实现 SQLite 系列终篇(第 09 篇):解析索引 B-Tree 结构,通过索引叶子节点获取 rowid,再凭 rowid 在表 B-Tree 中定位行,实现索引加速的 WHERE 条件查询。
手写 SQLite 08:实现 WHERE 条件过滤
从零实现 SQLite 系列第 08 篇:扩展 SQL 解析支持 WHERE col = value 条件,实现全表扫描后过滤,完成 SELECT * FROM table WHERE col = value 的完整流程。
手写 SQLite 07:实现 SELECT count(*) FROM table
从零实现 SQLite 系列第 07 篇:实现 SELECT count(*) FROM table,无需解码行数据,直接统计 B-Tree 叶节点的 Cell 数量,并与 SELECT * 的性能差异作对比分析。
手写 SQLite 06:实现 SELECT * FROM table 带列名输出
从零实现 SQLite 系列第 06 篇:解析 CREATE TABLE SQL 语句提取列定义,处理 INTEGER PRIMARY KEY 别名 rowid,实现完整的 SELECT * FROM table 带列名输出。
手写 SQLite 05:解析 sqlite_schema,实现 .tables 命令
从零实现 SQLite 系列第 05 篇:解析 sqlite_schema 表,读取所有表/索引的名称和根页号,实现 .tables 命令,并彻底告别硬编码 root_page=2。
手写 SQLite 04:Record 格式解析——varint、Serial Type 与列值还原
从零实现 SQLite 系列第 04 篇:深入解析 SQLite Record 格式,实现 varint 解码、Serial Type 映射表、叶节点 Cell 完整解析,最终从字节流中还原出 rowid 和各列的实际值。
手写 SQLite 03:遍历 B-Tree,从根节点走到所有叶节点
从零实现 SQLite 系列第 03 篇:实现 B-Tree 递归遍历,处理内部节点(读取子页指针和 right_most_pointer)与叶节点,收集所有叶节点的 Cell 地址,为全表扫描做好铺垫。