Skip to content

Commit

Permalink
fix typos
Browse files Browse the repository at this point in the history
  • Loading branch information
nicecui committed Dec 4, 2024
1 parent 2f7e64c commit cba52fa
Show file tree
Hide file tree
Showing 39 changed files with 48 additions and 48 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ description: 介绍 GreptimeDB 中的分布式查询方法,包括查询的拆

当查询到达 `frontend` 时,它首先被解析为 SQL 抽象语法树(AST)。我们遍历 AST,并从中生成逻辑计划。顾名思义,逻辑计划只是如何“逻辑地”执行查询的“提示”,它不能被直接运行,因此我们进一步从中生成可执行的物理计划。物理计划是一种类似树形的数据结构,每个节点实际上表示查询的执行方法。一旦我们从上到下运行物理计划树,结果数据将从叶子到根流动,被合并或计算。最终,我们在根节点的输出处得到了查询的结果。

到目前为止,这只是一个典型的 “volcano” 查询执行模型,你可以在几乎每个 SQL 数据库中看到这种模型。那么“分布式”是在哪里发生的呢?这全部发生在一个名为 “TableScan��� 的物理计划节点中。TableScan 是物理计划树中的一个叶子节点,它负责扫描表的数据(就像它的名称所暗示的)。当 `frontend` 即将扫描表时,它首先需要根据每个 `region` 的数据范围将表扫描拆分为较小的扫描。
到目前为止,这只是一个典型的 “volcano” 查询执行模型,你可以在几乎每个 SQL 数据库中看到这种模型。那么“分布式”是在哪里发生的呢?这全部发生在一个名为 “TableScan 的物理计划节点中。TableScan 是物理计划树中的一个叶子节点,它负责扫描表的数据(就像它的名称所暗示的)。当 `frontend` 即将扫描表时,它首先需要根据每个 `region` 的数据范围将表扫描拆分为较小的扫描。

[1]: ./table-sharding.md

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ description: 介绍 Metasrv 的功能、架构和与前端的交互方式。
1. 前端发送 `CREATE TABLE` 请求到 Metasrv。
2. 根据请求中包含的分区规则规划 Region 数量。
3. 检查数据节点可用资源的全局视图(通过心跳收集)并为每个 Region 分配一个节点。
4. 前端创建表并在���功创建后将 `Schema` 存储到 Metasrv。
4. 前端创建表并在成功创建后将 `Schema` 存储到 Metasrv。

### `Insert`

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ description: 介绍 Metasrv 中的 Selector,包括其类型和配置方法。

[0]: https://github.com/GreptimeTeam/greptimedb/blob/main/src/meta-srv/src/selector.rs

`Metasrv` 中存在一个特定的场景。当 `Frontend``Metasrv` 发送建表请求时,`Metasrv` 会创建一个���由表(表的创建细节不在这里赘述)。在创建路由表时,`Metasrv` 需要选择适当的 `Datanode`s,这时候就需要用到 `Selector`
`Metasrv` 中存在一个特定的场景。当 `Frontend``Metasrv` 发送建表请求时,`Metasrv` 会创建一个路由表(表的创建细节不在这里赘述)。在创建路由表时,`Metasrv` 需要选择适当的 `Datanode`s,这时候就需要用到 `Selector`

## Selector 类型

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ commands = "all"
# 所有可配置的对象类型是 "Database"、"Table"、"View"、"Flow"、"Index" 和 "Misc"。
# 一个特殊的 "all"(默认值)表示所有对象类型。
object_types = "all"
# 保留的审计日志文件的��大数量。默认为 30。
# 保留的审计日志文件的最大数量。默认为 30。
# 审计日志每天生成一个新的。
max_log_files = 30
```
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ Enterprise 版还提供更多增强功能,帮助企业优化数据效率并显

- **将数据库部署在你的云中 - Bring Your Own Cloud(BYOC**: 利用你自己的云基础设施来托管 GreptimeDB,提供广泛的定制和灵活性以满足你的业务需求。此服务包括对你的云资源的全面管理和强大的安全措施,以保护你的基础设施。
- **全托管的独立云**: Greptime 团队提供完全托管的专用云环境,确保最佳性能、增强的安全性和卓越的可靠性,以满足你的企业需求。
- **[边云一体解决方案](https://greptime.com/product/carcloud)**: 用于管理从边缘设备到云的时��数据,实现整个基础设施的实时分析和洞察的全面解决方案。
- **[边云一体解决方案](https://greptime.com/product/carcloud)**: 用于管理从边缘设备到云的时序数据,实现整个基础设施的实时分析和洞察的全面解决方案。
- 针对物联网 (IoT)、可观测等行业的特定解决方案。

本章节概述了 GreptimeDB Enterprise 中可用的高级功能。有关获取试用或购买,请[联系我们](https://greptime.cn/contactus)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ import Includecreateservice from './create-service.md'
## 写入数据

在 Python 3.10+ 中使用下面的命令收集系统指标数据,例如 CPU 和内存使用情况,并将其发送到 GreptimeCloud。一旦成功发送,这些指标就可以在 GreptimeCloud 控制台中查看。
该 Demo 基于 OTLP/http 采集并发���数据,源代码位于 [GitHub](https://github.com/GreptimeCloudStarters/quick-start-python).
该 Demo 基于 OTLP/http 采集并发送数据,源代码位于 [GitHub](https://github.com/GreptimeCloudStarters/quick-start-python).

:::tip
[pipx](https://pypa.github.io/pipx/) 是一个帮助你安装和运行用 Python 编写的应用程序的工具。
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ https://<host>
接下来做如下配置:

- Database Name:填写数据库名称 `<dbname>`,留空则使用默认数据库 `public`
- 在 Auth 部分中单击 basic auth,并在 Basic Auth Details 中填写 GreptimeDB 的用户���和密码。未设置可留空:
- 在 Auth 部分中单击 basic auth,并在 Basic Auth Details 中填写 GreptimeDB 的用户名和密码。未设置可留空:

- User: `<username>`
- Password: `<password>`
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ description: 介绍如何通过 OpenTelemetry Protocol (OTLP) 将指标数据发
* `X-Greptime-DB-Name`: `<dbname>`
* `Authorization`: `Basic` 认证,是 `<username>:<password>` 的 Base64 编码字符串。更多信息,请参阅 HTTP API 中的[认证](https://docs.greptime.cn/nightly/user-guide/protocols/http#鉴权)

由于请求���使用二进制 protobuf 编码的 payload,因此需要使用支持 `HTTP/protobuf` 的包。例如,在 Node.js 中,可以使用 [`exporter-trace-otlp-proto`](https://www.npmjs.com/package/@opentelemetry/exporter-trace-otlp-proto);在 Go 中,可以使用 [`go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp`](https://pkg.go.dev/go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp);在 Java 中,可以使用 [`io.opentelemetry:opentelemetry-exporter-otlp`](https://mvnrepository.com/artifact/io.opentelemetry/opentelemetry-exporter-otlp);在 Python 中,可以使用 [`opentelemetry-exporter-otlp-proto-http`](https://pypi.org/project/opentelemetry-exporter-otlp-proto-http/)
由于请求中使用二进制 protobuf 编码的 payload,因此需要使用支持 `HTTP/protobuf` 的包。例如,在 Node.js 中,可以使用 [`exporter-trace-otlp-proto`](https://www.npmjs.com/package/@opentelemetry/exporter-trace-otlp-proto);在 Go 中,可以使用 [`go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp`](https://pkg.go.dev/go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp);在 Java 中,可以使用 [`io.opentelemetry:opentelemetry-exporter-otlp`](https://mvnrepository.com/artifact/io.opentelemetry/opentelemetry-exporter-otlp);在 Python 中,可以使用 [`opentelemetry-exporter-otlp-proto-http`](https://pypi.org/project/opentelemetry-exporter-otlp-proto-http/)

:::tip 注意
包名可能会被 OpenTelemetry 修改,因此建议你参考 OpenTelemetry 官方文档以获取最新信息。
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -206,7 +206,7 @@ $writeApi->write($point);
<div id="visualize-data">

GreptimeCloud 控制台提供了名为 Workbench 的数据可视化工作台。
��开[控制台](https://greptime.cloud), 在 `Manage Your Data` 下选择 `Web Dashboard`
打开[控制台](https://greptime.cloud), 在 `Manage Your Data` 下选择 `Web Dashboard`
然后创建一个新的 Workbench 文件,
即可按需求创建图表。

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,5 +32,5 @@ import Includesharedstoragecapacity from './shared-storage-capacity.md'

### 网络流量

网络流量的费用将包含在你的月度账单���
网络流量的费用将包含在你的月度账单中
流量价格由云服务器提供商(如 AWS)决定,Greptime 不会对流量收取额外费用。
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ description: 详细介绍 GreptimeCloud 的请求容量单位算法,包括 WCU
WCU 的容量可能会在未来发生变化。
:::

每个请求的大小根���以下步骤计算
每个请求的大小根据以下步骤计算

1. 获取表结构中每个列的数据类型的大小。你可以在 [数据类型](/reference/sql/data-types.md) 文档中找到有关每个数据类型大小的详细信息。
2. 计算请求中所有列的大小之和。如果请求中不存在某列,则其大小取决于该列的默认值。如果默认值为 null,则大小为 0;否则,它是该列数据类型的大小。
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -367,7 +367,7 @@ CREATE EXTERNAL TABLE [IF NOT EXISTS] [db.]table_name
| `ENDPOINT` | The bucket endpoint | 可选 |
| `ACCESS_KEY_ID` | 用于连接 AWS S3 兼容对象存储的访问密钥 ID | 可选 |
| `SECRET_ACCESS_KEY` | 用于连接 AWS S3 兼容对象存储的秘密访问密钥 | 可选 |
| `ENABLE_VIRTUAL HOST_STYLE` | 如果你想要使用 virtual hosting 来定位 bucket,将其设置为 `true` | ���选 |
| `ENABLE_VIRTUAL HOST_STYLE` | 如果你想要使用 virtual hosting 来定位 bucket,将其设置为 `true` | 可选 |
| `SESSION_TOKEN` | 用于连接 AWS S3 服务的临时凭证 | 可选 |

### 时间索引列
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ QUANTITY UNIT [QUANTITY UNIT...]
```

* `QUANTITY`:是一个数字(可能有符号),
* `UNIT`:时间单位,可以是 `microsecond`(微秒)、`millisecond`(毫秒)、`second`(秒)、`minute`(分钟)、`hour`(小时)、`day`(天)、`week`(周)、`month`(月)、`year`(年)、`decade`(十年)、`century`(世纪)或这些���位的缩写或复数形式
* `UNIT`:时间单位,可以是 `microsecond`(微秒)、`millisecond`(毫秒)、`second`(秒)、`minute`(分钟)、`hour`(小时)、`day`(天)、`week`(周)、`month`(月)、`year`(年)、`decade`(十年)、`century`(世纪)或这些单位的缩写或复数形式

不同的时间单位将会被计算合并,每个单位的符号决定它是增加还是减少总间隔。例如,“1 年 -2 个月”导致净间隔为 10 个月。
遗憾的是,GreptimeDB 暂时还不支持以 [ISO 8601 时间间隔](https://en.wikipedia.org/wiki/ISO_8601#Time_intervals)格式编写间隔,例如 `P3Y3M700DT133H17M36.789S` 等。但它支持以这种格式输出。
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,7 @@ h3_cell_to_children_size(h3_latlng_to_cell(37.76938, -122.3889, 8), 10);

### `h3_cell_to_child_pos`

根据给定分辨率,返回单元在��父单元的位置。位置是单元在所有子单元中的索引。
根据给定分辨率,返回单元在其父单元的位置。位置是单元在所有子单元中的索引。

```sql
h3_cell_to_child_pos(h3_latlng_to_cell(37.76938, -122.3889, 8), 6)
Expand Down Expand Up @@ -194,7 +194,7 @@ h3_grid_disk(h3_latlng_to_cell(37.76938, -122.3889, 8), 3);

返回给定单元格范围内所有距离为 *k* 的单元格。

请注意,此函数��回一个 UInt64 数组,并且仅适用于我们的 HTTP 查询 API 和 Postgres 通道。
请注意,此函数返回一个 UInt64 数组,并且仅适用于我们的 HTTP 查询 API 和 Postgres 通道。

```sql
h3_grid_disk_distance(h3_latlng_to_cell(37.76938, -122.3889, 8), 3);
Expand Down Expand Up @@ -325,7 +325,7 @@ SELECT json_encode_path(lat, lon, ts);

### `st_contains`

测��两个空间对象是否为包含关系
测试两个空间对象是否为包含关系

参数:WKT 编码的地理对象。

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ SELECT json_to_string(parse_json('{"a": 1, "b": 2}'));
| `.<name>` | 选择对象中匹配名称的元素 | `$.event` |
| `:<name>` | `.<name>` 的别名 | `$:event` |
| `["<name>"]` | `.<name>` 的别名 | `$["event"]` |
| `[*]` | 选择数组中的所有��素 | `$[*]` |
| `[*]` | 选择数组中的所有元素 | `$[*]` |
| `[<pos>, ..]` | 选择数组中基于0的第 `n` 个元素 | `$[1, 2]` |
| `[last - <pos>, ..]` | 选择数组中最后一个元素之前的第 `n` 个元素 | `$[0, last - 1]` |
| `[<pos1> to <pos2>, ..]` | 选择数组中某个范围内的所有元素 | `$[1 to last - 2]` |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,7 @@ character_maximum_length: NULL
3 rows in set (0.03 sec)
```

`COLUMNS` 表中列的描述如��
`COLUMNS` 表中列的描述如下

- `table_catalog`:列所属的目录的名称。在 OSS 项目中该值始终为 `greptime`
- `table_schema`:包含列的表所属的数据库的名称。
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ VALUES (value1, value2, value3, ...);

在上述语法中,`table_name` 是要插入数据的表名,`column1``column2``column3` 等是表中的列名。
如果你想要插入数据到指定的列中,可以在 `INSERT INTO` 语句中指定列名。
如果你不指定列名,数据将会插入到表中的所有列���
如果你不指定列名,数据将会插入到表中的所有列中

`VALUES` 关键字后面跟着的是一个值列表,这个值列表的顺序必须和 `INSERT INTO` 语句中的列顺序一致。

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -221,7 +221,7 @@ ALIGN '5s';
`TO` 选项、`RANGE` 选项和 `ALIGN INTERVAL` 共同决定了范围查询的时间窗口。
请参考[时间范围窗口](/user-guide/query-data/sql.md#时间范围窗口)

`TO` 选项的默认值为当前查询客户端的时区。如果想要设置时区,请参考 [MySQL 客户端](/user-guide/protocols/mysql.md#时区)[PostgreSQL 客户端](/user-guide/protocols/postgresql.md#时区)文档���的时区设置。其他可用的 `TO` 选项有:
`TO` 选项的默认值为当前查询客户端的时区。如果想要设置时区,请参考 [MySQL 客户端](/user-guide/protocols/mysql.md#时区)[PostgreSQL 客户端](/user-guide/protocols/postgresql.md#时区)文档中的时区设置。其他可用的 `TO` 选项有:

| TO | 描述 |
| :---------: | :----------------------------------------------------------------: |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -170,7 +170,7 @@ SHOW FULL TABLES WHERE Table_type='BASE TABLE';
SHOW CREATE TABLE [table]
```

例如���
例如

```sql
SHOW CREATE TABLE system_metrics;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ greptime cli export [OPTIONS]
| --auth-basic || - | 使用 `<username>:<password>` 格式 |
| --timeout || 0 | 对 DB 进行一次调用的超时时间,默认为 0 代表永不超时 (例如 `30s`, `10min 20s`|

### ���出目标
### 导出目标
- `schema`: 仅导出表结构(`SHOW CREATE TABLE`
- `data`: 仅导出表数据(`COPY DATABASE TO`
- `all`: 导出表结构和数据(默认)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,7 @@ ADMIN COMPACT_TABLE(
1 row in set (0.01 sec)
```

执行此语句时,GreptimeDB 会将每个 SST 文件按 1 小时(3600 秒)的时间跨度拆分成多个分块,并将这些分块合并为一个输出文件,确保没有重叠���文件
执行此语句时,GreptimeDB 会将每个 SST 文件按 1 小时(3600 秒)的时间跨度拆分成多个分块,并将这些分块合并为一个输出文件,确保没有重叠的文件

下图展示了一次 SWCS 压缩的过程:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -170,7 +170,7 @@ psql -h 127.0.0.1 -p 4003 -d public -f /tmp/greptimedb-export/greptime/public/co
## 推荐流程
该部分给出了一个推��的整体流程,以便平滑升级 GreptimeDB。如果您的环境可以在升级过程中离线,可以跳过此部分。
该部分给出了一个推荐的整体流程,以便平滑升级 GreptimeDB。如果您的环境可以在升级过程中离线,可以跳过此部分。
1. 创建一个全新的 v0.9.x 集群
2. 使用 v0.9.x 版本的 cli 工具导出并导入 `create-table`
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,6 @@ GreptimeDB 基于表进行设计,原因如下:
- Schema 是描述数据特征的元数据,对于用户来说更方便管理和维护。通过引入 Schema 版本的概念,我们可以更好地管理数据兼容性。
- Schema 通过其类型、长度等信息带来了巨大的优化存储和计算的好处,我们可以进行有针对性的优化。
- 当我们有了表格 Schema 后,自然而然地引入了 SQL,并用它来处理各种表之间的关联分析和聚合查询,为用户抵消了学习和使用成本。
- 比起 OpenTSDB 和 Prometheus 采用的单值模型,GreptimeDB 使用多值模型使其中一行数据可以具有多列数据。多值模型面向数据源建模,一个 metric 可以有用 field 表示的值。多值模型的优势在于它可以一次性向数据库写入或读取多个值,从而减���传输流量并简化查询。相比之下,单值模型则需要将数据拆分成多个记录。阅读[博客](https://greptime.com/blogs/2024-05-09-prometheus)以获取更多详情。
- 比起 OpenTSDB 和 Prometheus 采用的单值模型,GreptimeDB 使用多值模型使其中一行数据可以具有多列数据。多值模型面向数据源建模,一个 metric 可以有用 field 表示的值。多值模型的优势在于它可以一次性向数据库写入或读取多个值,从而减少传输流量并简化查询。相比之下,单值模型则需要将数据拆分成多个记录。阅读[博客](https://greptime.com/blogs/2024-05-09-prometheus)以获取更多详情。

GreptimeDB 使用 SQL 管理表 Schema。有关更多信息,请参见[表管理](/user-guide/administration/manage-data/basic-table-operations.md)。但是,我们对 Schema 的定义并不是强制性的,而是倾向于 **Schemaless** 的方式,类似于 MongoDB。有关更多详细信息,请参见[自动生成表结构](../ingest-data/overview.md#自动生成表结构)
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ description: 介绍 GreptimeDB 的关键特性,并解答用户关心的常见

## GreptimeDB 支持删除数据吗?

支持,请参考[删���数据](/user-guide/ingest-data/overview.md#删除数据)获取更多信息。
支持,请参考[删除数据](/user-guide/ingest-data/overview.md#删除数据)获取更多信息。

## 我可以为不同的表或指标设置 TTL 或保留策略吗?

Expand Down Expand Up @@ -51,7 +51,7 @@ GreptimeDB 还提供一个完全托管的云服务 [GreptimeCloud](https://grept

## GreptimeDB 对比其他存储或时序数据库的性能如何?

请阅读��下性能报告
请阅读以下性能报告

* [GreptimeDB vs. InfluxDB](https://greptime.cn/blogs/2024-08-08-report)
* [GreptimeDB vs. Grafana Mimir](https://greptime.cn/blogs/2024-08-01-grafana)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ description: 介绍 GreptimeDB 的核心概念,包括数据库、时序表、

## 数据库

类似于关系型数据库中的 _数据库_,数据库是数据容器的最小单元,数据可以在���个单元中被管理和计算
类似于关系型数据库中的 _数据库_,数据库是数据容器的最小单元,数据可以在这个单元中被管理和计算
你可以利用数据库来实现数据隔离,形成类似租户的效果。

## Time-Series Table
Expand Down
Loading

0 comments on commit cba52fa

Please sign in to comment.