HeatMap zum Identifizieren von Hotspots auf zwischengespeicherten Diensten von ArcGIS Server?

14

Mit ArcGIS Server können Sie zwischengespeicherte Karten-Services erstellen. Diese können von verschiedenen Anwendungen (ArcGIS Desktop, Web-Apps usw.) verwendet werden. Ich möchte eine Vorstellung davon bekommen, welche Bereiche meines Caches am meisten betroffen sind. Ich möchte diese Ergebnisse mit einer Heatmap visualisieren, die auf derselben zwischengespeicherten Map liegt. Ich habe überlegt, etwas wie die HeatMapsAPI und eine der von ESRI bereitgestellten APIs zu verwenden (Javascript-API sollte ausreichen).

Ich weiß, dass sich die zwischengespeicherten Karten in Version 10 von ArcGIS Server möglicherweise geringfügig ändern, aber ich versuche zu ermitteln, welche Kacheln am häufigsten angefordert werden, ohne dass ArcGIS Server oder der Webserver (IIS) erheblich belastet werden.

Ich dachte ursprünglich daran, das eigentliche Cache-Verzeichnis unter dem Ordner arcgiscache zu untersuchen und mich vielleicht in das Attribut Date Accessed einzuklinken (habe aber keine Ahnung, wie man dies tatsächlich implementiert).

Ich würde gerne von jedem hören, der Erfahrung mit ArcGIS Server hat, ob er Vorschläge dazu hat.

Simon
quelle
Wie kann ich vorgehen, um dies auf die GIS-Site zu verschieben?
Simon

Antworten:

9

Das Unternehmen, für das ich arbeite (Latitude Geographics), stellt ein Produkt namens Geocortex Optimizer her, das dies für Sie erledigen kann.

Es analysiert sowohl Ihre ArcGIS Server-Protokolle als auch Ihre IIS-Protokolle, um festzustellen, welche Teile Ihrer Karten angefordert werden:

Beispiel Heat Map

Das ist das Ergebnis einiger Stresstests, die wir durchgeführt haben, daher ist es nicht repräsentativ für das Endergebnis. (Normalerweise gibt es nur wirklich "heiße" Zonen über Stadtzentren)

Wenn Sie weitere Informationen wünschen, verwenden Sie die Funktion "Demo anfordern" auf unserer Website .

Wanderer
quelle
4

Eine andere Methode besteht darin, etwas in den Client zu integrieren, das die Verwendung aufzeichnet. (Dies ist, was die HeatMapAPI im Grunde tut.)

Übermäßig vereinfacht: Zeichnen Sie die Ausmaße oder Klicks der Benutzer oder Kacheln in einer Datenbank auf. Erstellen Sie dann einen ArcGISServer-Service, der aus dieser Datenbank gerendert wird. Fügen Sie dies als Layer zur Karte hinzu.

Sie können auch versuchen, den HeatMapsAPI-Dienst zu verwenden: http://www.heatmapapi.com/HeatmapGenerate2WS.asmx . Sie haben Beispiele für serverseitige Clients. Ich vermute, dass der Service auch von einem clientseitigen Kunden genutzt werden könnte.

Ruz
quelle
1

Sie können möglicherweise Ihr Webserver-Protokoll verwenden, um herauszufinden, welche Bilder angefordert wurden. Dies ist nicht ideal, da Sie anhand des Dateinamens und des Verzeichnisses einen "Backtrack" durchführen müssten, um zu bestimmen, wo der Benutzer die Datei angezeigt hat. Sie haben jedoch zusätzlich zu den in der Ordnerstruktur angezeigten "Ebenen" Zugriff Bilddateinamen angefordert.

Sobald Sie eine anständige Menge an Informationen aus dem Protokoll erstellt haben, können Sie die Bilder betrachten, auf die am häufigsten zugegriffen wird (dh sie physisch anzeigen), um festzustellen, wo die Anforderungen gestellt werden.

Michael Todd
quelle
0

Obwohl perfHeatMap keine direkte Antwort auf diese Frage ist, ist es ein hervorragendes Tool, um zu verstehen, welche Teile Ihrer dynamischen Karten-Services am langsamsten sind, und die Ausgabe als Heatmap zu visualisieren.

Mit diesem Tool wird ein definiertes geografisches Interessengebiet in definierten Maßstäben abgetastet, indem REST-exportMap-Vorgänge für einen Kartendienst ausgeführt werden. Die resultierende Feature-Class kann über ArcMap mit einem abgestuften Farbschema für die Antwortzeit angezeigt werden.

Simon
quelle