Das Erstellen von ArcGIS-Karten- oder -Image-Service-Caches in der Amazon Elastic Compute Cloud (EC2) unterscheidet sich wie folgt vom Caching außerhalb der Cloud:
- Ihnen stehen eine Reihe unterschiedlicher Instanzgrößen und Preise zur Verfügung.
- Sie können der Instanz Datenträger hinzufügen, auf denen Sie den Cache speichern können.
In diesem Thema werden die oben aufgeführten Faktoren näher erläutert.
Auswählen von Instanzgrößen und Preisen
Amazon EC2 bietet eine Reihe von Instanzgrößen und -spezifikationen. Für deren Nutzung fällt im Einzelnen ein bestimmter Preis pro Stunde an. Größere Instanzen, insbesondere solche mit viel Arbeitsspeicher, können Kacheln sehr schnell erstellen. Kleinere Instanzen erstellen Kacheln langsamer, verursachen jedoch geringere Kosten.
Sie können den Cache in einem angefügten Amazon Elastic Block Store-Volume (EBS) mit einer leistungsstarken Instanz erstellen. Nach Abschluss des Caching können Sie das EBS-Volume trennen und an die reguläre Instanz anfügen (die kleiner und kostengünstiger sein kann). Die leistungsstarke Instanz, die Sie zum Caching verwendet haben, kann dann beendet werden. Auf diese Weise können Sie die Leistung der Cloud zum Cachen nutzen und müssen sich nicht auf eine relativ kostspielige Instanz festlegen, sondern diese nur so lange wie nötig verwenden.
Ihre Entscheidung ist möglicherweise ein Kompromiss zwischen Wirtschaftlichkeit und Geschwindigkeit. Die Verwendung einer weniger leistungsfähigen Instanz mit niedrigeren Kosten pro Stunde ist nicht immer die wirtschaftlichste Wahl, da die Gesamtkosten des Cache von der Anzahl der für die Kachelerstellung aufgewendeten Stunden abhängt. Andererseits können sehr leistungsfähige Instanzen ebenfalls höhere Gesamtkosten verursachen: auch wenn das Caching weniger Stunden in Anspruch nimmt, bezahlen Sie einen höheren Preis pro Stunde.
Mit einem kleinen Test-Cache (eventuell die Größe einer mittelgroßen Stadt) und einem benutzerdefinierten Amazon Machine Image (AMI) bzw. einer benutzerdefinierten Site-Vorlage können Sie unterschiedliche Instanztypen relativ kostengünstig testen, um zu ermitteln, welcher für Ihren Cache am wirtschaftlichsten ist.
Leistungsfähige EC2-Instanztypen sind gut für geplante Cache-Aktualisierungen geeignet, da viele Aktualisierungs-Workflows sehr zeitkritisch sind.
Auswählen der Anzahl der beim Cachen zu verwendenden Kartenservice-Instanzen
Jede EC2-Instanz verfügt über eine bestimmte Anzahl von virtuellen CPU-Kernen. Diese Anzahl ist sichtbar, wenn Sie den Instanztyp in der Amazon Web Services Management Console auswählen. Anhand der Anzahl der Kerne können Sie bestimmen, wie viele Instanzen des CachingTools-Geoverarbeitungsservice für das Caching vorgesehen werden müssen. Wenn zu viele Service-Instanzen verwendet werden, sind die CPUs überlastet, während bei Verwendung von zu wenigen Service-Instanzen die CPUs unausgelastet sind.
Obgleich die optimale Anzahl durch Ausprobieren ermittelt werden kann, ist es ein guter Ausgangspunkt, maximal n+1 Instanzen des CachingTools-Service zuzulassen, wobei "n" für die Anzahl der virtuellen Kerne auf einer EC2-Instanz Ihrer Site steht.
Automatische Skalierung
Wenn Sie einen großen Cache erstellen, versuchen Sie möglicherweise, Trigger für die automatische Skalierung einzurichten, die die Anzahl der am Cache arbeitenden EC2-Instanzen mit steigender CPU-Auslastung automatisch erhöhen. Die automatische Skalierung ist jedoch für die Verarbeitung unerwarteter Änderungen beim Datenverkehr besser geeignet. Da für die Erstellung von Caches eine hohe Rechenperformance benötigt wird, ist es sinnvoller, alle erforderlichen Instanzen zu starten, bevor Sie den Cache erstellen, anstatt zu warten, bis sie nacheinander über Trigger für automatische Skalierung gestartet werden.
Festlegen der Platzierung des Cache
Wie unter Strategien für den Datentransfer zu Amazon Web Services beschrieben, stehen mehrere Speichertypen zum Ablegen der Daten zur Verfügung. Wenn Sie den Cache zum ersten Mal erstellen, schreiben Sie ihn in ein EBS-Volume, das mit der EC2-Instanz verknüpft ist. Dieser Datenträger wird beim Erstellen der Site angefügt und ist als Speicherplatz für den Cache gut geeignet, wenn der Datenträger groß genug ist. Wenn das Volume zu klein ist, können Sie es durch ein größeres Volume ersetzen, das Sie aus einem Snapshot des vorhandenen Datenvolumes erstellen, und auf diesem ein Server-Cache-Verzeichnis registrieren.
Erstellen Sie keinen Cache auf Laufwerk C oder im Stammverzeichnis der EC2-Instanz. Sollte die Instanz beendet werden, geht der Cache verloren.
Wenn auf einer lokalen Festplatte bereits Caches vorhanden und Sie mit der Verwendung von S3-Buckets (Amazon Simple Storage Service) vertraut sind, können Sie Ihre CompactV2-Caches in einen Bucket in Amazon S3 kopieren und Karten-Caches darin speichern. Als Cache-Verzeichnisse registrierte Cloud-Speicher können nicht zum Erstellen oder Verwalten von Caches verwendet werden. Der Cache sollte im CompactV2-Speicherformat vorliegen, damit die Cache-Nutzung unterstützt wird, denn dieses Format bietet optimale Performance. Wenn Ihr bestehender Cache ein älteres Speicherformat verwendet, müssen Sie ihn mit dem Geoverarbeitungswerkzeug Speicherformat des Kartenserver-Cache aktualisieren auf das CompactV2-Format aktualisieren.
- Erstellen Sie einen Cache im CompactV2-Format, indem Sie einen neuen gecachten Karten- oder Image-Service in diesem Format veröffentlichen oder einen vorhandenen Cache mit dem Geoverarbeitungswerkzeug Speicherformat des Kartenserver-Cache aktualisieren auf das CompactV2-Format aktualisieren.
- Erstellen Sie einen Amazon S3-Bucket in derselben Region wie die ArcGIS Server-Site unter AWS.
- Kopieren Sie die Service-Caches vom lokalen Laufwerk auf die ArcGIS Server-Site unter AWS, und legen Sie sie in einem Ordner namens arcgiscache innerhalb des Amazon S3-Buckets ab.
Beispiele für das Kopieren von Inhalten in einen S3-Bucket finden Sie in der AWS-Dokumentation. Bei sehr großen Caches (mehrere Terabyte) müssen Sie diese möglicherweise auf einem Datenträger an Amazon schicken und von Amazon hochladen lassen.
- Melden Sie sich bei ArcGIS Server Manager für die Site an, auf der der gecachte Service ausgeführt wird, und registrieren Sie den S3-Bucket als Cloud-Speicher und Cache-Verzeichnis bei der ArcGIS Server-Site unter AWS.
- Führen Sie, während Sie noch bei ArcGIS Server Manager angemeldet sind, einen der folgenden Schritte aus:
- Beenden Sie den vorhandenen Service, und ändern Sie das Cache-Verzeichnis so, dass es auf den neuen Cloud-Speicher-Cache-Verzeichnis im S3-Bucket verweist.
- Veröffentlichen Sie einen neuen Service, der die Caches bereitstellt, die Sie in Schritt 3 im S3-Bucket platziert haben.
- Starten Sie den Service neu.
Hinweis:
Wenn Sie den Cache des Kartenservice aktualisieren, wird der aktualisierte Cache auf einem lokalen Laufwerk der ArcGIS Server-Site generiert. Sie müssen den Cache erneut in den S3-Bucket kopieren, damit die Benutzer des Service die aktualisierten Cache-Inhalte verwenden können.