

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

# Amazon Neptune 限制
<a name="limits"></a>

## Regions
<a name="limits-regions"></a>

亚马逊 Neptune 在以下 AWS 地区上市：
+ 美国东部（弗吉尼亚州北部）：`us-east-1`
+ 美国东部（俄亥俄州）：`us-east-2`
+ 美国西部（北加利福尼亚）：`us-west-1`
+ 美国西部（俄勒冈州）：`us-west-2`
+ 加拿大（中部）：`ca-central-1`
+ 加拿大西部（卡尔加里）：`ca-west-1`
+ 南美洲（圣保罗）：`sa-east-1`
+ 欧洲地区（斯德哥尔摩）：`eu-north-1`
+ 欧洲（西班牙）：`eu-south-2`
+ 欧洲地区（爱尔兰）：`eu-west-1`
+ 欧洲地区（伦敦）：`eu-west-2`
+ 欧洲地区（巴黎）：`eu-west-3`
+ 欧洲地区（法兰克福）：`eu-central-1`
+ 中东（巴林）：`me-south-1`
+ 中东（阿联酋）：`me-central-1`
+ 以色列（特拉维夫）：`il-central-1`
+ 非洲（开普敦）：`af-south-1`
+ 亚太地区（香港）：`ap-east-1`
+ 亚太地区（东京）：`ap-northeast-1`
+ 亚太地区（首尔）：`ap-northeast-2`
+ 亚太地区（大阪）：`ap-northeast-3`
+ 亚太地区（新加坡）：`ap-southeast-1`
+ 亚太地区（悉尼）：`ap-southeast-2`
+ 亚太地区（雅加达）：`ap-southeast-3`
+ 亚太地区（墨尔本）：`ap-southeast-4`
+ 亚太地区（马来西亚）：`ap-southeast-5`
+ 亚太地区（孟买）：`ap-south-1`
+ 亚太地区（海得拉巴）：`ap-south-2`
+ 中国（北京）：`cn-north-1`
+ 中国（宁夏）：`cn-northwest-1`
+ AWS GovCloud （美国西部）：`us-gov-west-1`
+ AWS GovCloud （美国东部）：`us-gov-east-1`

## 中国区域的差异
<a name="limits-china-regions"></a>

与许多 AWS 服务一样，Amazon Neptune 在中国（北京）和中国（宁夏）的运营方式与其他地区略有不同。 AWS 

例如，当 Neptune ML 使用 Amazon API Gateway 创建其导出服务时，IAM 身份验证默认处于启用状态。在中国区域，更改该选项的过程与其它区域略有不同。

[此处解释了](https://docs.amazonaws.cn/en_us/aws/latest/userguide/api-gateway.html#feature-diff)这些差异和其它差异。

## 亚太地区（海得拉巴）的差异
<a name="limits-hyd-region"></a>

亚太地区（海得拉巴）(`ap-south-2`) 区域不支持以下 Neptune 功能：
+ [Neptune 全球数据库](neptune-global-database.md)
+ 跨区域快照复制（请参阅[复制快照](backup-restore-copy-snapshot.md)）

## 存储集群卷的最大大小
<a name="limits-cluster-volume-size"></a>

在所有支持的区域中，Neptune 集群卷可以增长到最大大小 128 TiB。请参阅[Amazon Neptune 存储、可靠性和可用性](feature-overview-storage.md)。

## 支持的数据库实例大小
<a name="limits-instance-sizes"></a>

Neptune 支持不同区域中的不同 AWS 数据库实例类。如需了解指定区域中支持哪些类，请转到 [Amazon Neptune 定价](https://aws.amazon.com/neptune/pricing/)并选择您感兴趣的区域。

## 每个 AWS 账户的限额
<a name="limits-per-acount"></a>

对于某些管理特征，Amazon Neptune 使用与 Amazon Relational Database Service (Amazon RDS) 共享的操作技术。

每个 AWS 账户对每个区域可以创建的 Amazon Neptune 和 Amazon RDS 资源的数量都有限制。这些资源包括数据库实例和数据库集群。

在您达到某一资源的限制时，再进行创建该资源的调用就会失败并引发异常。

有关 Amazon Neptune 和 Amazon RDS 之间共享的限制列表，请参阅《Amazon RDS 用户指南》**中的 [Amazon RDS 中的限制](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Limits.html#RDS_Limits.Limits)。

## 连接到 Neptune 需要 VPC
<a name="limits-vpc-required"></a>

Amazon Neptune 是一项仅针对虚拟私有云 (VPC) 的服务。

此外，不允许从 VPC 外部访问实例。

## Neptune 需要 SSL
<a name="limits-ssl-required"></a>

从引擎版本 `1.0.4.0` 开始，Amazon Neptune 仅允许使用安全套接字层 (SSL) 连接通过 HTTPS 连接到任何实例或集群端点。

Neptune 需要 TLS 版本 1.2，并使用以下强密码套件：
+ `TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384`
+ `TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256`
+ `TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384`
+ `TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256`
+ `TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA`
+ `TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA`

## 可用区和数据库子网组
<a name="limits-azs-subnets"></a>

Amazon Neptune 要求每个在至少两个支持的可用区中拥有子网的集群都有一个数据库子网组（）。AZs

我们建议在不同的可用区中使用三个或更多子网。

## HTTP 请求负载最大值 (150MB)
<a name="limits-http"></a>

Gremlin 和 SPARQL HTTP 请求的总大小必须小于 150 MB。如果请求超过此大小，Neptune 返回 `HTTP 400: BadRequestException`。

此限制不适用于 Gremlin 连接 WebSockets 。

## Gremlin 实施的不同之处
<a name="limits-gremlin"></a>

Amazon Neptune Gremlin 实施具有特定的实施细节，可能会不同于其它 Gremlin 实施。

有关更多信息，请参阅 [Amazon Neptune 中的 Gremlin 标准合规性](access-graph-gremlin-differences.md)。

## Neptune 不支持字符串数据中的 null 字符
<a name="limits-nulls"></a>

Neptune 不支持字符串中的 null 字符。Gremlin 和 OpenCypher 的属性图数据以及数据都是如此。 RDF/SPARQL 

## URI 中的 SPARQL UPDATE LOAD
<a name="limits-sparql-update"></a>

URI 中的 `SPARQL UPDATE LOAD` 仅适用于位于同一 VPC 中的资源。

这包括与创建了 Amazon S3 VPC 终端节点的集群 URLs 位于同一区域的 Amazon S3。

Amazon S3 URL 必须是 HTTPS，并且任何身份验证都必须包含在 URL 中。有关更多信息，请参阅《Amazon Simple Storage Service API 参考》**中的[验证请求：使用查询参数](https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html)。

有关创建 VPC 端点的信息，请参阅 [创建 Amazon S3 VPC 端点](bulk-load-data.md#bulk-load-prereqs-s3)。

如果您需要从文件加载数据，我们建议使用 Amazon Neptune 加载程序 API。有关更多信息，请参阅 [使用 Amazon Neptune 批量加载程序摄取数据](bulk-load.md)。

**注意**  
Amazon Neptune 加载程序 API 是非 ACID 的。

## IAM 身份验证和访问控制
<a name="limits-auth-access"></a>

在[版本 1.2.0.0](engine-releases-1.2.0.0.md) 之前的 Neptune 引擎版本中，仅在数据库集群级别支持 IAM 身份验证和访问控制。但是，从版本 `1.2.0.0` 开始，您可以使用 IAM policy 中的条件键在更精细的级别上控制基于查询的访问权限。有关更多信息，请参阅[在 Neptune 数据访问策略语句中使用查询操作](iam-data-access-policies.md#iam-data-query-actions)和[使用以下命令对您的亚马逊 Neptune 数据库进行身份验证 AWS Identity and Access Management](iam-auth.md)

亚马逊 Neptune 控制台需要**NeptuneReadOnlyAccess**权限。您可以通过撤消此访问权限来限制对 IAM 用户的访问。有关更多信息，请参阅 [使用 AWS 托管策略访问亚马逊 Neptune 数据库](security-iam-access-managed-policies.md)。

Amazon Neptune 不支持基于用户名/密码的访问控制。

## WebSocket 并发连接和最长连接时间
<a name="limits-websockets"></a>

每个 Neptune 数据库实例的并发 WebSocket 连接数有限制。当达到该限制时，Neptune 会限制任何打开新 WebSocket 连接的请求，以防止耗尽所有分配的堆内存。

对于 Neptune 支持的所有大型实例类型和所有无服务器实例，最大并发 WebSocket 连接数为 32K (32,768)。

下表列出了较小实例类型的最大并发 WebSocket 连接数：


| 实例类型 | 最大并发 WebSocket 连接数 | 
| --- | --- | 
| 无服务器 | 32768 | 
| db.r4.4xlarge | 16384 | 
| db.r4.2xlarge | 8192 | 
| db.r4.xlarge | 4096 | 
| db.r4.large | 2048 | 
| db.r5.4xlarge | 16384 | 
| db.r5.2xlarge | 8192 | 
| db.r5.xlarge | 4096 | 
| db.r5.large | 2048 | 
| db.r5d.8xlarge | 32768 | 
| db.r5d.4xlarge | 16384 | 
| db.r5d.2xlarge | 8192 | 
| db.r5d.xlarge | 4096 | 
| db.r5d.large | 2048 | 
| db.t3.medium | 512 | 
| db.t4g.medium | 512 | 
| db.r6g.4xlarge | 16384 | 
| db.r6g.2xlarge | 8192 | 
| db.r6g.xlarge | 4096 | 
| db.r6g.large | 2048 | 
| db.r6gd.4xlarge | 16384 | 
| db.r6gd.2xlarge | 8192 | 
| db.r6gd.xlarge | 4096 | 
| db.r6gd.large | 2048 | 
| db.x2iezn.2xlarge | 16384 | 
| db.x2iedn.xlarge | 4096 | 
| db.x2gd.xlarge | 4096 | 
| db.x2gd.large | 2048 | 
| db.x2gd.4xlarge | 16384 | 
| db.x2gd.2xlarge | 8192 | 
| db.x2g.xlarge | 4096 | 
| db.x2g.large | 2048 | 
| db.x2g.4xlarge | 16384 | 
| db.x2g.2xlarge | 8192 | 
| db.x1e.xlarge | 4096 | 
| db.x1e.2xlarge | 16384 | 
| db.r6i.xlarge | 4096 | 
| db.r6i.large | 2048 | 
| db.r6i.2xlarge | 8192 | 
| db.r7g.4xlarge | 16384 | 
| db.r7g.2xlarge | 8192 | 
| db.r7g.xlarge | 4096 | 
| db.r7g.large | 2048 | 
| db.r8g.4xlarge | 16384 | 
| db.r8g.2xlarge | 8192 | 
| db.r8g.xlarge | 4096 | 
| db.r8g.large | 2048 | 
| db.r7i.large | 2048 | 
| db.r7i.xlarge | 4096 | 
| db.r7i.2xlarge | 8192 | 

**注意**  
Neptune 不再支持`R4`实例类型。

当客户端正常关闭连接时，该关闭将立即反映在打开的连接计数中。

如果客户端没有关闭连接，则连接可能会在 20 到 25 分钟的空闲超时后自动关闭（空闲超时是指从客户端收到最后一条消息以来经过的时间）。但是，只要未达到空闲超时，Neptune 就会无限期地将连接保持为打开状态。

启用 IAM 身份验证后，如果 WebSocket 连接尚未关闭，则连接总是在建立 10 天后的几分钟内断开连接。

## 对于属性和标签的限制
<a name="limits-properties"></a>

对图形中可以具有的顶点和边数或 RDF 四边形的数量没有限制。

对任何一个顶点或边可以具有的属性或标签的数量也没有限制。

对单个属性或标签的大小的限制为 55 MB。在 RDF 术语中，这意味着 RDF 四边形的任何列（S、P、O 或 G）中的值不能超过 55 MB。

如果需要将较大的对象（例如图像）与图形中的顶点或节点相关联，则可以将其存储为 Amazon S3 中的文件，并将 Amazon S3 路径用作属性或标签。

## 影响 Neptune 批量加载程序的限制
<a name="limits-bulk-load"></a>

一次排队的 Neptune 批量加载任务数不能超过 64 个。

Neptune 仅跟踪最近的 1024 个批量加载任务。

Neptune 仅存储每个任务的后 10000 个错误详细信息。

