

要获得与亚马逊 Timestream 类似的功能 LiveAnalytics，可以考虑适用于 InfluxDB 的亚马逊 Timestream。适用于 InfluxDB 的 Amazon Timestream 提供简化的数据摄取和个位数毫秒级的查询响应时间，以实现实时分析。点击[此处](https://docs.aws.amazon.com//timestream/latest/developerguide/timestream-for-influxdb.html)了解更多信息。

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 为适用于 InfluxDB 的 Amazon Timestream 编写和查询数据常见问题解答 3
<a name="faq-data-operations"></a>

关于向适用于 InfluxDB 3 的 Amazon Timestream 写入数据和从中查询数据的问题，包括支持的 APIs查询语言和身份验证。有关完整指南，请参阅[向 Timestream for InfluxDB 3 集群写入数据](writing-data-to-your-influxdb-3-cluster.md)和[从 Timestream for InfluxDB 3 中查询数据](querying-data-from-influxdb-3.md)。

**如何向 InfluxDB 3 写入数据？**  
InfluxDB 3 支持多种写入方法：原生 v3 写入 API、InfluxDB v2 兼容性 API 和 InfluxDB v1 兼容性 API。所有方法都接受线路协议格式。官方客户端库可用于 Python、Go JavaScript、Java 和 C\#。有关详细的写入说明，请参阅 [InfluxDB 3 Enterprise 写入数据](https://docs.influxdata.com/influxdb3/enterprise/write-data/)指南。

**InfluxDB 3 支持哪些查询语言？**  
InfluxDB 3 通过 v3 HTTP 查询 API 支持 SQL 和 InfluxQL。SQL 是主要的查询语言，由 Apache DataFusion 引擎提供支持。支持 InfluxQL 是为了向后兼容。您也可以使用 `influxdb3` CLI 工具进行查询。有关查询语法和示例，请参阅 [InfluxDB 3 企业版查询数据指南](https://docs.influxdata.com/influxdb3/enterprise/query-data/)。  
SQL 查询示例：  

```
SELECT time, temperature, location
FROM weather
WHERE time > now() - INTERVAL '1 hour'
ORDER BY time DESC
LIMIT 100
```

**查询的身份验证是如何运作的？**  
InfluxDB 3 使用基于令牌的身份验证。首次设置集群时，您需要创建主用户帐户和密码。在企业版中，您可以创建多个具有不同访问权限级别的令牌：  
+ **管理员令牌** — 授予对所有服务器操作的完全访问权限，包括 CLI 命令和 API 端点。创建的第一个管理员令牌是操作员令牌，它具有完全的管理权限。
+ **资源令牌**-授予对特定资源（例如单个数据库和表）的精细权限。您可以为每个数据库分配只读、只写或读写访问权限，从而为不同的应用程序和用户启用精细的访问控制。
令牌可与 v3 HTTP 查询 API、`influxdb3` CLI 和 v1/v2 兼容性配合使用。 APIs有关更多详细信息，请参阅 [InfluxDB 3 企业令牌管理文档](https://docs.influxdata.com/influxdb3/enterprise/admin/tokens/)。

**我能否通过数据平面管理数据库和表？**  
可以。在 InfluxDB 3 Enterprise 中，你可以使用 CLI 或 HTTP AP `influxdb3` I 直接创建、列出和删除数据库和表。您还可以管理 Last Value 缓存、不同值缓存和自定义文件索引，以实现查询优化。这些数据平面操作使您无需使用即可管理集群 AWS 管理控制台。有关管理操作的完整列表，请参阅 [InfluxDB 3 Enterprise 管理指南](https://docs.influxdata.com/influxdb3/enterprise/admin/)。

**为什么我的查询返回 401 未授权错误？**  
401 错误表示您的身份验证令牌丢失、已过期或没有所需的权限。验证您是否在`Authorization: Bearer`标头中传递令牌（或通过 CLI 的`INFLUXDB3_AUTH_TOKEN`环境变量）。如果使用资源令牌，请确认该令牌对目标数据库具有读取权限。如果令牌可能已被撤销，则重新生成该令牌。

**为什么我的查询速度很慢？**  
常见原因包括扫描太多 Parquet 文件（选中`query-file-limit`）、您的实例大小的 DataFusion 线程不足，或者重启后的 Parquet 内存缓存过冷。对于企业集群，请验证压缩是否正在运行，如果不进行压缩，小文件就会累积并降低查询性能。[详细参数参考](detailed-parameter-reference.md)有关调整指导，请参阅。

**什么是线路协议？**  
线路协议是一种基于文本的格式，用于将时间序列数据写入InfluxDB。每行代表一个带有测量名称、可选标签集、字段集和可选时间戳的数据点。有关完整规范，请参阅 [InfluxDB 3 行协议](https://docs.influxdata.com/influxdb3/enterprise/reference/line-protocol/)参考。  
线路协议示例：  

```
weather,location=us-east,station=A1 temperature=82.0,humidity=71.2 1465839830100400200
weather,location=us-west,station=B2 temperature=68.5,humidity=45.8 1465839830100400200
```