Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Speicher
Neptune-Daten werden auf einem Cluster-Volume gespeichert. Dabei handelt es sich um ein einzelnes virtuelles Volume, das Non-Volatile Memory Express-Laufwerke (NVMe) verwendet. SSD-based Der Cluster-Volume besteht aus einer Sammlung logischer Blöcke, die als „Segmente“ bezeichnet werden. Jedem dieser Segmente sind 10 Gigabyte (GB) Speicher zugewiesen. Die Daten in jedem Segment werden über drei Availability Zones (AZs) in einer einzigen AWS Region repliziert, in der sich der DB-Cluster befindet.
Wenn ein Neptune-DB-Cluster erstellt wird, wird ihm ein einzelnes Segment mit 10 GB zugeteilt. Wenn die Datenmenge zunimmt und den aktuell zugeteilten Speicherplatz überschreitet, erweitert Neptune das Cluster-Volume automatisch, indem neue Segmente hinzugefügt werden. Ein Neptune-Cluster-Volume kann in allen unterstützten Regionen auf eine maximale Größe von 128 Tebibyte (TiB) anwachsen, mit Ausnahme der Regionen China und der Regionen AWS GovCloud (USA), wo es auf 64 TiB begrenzt ist.
Das DB-Cluster-Volume enthält alle Ihre Benutzerdaten, Indizes und Wörterbücher (im Neptune-Diagrammdatenmodell Abschnitt beschrieben) sowie interne Metadaten wie interne Transaktionsprotokolle. Diese Diagrammdaten, einschließlich Indizes und interner Protokolle, dürfen die maximale Größe des Cluster-Volumes nicht überschreiten.
I/O— Optimierte Speicheroption
Neptune bietet zwei Preismodelle für Speicher an:
Standardspeicher — Standardspeicher bieten kostengünstigen Datenbankspeicher für Anwendungen mit mäßiger bis geringer I/O Auslastung.
-
I/O—Optimierter Speicher — Bei I/O —Optimierter Speicher zahlen Sie nur für den Speicher, den Sie verwenden, und das zu höheren Kosten als für Standardspeicher, und Sie zahlen nichts für den Speicher I/O, den Sie nutzen.
Mit I/O —Optimized Storage profitieren Sie von vorhersehbaren Kosten, niedriger I/O Latenz und gleichbleibendem I/O Durchsatz für I/O grafikintensive Workloads.
Weitere Informationen finden Sie unter —Optimierter Speicher. I/O
Neptune-Speicherzuteilung
Obwohl ein Neptune-Cluster-Volume auf 128 TiB (oder 64 TiB in einigen Regionen) anwachsen kann, wird Ihnen der zugewiesene Speicherplatz in Rechnung gestellt. Der gesamte zugeteilte Speicherplatz wird durch die Speicherhöchstgrenze festgelegt. Dies ist der maximale Speicherplatz, der dem Cluster-Volume zu einem beliebigen Zeitpunkt während seines Bestehens zugeteilt wird.
Das bedeutet, dass selbst wenn Sie Benutzerdaten aus einem Cluster-Volume entfernen, z. B. durch Ausführen einer Drop-Query wieg.V().drop(), der gesamte zugewiesene Speicherplatz gleich bleibt. Neptune optimiert automatisch den ungenutzten zugeteilten Speicherplatz für die zukünftige Wiederverwendung.
Zusätzlich zu den Benutzerdaten verbrauchen auch Wörterbuchdaten und interne Transaktionsprotokolle Speicherplatz. Wörterbuchdaten bleiben auch dann bestehen, wenn Sie die unterstützten Grafikdaten löschen. Neptune kann diese Einträge jedoch wiederverwenden, wenn Sie die Daten erneut eingeben. Um ungenutzte Wörterbucheinträge zu bereinigen, können Sie Folgendes aktivieren. Wörterbuch: Müllabfuhr Interne Protokolle verwenden einen separaten Speicherplatz mit einer eigenen Hochwassermarkierung. Abgelaufene Protokolle werden nur für andere Protokolle wiederverwendet, nicht für Grafikdaten. Der für Protokolle zugewiesene Speicherplatz ist in der Gesamtzahl enthalten, die von der VolumeBytesUsed CloudWatch Metrik gemeldet wird.
In Bewährte Methoden für Speicher finden Sie Möglichkeiten, den zugeteilten Speicherplatz auf ein Minimum zu beschränken und Speicherplatz wiederzuverwenden.
Neptune-Speicher-Fakturierung
Die Lagerkosten werden, wie im vorherigen Abschnitt beschrieben, auf der Grundlage der Höchstwassergrenze des Speichers abgerechnet. Amazon Neptune repliziert Ihre Daten über mehrere Availability Zones hinweg, Sie zahlen jedoch nur für eine Kopie der Daten.
Sie können ermitteln, wie hoch der aktuelle Speicherwert Ihres DB-Clusters ist, indem Sie die VolumeBytesUsed CloudWatch Metrik überwachen (siehe). Überwachung von Neptun mit Amazon CloudWatch
Andere Faktoren, die sich auf Ihre Neptune-Speicherkosten auswirken können, sind Datenbank-Snapshots und Backups, die separat als Backup-Speicher abgerechnet werden und auf den Neptune-Speicherkosten basieren (siehe). CloudWatch Metriken, die für die Verwaltung des Neptune-Backup-Speichers nützlich sind
Wenn Sie jedoch einen Klon Ihrer Datenbank erstellen, verweist der Klon auf dasselbe Cluster-Volume, das Ihr DB-Cluster selbst verwendet, sodass keine zusätzlichen Speichergebühren für die Originaldaten anfallen. Nachträgliche Änderungen am Klon verwenden das Copy-On-Write-Protokoll und führen zu zusätzlichen Speicherkosten.
Weitere Preisinformationen für Neptune finden Sie auf der Website unter Amazon Neptune-Preise. https://aws.amazon.com/neptune/pricing
Bewährte Methoden für Neptune-Speicher
Da bestimmte Datentypen permanenten Speicherplatz in Neptune verbrauchen, sollten Sie diese bewährten Methoden anwenden, um große Spitzen beim Speicherwachstum zu vermeiden:
Vermeiden Sie bei der Entwicklung Ihres Diagrammdatenmodells temporäre Eigenschaftsschlüssel und benutzerorientierte Werte, soweit möglich.
Wenn Sie Ihr Datenmodell ändern möchten, dürfen Sie Daten erst dann in einen vorhandenen DB-Cluster unter Verwendung des neuen Modells laden, bis Sie die Daten in diesem DB-Cluster mithilfe der Fast-Reset-API gelöscht haben. Häufig ist es am besten, Daten, die ein neues Modell verwenden, in einen neuen DB-Cluster zu laden.
-
Transaktionen für große Datenmengen erzeugen entsprechend umfangreiche interne Protokolle, wodurch die Höchstgrenze für den internen Protokollbereich dauerhaft erhöht werden kann. Beispielsweise kann eine einzelne Transaktion, die alle Daten in Ihrem DB-Cluster löscht, ein großes internes Protokoll generieren. Dieses Protokoll erfordert die Zuweisung einer großen Menge an internem Speicher, wodurch der verfügbare Speicherplatz für Grafikdaten dauerhaft reduziert wird.
Um dies zu vermeiden, sollten Sie große Transaktionen in kleinere Transaktionen aufteilen und genügend Zeit zwischen ihnen einplanen, sodass die entsprechenden internen Protokolle ablaufen können und ihr interner Speicher für die Wiederverwendung durch nachfolgende Protokolle freigegeben wird.
Um das Wachstum Ihres Neptune-Cluster-Volumens zu überwachen, können Sie für die Metrik einen CloudWatch Alarm einrichten.
VolumeBytesUsedCloudWatch Dies kann besonders nützlich sein, wenn Ihre Daten die maximale Größe des Cluster-Volumes erreichen. Weitere Informationen finden Sie unter Verwenden von CloudWatch Amazon-Alarmen.
Wenn Ihr DB-Cluster über eine große Menge an ungenutztem zugewiesenem Speicherplatz verfügt, können Sie seinen Speicher verkleinern. Exportieren Sie dazu alle Daten in Ihrem Diagramm und laden Sie sie dann erneut in einen neuen DB-Cluster. Im Neptune-Datenexportdienst und -dienstprogramm finden Sie eine einfache Möglichkeit, Daten aus einem DB-Cluster zu exportieren, und im Neptune-Bulkloader finden Sie eine einfache Möglichkeit, Daten zurück in Neptune zu importieren.
Anmerkung
Die Erstellung und Wiederherstellung eines Snapshots reduziert nicht die Menge des Speichers, der Ihrem DB-Cluster zugeteilt ist, da ein Snapshot das ursprüngliche Image des dem Cluster zugrunde liegenden Speichers beibehält. Wenn eine große Menge des zugeteilten Speichers nicht verwendet wird, können Sie den zugeteilten Speicher nur reduzieren, indem Sie die Diagrammdaten exportieren und in einen neuen DB-Cluster laden.
Speicherzuverlässigkeit und hohe Verfügbarkeit von Neptune
Amazon Neptune ist auf Zuverlässigkeit, Beständigkeit und Fehlertoleranz ausgelegt.
Da Kopien Ihrer Neptune-Daten in drei Availability Zones (AZs) verwaltet werden, ist die Speicherung der Daten äußerst robust und die Wahrscheinlichkeit eines Datenverlusts ist sehr gering. Amazon Neptune repliziert die Daten automatisch über die Availability Zones hinweg, unabhängig davon, ob sich darin DB-Instances befinden. Die Menge der replizierten Daten ist unabhängig von der Anzahl der DB-Instances in Ihrem Cluster.
Das bedeutet, dass Sie eine Read-Replica schnell hinzufügen können, da Neptune keine neue Kopie der Diagrammdaten erstellt. Stattdessen wird die Read-Replica mit dem Cluster-Volume verbunden, das Ihre Daten bereits enthält. Ebenso werden beim Entfernen einer Read-Replica die zugrunde liegenden Daten nicht entfernt.
Sie können das Cluster-Volume und dessen Daten erst löschen, wenn Sie alle zugehörigen DB-Instances gelöscht haben.
Neptune erkennt automatisch Fehler in den Segmenten, aus denen das Cluster-Volume besteht. Wenn eine Kopie der Daten in einem Segment beschädigt ist, repariert Neptune dieses Segment sofort und verwendet andere Kopien der Daten innerhalb desselben Segments, um sicherzustellen, dass die reparierten Daten aktuell sind. Dadurch vermeidet Neptune Datenverluste und reduziert die Notwendigkeit einer Point-in-Time-Wiederherstellung zur Wiederherstellung nach einem Festplattenausfall.