View a markdown version of this page

为成长做好准备 - AWS 规范性指导

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

为成长做好准备

成功使用池模型后,最终会超出单个 Neptune 集群的大小。租户增长,或者租户数量增加,所有客户所需的数据摄取率超过了集群的能力。发生这种情况时,您需要将客户分成多个集群。事先针对此配置进行设计,而不必稍后再尝试进行改造。即使您的初始规模是仅使用单个集群,也要模拟将来达到该规模时跨多个集群路由租户所需的组件。

如果您的解决方案需要更多资源,具体取决于您的租户规模,请同时为他们的增长做好准备。如果单个集群上的多个客户显著增长,则该集群可能不再支持您的需求。使用 Amazon Neptune 数据库克隆功能,设计一种策略,将租户移动到另一个集群,或者将现有集群一分为二。

熟悉 Neptune Copy-on-Write 协议,它可以在你实施数据库克隆时为你节省资金。,如果你因为摄取瓶颈而拆分集群,那么只要你的策略允许,不从集群中删除数据可能会更有效率。如果数据页面未更改,则两个集群将共享该页面,但如果数据页面已修改(因为数据页上的某些数据已被删除),则不会共享该页面。

注意

本指南适用于撰写本文时最新的 Neptune 版本,即 Neptune 版本 1.3.1。随着 Neptune 存储层的发展,该指南可能会在 future 版本中发生变化。

多租户场景的限制

请注意,某些 Neptune 功能不是为多租户场景构建的。不应允许租户直接访问池模型中的 Neptune 端点,因为这些多租户策略不是在数据库级别强制执行的。始终在您的客户和 Neptune 端点之间保留某种代理,以强制执行本文档中描述的设计。此类代理的示例包括以下内容:

  • 在客户端图层中追加标签过滤器

  • 有一个 API 可以将身份验证令牌映射到租户 ID 并将此过滤器注入查询

本指南还适用于让客户直接访问海王星图形笔记本、Neptune 图形浏览器或 Neptun e Streams 等功能。