故障排除 - Amazon Keyspaces(针对 Apache Cassandra)
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

故障排除

数据上传完成后,检查是否跳过了行。为此,请导航到源 CSV 文件的源目录,然后搜索具有以下名称的文件。

import_yourcsvfilename.err.timestamp.csv

cqlsh 将任何跳过的数据行写入具有该名称的文件中。如果该文件存在于源目录中并且其中包含数据,则这些行不会上传到 Amazon Keyspaces。要重试这些行,请首先检查上载过程中遇到的任何错误,然后相应地调整数据。要重试这些行,你可以重新运行该过程。

常见错误

未加载行的最常见原因是容量错误和解析错误。

将数据上传到亚马逊 Keyspaces 时出现解析器错误

以下示例显示了一个跳过的行,原因是ParseError.

Failed to import 1 rows: ParseError - Invalid ... –

要解决此错误,您需要确保要导入的数据与 Amazon Keyspaces 中的表架构匹配。查看导入文件以了解错误。你可以尝试使用单行数据使用INSERT语句来隔离错误。

将数据上传到亚马逊 Keyspaces 时的容量错误

Failed to import 1 rows: WriteTimeout - Error from server: code=1100 [Coordinator node timed out waiting for replica nodes' responses] message="Operation timed out - received only 0 responses." info={'received_responses': 0, 'required_responses': 2, 'write_type': 'SIMPLE', 'consistency': 'LOCAL_QUORUM'}, will retry later, attempt 1 of 100

Amazon Keyspaces 使用ReadTimeoutWriteTimeout表示写入请求何时由于吞吐容量不足而失败的例外情况。为了帮助诊断容量不足的例外情况,Amazon Keyspaces 发布WriteThrottleEventsReadThrottledEventsAmazon CloudWatch 中的指标。有关更多信息,请参阅使用 Amazon CloudWatch 监控 Amazon Keyspaces

将数据上传到亚马逊 Keyspaces 时出现 cqlsh 错误

为了帮助解决 cqlsh 错误,请使用--debug标记。

使用不兼容版本的 cqlsh 时,您会看到以下错误。

AttributeError: 'NoneType' object has no attribute 'is_up' Failed to import 3 rows: AttributeError - 'NoneType' object has no attribute 'is_up', given up after 1 attempts

运行以下命令确认安装了正确版本的 cqlsh。

cqlsh --version

输出应该类似于以下内容。

cqlsh 5.0.1

如果您使用的是 Windows,请替换所有实例cqlshcqlsh.bat. 例如,要在 Windows 中检查 cqlsh 版本,请运行以下命令。

cqlsh.bat --version

在 cqlsh 客户端收到来自服务器的连续三个任何类型的错误后,与 Amazon Keyspaces 的连接失败。cqlsh 客户端失败并显示以下消息。

Failed to import 1 rows: NoHostAvailable - , will retry later, attempt 3 of 100

要解决此错误,您需要确保要导入的数据与 Amazon Keyspaces 中的表架构匹配。查看导入文件以了解错误。你可以尝试使用一行数据,方法是使用 INSERT 语句隔离错误。

客户端会自动尝试重新建立连接。