

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 卓越營運支柱
<a name="operational-excellence-pillar"></a>

 AWS Well-Architected Framework 的[卓越營運支柱](https://docs.aws.amazon.com/wellarchitected/latest/framework/operational-excellence.html)著重於執行和監控系統，並持續改善流程和程序。它包含有效支援開發和執行工作負載、深入了解其操作，以及持續改善支援程序和程序以提供商業價值的能力。您可以透過自我修復工作負載來降低操作複雜性，無需人工介入即可偵測和修復大多數問題。您可以遵循本節所述的最佳實務來實現此目標，並使用 Amazon Neptune Analytics 指標、APIs和機制，在工作負載偏離預期行為時正確回應。

此卓越營運支柱的討論著重於下列關鍵領域：
+ 基礎設施即程式碼 (IaC)
+ 變更管理
+ 彈性策略
+ 事件管理
+ 合規稽核報告
+ 日誌記錄和監控

## 使用 IaC 方法自動化部署
<a name="iac"></a>

使用 IaC 在 Neptune 上自動化部署的最佳實務包括下列項目：
+ 套用 IaC 來部署 Neptune Analytics 圖形和相關資源。為了一致的環境組態，請使用 提供的 [Neptune Analytics 支援](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_NeptuneGraph.html)[AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)來佈建圖形和私有端點。
+ 使用 CloudFormation 在 [Amazon SageMaker AI 上佈建 Neptune 筆記本執行個體。](https://docs.aws.amazon.com/neptune-analytics/latest/userguide/create-notebook-cfn.html)您可以使用筆記本來查詢和視覺化 Neptune Analytics 圖形中的資料。
+ 當您從現有來源建立 Neptune Analytics 圖形，例如 Neptune 資料庫叢集或快照，或 Amazon Simple Storage Service (Amazon S3) 中暫存的資料檔案時，請監控[大量匯入任務](https://docs.aws.amazon.com/neptune-analytics/latest/userguide/bulk-import-checking-details.html)。
+ 自動化 Neptune Analytics 操作程序，例如[調整圖形大小](https://docs.aws.amazon.com/neptune-analytics/latest/apiref/API_UpdateGraph.html)、刪除和快照圖形、從快照還原圖形，以及重設和重新載入圖形。使用 [Neptune Analytics API](https://docs.aws.amazon.com/neptune-analytics/latest/apiref/Welcome.html)，可透過 [AWS Command Line Interface (AWS CLI)](https://aws.amazon.com/cli/) 或 [SDK](https://aws.amazon.com/developer/tools/) 取得。
+ 評估圖形所需的運作時間。分析通常是暫時性的；只有您需要執行演算法的時間才需要圖形。如果是這種情況，請使用 AWS CLI 或 SDKs來[快照，並在不再需要圖形時將其刪除](https://docs.aws.amazon.com/neptune-analytics/latest/userguide/managing.html#managing-deleting)。然後，您可以視需要稍後[從快照還原它](https://docs.aws.amazon.com/neptune-analytics/latest/userguide/graph-snapshots.html#graph-snapshots-restoring)。
+ 從用戶端外部存放連線字串。您可以在 [AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html)、[Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Introduction.html) 或任何可以動態變更連線字串的位置中存放連線字串。
+ [使用標籤將中繼資料新增至](https://docs.aws.amazon.com/neptune-analytics/latest/userguide/managing-tagging.html) Neptune Analytics 資源，並根據標籤追蹤用量。標籤有助於組織您的 資源。例如，您可以將通用標籤套用至特定環境或應用程式中的資源。您也可以使用標籤來分析資源用量的帳單；如需詳細資訊，請參閱*AWS 《帳單使用者指南*》中的[使用成本分配標籤來組織和追蹤 AWS 成本](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html)。此外，您可以在 AWS Identity and Access Management (IAM) 政策中使用條件，根據該資源上使用的標籤來控制對 AWS 資源的存取。您可以使用全域 `aws:ResourceTag/tag-key` 條件索引鍵來執行此操作。如需詳細資訊，請參閱《*IAM 使用者指南*》中的[控制對 AWS 資源的存取](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html#access_tags_control-resources)。

## 營運設計
<a name="design-ops"></a>

採用改善 Neptune Analytics 圖形操作方式的方法：
+ 維護個別的 Neptune Analytics 圖形，以供開發、測試和生產使用。這些圖形可能有不同的資料集、使用者和操作控制。
+ 為不同的用途維護單獨的 Neptune Analytics 圖形。例如，如果兩組分析使用者需要具有不同時間軸、模型、效能和可用性 SLAs 和用量模式的個別圖形，請為每個群組維護個別圖形。
+ 準備使用者和營運人員進行 Neptune Analytics [維護更新](https://docs.aws.amazon.com/neptune-analytics/latest/userguide/managing-maintaining.html)。

## 進行頻繁、小型、可逆的變更
<a name="frequent-changes"></a>

下列建議著重於您可以進行的小型、可逆變更，以將複雜性降至最低，並降低工作負載中斷的可能性：
+ 在 GitHub 或 GitLab 等來源控制服務中存放 IaC 範本和指令碼。
**重要**  
請勿在來源控制中存放 AWS 登入資料。
+ 要求 IaC 部署使用持續整合和持續交付 (CI/CD) 服務，例如 [AWS CodeDeploy](https://docs.aws.amazon.com/codedeploy/latest/userguide/welcome.html)或 [AWS CodeBuild](https://docs.aws.amazon.com/codebuild/latest/userguide/welcome.html)。在非生產 Neptune Analytics 環境中編譯、測試和部署程式碼，然後再將其提升為生產圖表。

## 實作可觀測性以取得可行的洞見
<a name="observability"></a>

全面了解工作負載行為、效能、可靠性、成本和運作狀態。下列建議可協助您在 Neptune Analytics 中了解該層級：
+ 監控 Neptune Analytics 的 Amazon CloudWatch 指標。您可以從這些指標判斷圖形的大小 （節點、邊緣和向量的數量，加上總位元組大小）、CPU 使用率，以及查詢請求和錯誤率。
+ 為您的應用程式日誌中找到的關鍵指標建立 CloudWatch 儀表板和警示`NumOpenCypherRequestsPerSec`，例如 `NumQueuedRequestsPerSec`、`GraphSizeBytes`、、 `CPUUtilization` 和 以及 Neptune `GraphStorageUsagePercent`用戶端回應。
+ 設定通知以監控 Neptune Analytics 圖形的運作狀態，例如圖形大小、請求率或 CPU 使用率超過閾值時。例如，如果 `GraphStorageUsagePercent` 已在您打算大幅成長的圖形上攀升到 90%，請決定是否增加記憶體最佳化的 Neptune 容量單位 (m-NCU) 容量。如果目前的 m-NCU 為 128，將其增加到 256 將減少約 45% 的儲存。如果 `NumQueuedRequestsPerSec` 通常大於零，請考慮增加 m-NCU 容量，以提供更多的運算容量。或者，您可以減少用戶端並行。

## 從所有操作失敗中學習
<a name="op-failure"></a>

自我修復基礎設施是一種長期工作，會在發生罕見問題或回應效果不如預期時，在反覆運算中發展。採用下列實務可推動專注於該目標：
+ 透過從所有失敗中學習來推動改進。
+ 跨團隊和組織分享學到的內容。如果您的組織中有多個團隊使用 Neptune，請建立通用聊天室或使用者群組來共用學習和最佳實務。

## 使用記錄功能來監控未經授權的或異常活動
<a name="logging"></a>

使用記錄來觀察異常效能和活動模式。請考慮下列最佳實務：
+ Neptune Analytics 支援使用 記錄控制平面動作 AWS CloudTrail。如需詳細資訊，請參閱[使用 記錄 Neptune Analytics API 呼叫 AWS CloudTrail](https://docs.aws.amazon.com/neptune-analytics/latest/userguide/monitoring.html#monitoring-cloudtrail)。透過此功能，您可以追蹤 Neptune Analytics 資源的建立、更新和刪除。如需強大的監控和提醒功能，您也可以整合 CloudTrail 事件與 [Amazon CloudWatch Logs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html)。若要增強 Neptune Analytics 服務活動的分析並識別 活動的變更 AWS 帳戶，您可以使用 [Amazon Athena 查詢 CloudTrail 日誌](https://docs.aws.amazon.com/athena/latest/ug/cloudtrail-logs.html)。例如，您可以使用查詢來識別趨勢，並依屬性 (例如來源 IP 位址或使用者) 進一步隔離活動。
+ 您也可以使用 CloudTrail [來啟用 Neptune Analytics 資料平面活動的記錄，](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-data-events-with-cloudtrail.html)例如查詢執行。您可以檢視正在執行的查詢、其頻率及其來源。根據預設，CloudTrail 不會記錄資料事件。資料事件需支付額外的費用。如需詳細資訊，請參閱 [AWS CloudTrail 定價](https://aws.amazon.com/cloudtrail/pricing/)。
+ 您也可以在控制平面或資料平面中記錄對 Neptune Analytics 的應用程式呼叫。例如，如果您使用 [適用於 Python (Boto3) 的 AWS SDK](https://boto3.amazonaws.com/v1/documentation/api/latest/index.html) 進行查詢，您可以[啟用偵錯層級記錄](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/core/boto3.html)，以取得對主控台或檔案的查詢追蹤。這在開發期間很有用。我們也建議您從應用程式擷取並記錄例外狀況。