ARCHITECTURE GUIDE
Obsidian 架构指南
Obsidian 是一款基于 Cloudflare Workers 与 D1 SQLite 构建的多租户物理隔离引擎。它通过“九尾狐”调度算法,将数以万计的应用 appId 动态分配至物理 D1 集群,实现零网关延迟的高性能数据服务。
4MB Payload
受 Edge 限制,单次 HTTP 载荷最大支持 4MB。批量写入建议分包执行。
30,000 Params
SQLite 绑定变量上限。单次批量 Insert 的 `列数 * 行数` 不得超过此值。
Soft Delete
内置逻辑删除支持。若表存在 `deleted_at` 字段,引擎将自动进行过滤保护。
AST 语法编译器
Obsidian 采用 JSON AST 代替 SQL 字符串。查询深度最高支持 5 层嵌套。支持字段点语法提取 JSON 内容。
支持的逻辑操作符 (Operators)
$gt / $gte / $lt / $lte
$ne / $like / $match
$in / $nin / $between
$isNull / $or / $and
// 示例:深度 JSON 路径查询 + 逻辑组合
"where": {
"profile.age": { "$gte": 18 },
"$or": [
{ "tags": { "$like": "%vip%" } },
{ "score": { "$gt": 100 } }
]
}
POST
{{ api.path }}
参数字典 (Payload Payload)
| Key | Type | Description |
|---|---|---|
| {{ p.name }}{{ p.req ? 'REQUIRED' : 'OPTIONAL' }} | {{ p.type }} |
CURL REQUEST
EXPECTED RESPONSE
异常字典 (Error Dictionary)
| Code | Constant | Description & Solution |
|---|---|---|
| {{ err.code }} | {{ err.const }} | {{ err.desc }} |