mirror of
https://github.com/DistSysCorp/ddia.git
synced 2024-12-26 04:40:38 +08:00
fix format
This commit is contained in:
parent
d0097262f4
commit
d1f07b83e1
10
ch02.md
10
ch02.md
@ -1,4 +1,4 @@
|
|||||||
# DDIA 逐章精读(二):数据模型和查询语言
|
# DDIA 逐章精读(二):数据模型和查询语言
|
||||||
|
|
||||||
# 概要
|
# 概要
|
||||||
|
|
||||||
@ -264,9 +264,10 @@ SELECT * FROM animals WHERE family = 'Sharks';
|
|||||||
| 解耦程度 | 与实现解耦。 <br/>可以持续优化查询引擎性能; | 与实现耦合较深。
|
| 解耦程度 | 与实现解耦。 <br/>可以持续优化查询引擎性能; | 与实现耦合较深。
|
||||||
| 解析执行 | 词法分析→ 语法分析 → 语义分析 <br/>生成执行计划→ 执行计划优化 | 词法分析→ 语法分析 → 语义分析 <br/>中间代码生成→ 代码优化 → 目标代码生成 |
|
| 解析执行 | 词法分析→ 语法分析 → 语义分析 <br/>生成执行计划→ 执行计划优化 | 词法分析→ 语法分析 → 语义分析 <br/>中间代码生成→ 代码优化 → 目标代码生成 |
|
||||||
| 多核并行 | 声明式更具多核潜力,给了更多运行时优化空间 | 命令式由于指定了代码执行顺序,编译时优化空间较小。 |
|
| 多核并行 | 声明式更具多核潜力,给了更多运行时优化空间 | 命令式由于指定了代码执行顺序,编译时优化空间较小。 |
|
||||||
- Q:相对声明式语言,命令式语言有什么优点?
|
|
||||||
1. 当描述的目标变得复杂时,声明式表达能力不够。
|
> Q:相对声明式语言,命令式语言有什么优点?
|
||||||
2. 实现命令式的语言往往不会和声明式那么泾渭分明,通过合理抽象,通过一些编程范式(函数式),可以让代码兼顾表达力和清晰性。
|
> 1. 当描述的目标变得复杂时,声明式表达能力不够。
|
||||||
|
> 2. 实现命令式的语言往往不会和声明式那么泾渭分明,通过合理抽象,通过一些编程范式(函数式),可以让代码兼顾表达力和清晰性。
|
||||||
|
|
||||||
## 数据库以外:Web 中的声明式
|
## 数据库以外:Web 中的声明式
|
||||||
|
|
||||||
@ -454,6 +455,7 @@ db.observations.aggregate([
|
|||||||
| 入边集合 | 终止点 |
|
| 入边集合 | 终止点 |
|
||||||
| 属性集(kv 对表示) | 属性集(kv 对表示) |
|
| 属性集(kv 对表示) | 属性集(kv 对表示) |
|
||||||
| 表示点类型的 type? | 表示边类型的 label |
|
| 表示点类型的 type? | 表示边类型的 label |
|
||||||
|
|
||||||
- Q:有一个疑惑点,为什么书中对于 PG 点的定义中没有 Type ?
|
- Q:有一个疑惑点,为什么书中对于 PG 点的定义中没有 Type ?
|
||||||
|
|
||||||
如果数据是异构的,应该有才对;莫非是通过不同的属性来标记不同的类型?
|
如果数据是异构的,应该有才对;莫非是通过不同的属性来标记不同的类型?
|
||||||
|
Loading…
Reference in New Issue
Block a user