Ein erweiterter Leitfaden zur Erschließung von Geodateneinblicken in Snowflake

In den letzten drei Blogbeiträgen haben wir die Grundlagen dazu behandelt, was Geodaten sind, wie sie in der breiteren Datenwelt funktionieren und wie sie speziell in Snowflake funktionieren – basierend auf unserer nativen Unterstützung für GEOGRAPHY, GEOMETRY und H3. Diese Artikel eignen sich hervorragend, um die Zehen einzutauchen, ein Gefühl für das Wasser zu bekommen und vielleicht sogar in das flache Ende des Pools zu waten. Doch mit Geodaten in Ihrem Snowflake-Konto können Sie noch viel mehr erreichen! Wir verstehen es jedoch – es kann schwierig sein, von „Ich verstehe jetzt die Konzepte“ zu „Wie kann ich meine ersten Anwendungsfälle angehen?“ zu springen.
Die Welt der Geodatenverarbeitung ist riesig und komplex, und wir möchten Sie hiermit vereinfachen. Deshalb haben wir einen Snowflake Quickstart entwickelt, der Sie durch verschiedene Beispiele von Geodatenfunktionen in realen Kontexten führt. In diesen Beispielen werden repräsentative Daten entweder aus dem Snowflake Marketplace oder von uns auf Amazon S3 zur Verfügung gestellte Daten verwendet. Sie können jedoch auf Ihr Snowflake-Konto, Ihre Daten und Ihre Anwendungsfälle angewendet werden, um Ihrer Benutzercommunity wertvolle Einblicke zu liefern. In diesem Blogbeitrag erfahren Sie, wie Sie das erreichen können, aber beziehen Sie sich auf den Quickstart selbst, wenn Sie den tatsächlichen Code sehen möchten.
Umwandlung von Standortdaten in Geodatentypen
Beginnen wir jedoch mit einem kurzen Rückblick: Standortdaten sind überall. Genau wie Ihr Snowflake-Konto mit ziemlicher Sicherheit über zeitbasierte Daten verfügt, verfügt auch Ihr Snowflake-Konto mit ziemlicher Sicherheit über standortbasierte Daten, da die meisten Transaktionsdaten ein Element enthalten, wer, was, wann und wo.
Im einfachsten Fall sind Standortdaten allgemein als eine Vielzahl von Text- und Zahlenfeldern bekannt, die sogenannte „Adressen“ umfassen und Dinge wie Straßen, Städte, Staaten, Kreise, Postleitzahlen und Länder umfassen. Menschen können diese Zeichenfolgen ziemlich einfach lesen und verstehen, aber in ihrer Textform sind es größtenteils Informationswerte, die wir überprüfen, wenn wir sie kennen müssen und nicht mehr. Manchmal können diese Textfelder auch von Breiten- und Längengradfeldern begleitet werden. Diese Felder sind großartig, denn jetzt können wir mit den Standortdaten mehr erreichen – wir können sie als Punkt auf der Erde platzieren. Dies ist nützlich, da wir all diese Punkte in die Mapping-Funktion eines BI-Tools integrieren können, um zu zeigen, zu welchem Land oder Gebiet der Punkt gehört, oder wir können diese Punkte in ein räumliches Raster wie H3 integrieren. Während verschiedene Snowflake BI-Partner die Arbeit mit Breiten- und Längengraddaten unterstützen, bietet Snowflake integrierte Unterstützung, um Ihre Längen- und Breitengraddaten in ein räumliches H3-Raster zu verwandeln und so eine schnelle Berechnung und Visualisierung zu ermöglichen (wie wir später sehen werden).
Wir können jedoch noch einen Schritt weiter gehen und diese Breiten- und Längengrade in einen GEOGRAPHY- oder GEOMETRY-Datentyp umwandeln. Ersteres können wir verwenden, wenn wir eine ellipsoide „Globus“-Darstellung der Erde benötigen, und Letzteres, wenn wir eine planare „Karten“-Darstellung eines mehr lokalisierten Ortes benötigen. Und wir können diese Datentypen mit einer Vielzahl von Funktionen konstruieren.
Das klingt vielleicht nicht nach viel, aber mit diesen beiden Datentypen können wir eine Reihe von Punkten in eine Linie konstruieren, mehrere Linien zu einem Polygon verbinden und komplexe Orte als eine Reihe von Linien und Polygonen darstellen. Wir können komplexe Berechnungen und Beziehungszuordnungen zwischen Objekten dieser Art durchführen und beginnen, Erkenntnisse zu gewinnen, von denen wir nicht wussten, dass sie uns zur Verfügung stehen – allein mit einem einfachen „Adressfeld“. Vielleicht fragen Sie: „Aber was ist, wenn ich nur das Textadressfeld habe?“ Willkommen, lieber Reisender, zu unserem ersten spannenden Abenteuer: Geocoding. „Geo-was-ing??“
Geocoding und Reverse-Geocoding
Geocoding umfasst die Übernahme Ihrer textuellen Adressdaten und die Umwandlung in einen Geodatentyp, um andere Anwendungsfälle zu erschließen, die Sie sonst nicht hätten liefern können. Und natürlich ist es auch möglich, in die andere Richtung zu gehen – verwandeln Sie Ihren weniger lesbaren Geodatentyp in eine Reihe von Standortfeldern, die für Menschen lesbarer sind. Beide Transformationen können mit spezialisierten Snowflake-Partnern wie Mapbox und TravelTime durchgeführt werden, die beide als Snowflake Native Apps über den Snowflake Marketplace verfügbar sind. Wir empfehlen diese Anbieter für das genaueste Geocoding und Reverse-Geocoding. Manchmal müssen Sie jedoch Genauigkeit und Kosten in Einklang bringen oder einen ROI nachweisen, bevor Sie Geld ausgeben können. Lassen Sie uns also darüber sprechen, wie Sie direkt in Snowflake mit Geocoding und Reverse-Geocoding beginnen können.
In diesem Anwendungsfall verwenden wir zwei Datasets aus dem Snowflake Marketplace: Worldwide Address Data, eine kostenlose und offene Erfassung globaler Adressdaten, sowie ein Tutorial Dataset unseres Partners CARTO, das über eine Restauranttabelle mit einer einzigen street_address-Spalte verfügt. Wenn Sie diesem Beispiel für Ihre Daten folgen würden, würden Sie die Tutorial-Restauranttabelle durch Ihre Tabelle ersetzen. Sie werden die Datenvorbereitung an diesen beiden Tabellen vornehmen, die Sie im Quickstart sehen können.
Das DIY Snowflake Geocoding umfasst drei Schritte:
1. Verwenden Sie ein LLM, um eine vollständige Adresszeichenfolge in ein JSON-Array mit seinen Teilen als Attribute zu transformieren. Sie nutzen in diesem Schritt die Funktion SNOWFLAKE.CORTEX.COMPLETE, die ein in Snowflake gehostetes Mixtral-8x7B-Modell verwendet, um die Konvertierung mithilfe einer detaillierten Anweisung vorzunehmen, die Sie im Rahmen des Funktionsaufrufs angeben. In den Quickstart-Hinweisen finden Sie die richtige Warehouse-Größe, um diese skalierbar auszuführen.
2. Erstellen Sie eine einfache Geodatenspalte zu Breiten- und Längengraden in Worldwide Address Data.
- ST_POINT wird verwendet, um die Geodatenspalte aus dem Breiten- und Längengrad zu erstellen.
- Unnötige Daten werden aufgrund ungültiger Breiten- und Längengrad-Werte aus der Worldwide Address Data-Tabelle entfernt.
3. Verwenden Sie JAROWINKLER_SIMILARITY, um Adressen abzugleichen. Sie fügen die beiden Tabellen auf einige Spalten zusammen und schließen die Straßennamensspalte in eine JAROWINKLER_SIMILARITY-Funktion ein, da Straßennamen nicht selten subtile Zeichenfolgenunterschiede zwischen Quellen aufweisen. Daher ist die „95“ als unser Ähnlichkeitsschwellenwert im Funktionsaufruf.
Es ist hier wichtig zu beachten, dass diese Methode in ihrer Genauigkeit nicht fehlerfrei ist. Der Quickstart zeigt detaillierter die erreichte Genauigkeit und einige der Gründe, warum diese Methode nicht perfekt ist. Es ist jedoch wichtig, den Kostenunterschied zwischen dieser Methode und einem dedizierten Geocoding-Dienst zu beachten. Diese Methode eignet sich hervorragend, um einfachere Anforderungen zu erfüllen oder um Prototypen zu entwickeln, die eine Rechtfertigung für speziellere Geocoding-Dienste mit komplizierteren Anforderungen darstellen.
Um umgekehrte Geocodierung durchzuführen oder eine Adresse aus einem Geodatentyp zu erstellen, entwickeln wir eine Stored Procedure, die drei Dinge erledigt: eine Ergebnistabelle erstellt, Zeilen auswählt, die nicht verarbeitet wurden, und die nächstgelegene Adresse mithilfe einer Schleife mit zunehmendem Radius sucht, bis ein Ergebnis gefunden wird. Sie können diese Procedure wie alle Procedures in Snowflake aufrufen und die entsprechenden Argumente wie oben im Procedure-Code definiert eingeben, was Sie im Quickstart sehen können.
Das Geocoding Ihrer Adressdaten erschließt mehr Potenzial, um diese Adressdaten aufschlussreicher zu nutzen. Lassen Sie uns eine Möglichkeit untersuchen, wie Sie diese geocodierten Daten verwenden können.
Prognosen mit Geodaten
Forecasting ist eine übliche Aktivität mit Zeitreihendaten, da es solide ML-Modelle gibt, die darauf ausgelegt sind, historische Daten einzugeben und anhand historischer Trends ein Fenster mit zukünftigen Daten vorherzusagen. Snowflake enthält ein integriertes ML-Prognosemodell namens SNOWFLAKE.ML.FORECAST, das Sie problemlos für diese Aktivität verwenden können. Sie können zwar Zeitreihenprognosen über alle zeitbasierten Daten hinweg durchführen, aber die Anreicherung dieser Prognose mit Standortdaten bietet eine weitere Wertdimension im Forecasting-Prozess.
Beim Quickstart werden zwei Datasets verwendet: New York City Taxifahrt-Daten zur Verfügung gestellt von CARTO und Ereignisdaten zur Verfügung gestellt von PredictHQ. Sie können sich die beiden Datasets wie folgt vorstellen: Die Taxifahrtdaten sind wie alle Zeitreihendaten, die Sie über etwas haben, das zu einer bestimmten Zeit und an einem bestimmten Ort passiert. Wahrscheinlich haben Sie solche Daten in Ihrem Unternehmen. Die Ereignisdaten fügen einem zeitbasierten Element in Ihren Daten mehr Kontext hinzu. In diesem Beispiel können die Ereignisdaten Aufschluss über eine Zunahme oder Abnahme der erwarteten Taxifahrten in New York City geben. Andere Arten von Kontextdaten, die Sie möglicherweise haben, umfassen offene oder geschlossene Zeiträume, wiederkehrende Werbezeiträume, öffentliche Veranstaltungen und mehr. Was auch immer es ist, Kontextdaten können dazu beitragen, eine genauere Prognose zu erstellen, indem sie einen bestimmten Tag/eine bestimmte Zeit mit steigender oder fallender Erwartung erweitern.
Die Prognoseaktivität umfasst vier Schritte:
1. Verwenden Sie ein räumliches Raster, um eine Zeitreihe von Taxiabholungen für jede Zelle im Raster zu berechnen.
Sie verwenden das räumliche Raster H3, um New York City nach dem Abholort in Zellen aufzuteilen.
Sie können eine Abholung innerhalb einer Zelle lokalisieren, indem Sie den Breiten- und Längengrad nehmen und diese in eine H3-Zelle umwandeln.
Anschließend können Sie die Anzahl der Abholungen innerhalb jeder New Yorker Zelle nach Stunden des Tages mit den Funktionen TIME_SLICE und H3_POINT_TO_CELL_STRING von Snowflake aggregieren.
Zu guter Letzt müssen Sie alle Stundenlücken an einem Ort mit 0 (Null) Abholungseinträgen „füllen“. Dies ist für Zeitreihenprognosen erforderlich.
2. Reichern Sie die stündlichen Zeitreihendaten mit Ereignisdaten an.
Dies fügt den oben genannten Daten „Feature“-Spalten hinzu, indem jede Zeile basierend auf der Verknüpfung unserer Ereignisdaten als Schul-, Feiertags- oder Sportereignis gekennzeichnet wird.
Beachten Sie, dass Sie beliebige „Features“ für Ihre Ereignisdaten hinzufügen können. Schulferien, Feiertage und Sportveranstaltungen sind nur realistische Beispiele für dieses Szenario.
3. Erstellen Sie ein Modell, ein Trainings-Dataset und ein Prognose-Dataset.
Das SNOWFLAKE.ML.FORECAST-Modell erfordert einen Trainingsschritt, bevor Prognosen gemacht werden können. Daher müssen Ihre Daten aus Schritt 2 nach Zeit in zwei Tabellen unterteilt werden: eine für das Training und eine für die Prognose.
Anschließend erstellen Sie ein Modell, wobei eine der Eingaben die oben eingerichtete Trainingsdatentabelle ist. Sie werden auch wichtige Spalten identifizieren, wie die Zeitspalte, die zu prognostizierende Kennzahl und in diesem Fall die Standortdaten, nach denen Sie prognostizieren möchten.
4. Führen Sie das Modell aus und visualisieren Sie die Genauigkeit der Vorhersagen.
Sobald das Modell trainiert wurde, kann es aufgerufen werden und zeigt auf ein anderes Dataset, das zur Vorhersage verwendet werden soll.
Die Prognose kann in einer Tabelle ausgegeben und dann mit den tatsächlichen Daten verglichen werden, um die Genauigkeit zu bewerten. Es gibt verschiedene Möglichkeiten, dies zu tun, aber der Quickstart schlägt vor, einen Symmetric Mean Absolute Percentage Error (SMAPE) zu verwenden.
Das folgende Diagramm zeigt, wie der Output dieses Vergleichs für eine H3-Zelle aussehen kann, wobei das Prognosemodell eine ziemlich hohe Genauigkeit aufweist:

Zeitreihenprognosen in Snowflake können ein leistungsstarkes Tool sein und können noch erweitert werden, indem Sie Standorte in einer bestimmten Zelle in einem räumlichen Raster gruppieren und diese Zelle prognostizieren, anstatt zu versuchen, jeden Standort einzeln zu prognostizieren, was zu präzise ist.
Visualisieren Sie Stimmung nach Standort mit H3
Sie haben im obigen Geocodingbeispiel ein LLM verwendet, um Daten in ein anderes Format zu transformieren. Sie können es aber auch verwenden, um Textdaten anhand der Positivität oder Negativität der im Text verwendeten Sprache zu bewerten. Dies ist wichtig, um die Stimmung der Menschen in einer bestimmten Situation zu bewerten, sei es Feedback zu Produkten oder Dienstleistungen oder wie positiv sie Ihre Marke bewerten. Der Schlüssel ist hierbei, dass Sie Rohtext in eine gewöhnliche Messung umwandeln und dann analysieren können, ob Standortfaktoren in diese Messung einfließen. Sehen wir uns an, wie wir das in Snowflake erreichen können.
Aus Datensicht gibt es drei wichtige Dinge, die Sie haben müssen:
Ein Ereignis oder eine Transaktion
Rohtextkommentar zu diesem Ereignis
Ort des Ereignisses
Dies kann alles in einem System erfolgen (z. B. geben Kund:innen eine Bestellung in einer App auf und geben dann Kommentare zu ihrer Zufriedenheit mit dem Bestellprozess ab), oder es kann in verschiedenen Systemen erfolgen (z. B. gibt ein Kunde eine Bestellung für ein Produkt auf, postet dann aber in sozialen Medien darüber, wie sehr ihm das Produkt gefallen hat. Beim Quickstart werden synthetische Lieferdaten verwendet, die Kundenfeedback darüber enthalten, wie die Lieferung verlief.
Die Visualisierung dieses Feedbacks nach Standort umfasst zwei Schritte:
1. Bewerten Sie die Stimmung des Feedbacks für jede Lieferung.
Zuerst verwenden Sie SNOWFLAKE.CORTEXT.COMPLETE wie zuvor, aber dieses Mal geben Sie dem LLM die Anweisung, den Text auszuwerten und ihm ein textuelles Kategorielabel zuzuweisen, wie z. B. „Sehr positiv“.
Dann wandeln Sie diese textlichen Kategorielabel in Zahlen um, die Sie über mehrere Lieferungen in einem gemeinsamen Bereich hinweg aggregieren können.
2. Visualisieren Sie die aggregierte Stimmung nach Standort mit H3.
Anstatt die Standortergebnisse wie bei den Zeitreihenprognosen im Voraus zu berechnen, entwickeln wir eine App, die Stimmungswerte im laufenden Betrieb in H3-Zellen aggregiert.
Die Streamlit-App wird ST.PYDECK_CHART verwenden, um die H3-Zellen anhand von Stimmungsquantilen zu planen und einzufärben.
Hier ein Beispiel zur Visualisierung der Stimmungsanalyse nach Filialstandort:

Und noch wichtiger: Mit der App können Sie die Daten freier erkunden, da wir alles im laufenden Betrieb berechnen. Wie funktioniert das? Betrachten Sie diesen Zoom-in unten:

Was, wenn wir einen genaueren Blick auf die San Francisco-Halbinsel werfen wollen? Über den Schieberegler in der App können wir die H3-Auflösung von 7 auf 8 ändern und erhalten so ein klareres Bild:

Jetzt können wir deutlicher erkennen, wo es Lücken, Stärken und Bedenken gibt. Diese Möglichkeit, spontan mehr Ortsauflösung zu erhalten, ist wie ein Wechsel von einem SD-Fernseher zu einem HD-Fernseher zu einem 4K-Fernseher zu einem 8K-Fernseher – ein schärferes Bild dessen, was wir uns ansehen wollen.
H3 ist eine leistungsstarke und schnelle Methode, um Standortklarheit bei Metriken zu erhalten. Durch die Kombination mit einem LLM können wir nichtadditive Texte in messbare Ergebnisse verwandeln. Das ist eine äußerst leistungsstarke Funktion, die Sie in Ihrem Unternehmen auf vielfältige Weise anwenden können!
„Nächster Nachbar“-Analyse mit Raster und Shapefiles
Während viele Unternehmen ihre Standortdaten aus Standarddatenquellen beziehen, aus denen auch der Rest ihrer Daten stammt, wissen diejenigen, die sich eingehend mit Geodaten beschäftigen, dass Daten auch aus speziellen Formaten und Dateien stammen können. Für Eingeweihte ist die schnelle Übersicht, dass die meisten Geodaten, die in diesem und anderen Blogbeiträgen bisher behandelt werden, Vektordaten sind – Punkte, Linien und Polygone. Ein häufig verwendetes Format zum Speichern von Vektordaten in einer Datei ist Shapefile. Shapefiles werden jedoch in der Regel mit dedizierten GIS-Anwendungen geöffnet, die nicht von Datenbanken gelesen werden. Rasterdaten unterscheiden sich von Vektordaten dadurch, dass die Daten als Raster von Zellen dargestellt werden – denken Sie an ein pixeliges Bild. Rasterdaten werden üblicherweise in GeoTIFF-Dateien gespeichert, die wiederum in der Regel nicht von Datenbanken gelesen werden. Vektor und Raster haben jeweils ihre Anwendungsfälle, und manchmal müssen Sie auf beides zugreifen; der Quickstart nimmt dies direkt in Angriff.
In diesem Szenario nutzen wir zwei Datenquellen – eine Höhenkarte, die als Raster GeoTIFF gespeichert ist, und Temperatur-/Niederschlagsdaten, die in einer Shapefile gespeichert sind –, um beide Datasets zur Vorhersage des Vorkommens von Grundwasser zu verwenden. Doch in Wahrheit sind dies nur repräsentative Dateien, die zeigen, wie wir in Snowflake auf diese Arten von Dateien zugreifen und sie letztlich für eine spezifische Analyse verwenden können. Wenn Sie GeoTIFF oder Shapefiles in Ihrem Unternehmen haben, können Sie diese Methoden verwenden, um deren Daten in Snowflake zu übertragen.
Die Kombination dieser beiden Datenquellen zur Durchführung einer „Nächster Nachbar“-Analyse umfasst drei Schritte:
1. Laden Sie die GeoTIFF-Datei.
Mit der Rasterio Python-Bibliothek erstellen Sie Funktionen, die die GeoTIFF-Metadaten extrahieren, die im GeoTIFF vorhandenen Bänder auswerten und letztendlich den Schwerpunkt jedes Pixels in Vektordaten (Punkte) umwandeln.
Dann werten Sie die Metadaten aus und wandeln Sie die Punkte in einen Datentyp im richtigen SRID um.
Zu guter Letzt reduzieren Sie die große Anzahl an Pixeln in eine überschaubare Größe, indem Sie die Punkte in H3-Zellen umwandeln.
2. Laden Sie die Shapefile.
Sie verwenden die Fiona Python-Bibliothek und die Dynamic File Access-Funktion von Snowflake, um Funktionen zum Lesen der Shapefile-Metadaten und -Daten zu erstellen.
Anschließend werten Sie die Art der Shapefile-Daten und ihre Darstellung aus, sodass Sie eine Abfrage erstellen können, um sie in eine Tabelle mit den entsprechenden Spalten und Datentypen zu laden.
Ähnlich wie in Schritt 1 reduzieren Sie die Anzahl der Zeilen auf eine überschaubare Größe, indem Sie die Punkte in H3-Zellen umwandeln.
Der Quickstart zeigt auch eine alternative Möglichkeit, diese Daten zu visualisieren, aber das ist ein optionaler Schritt.
3. Berechnen Sie für jeden Höhenpunkt den nächstgelegenen Wetterpunkt mit einer von zwei Methoden, die im Quickstart skizziert sind.
Hinweis: Bei jeder Methode werden beide Tabellen bis auf den Fokusbereich gefiltert, wie im Quickstart ausgeführt.
Die erste Methode ist in Snowflake in sich geschlossen und Sie verwenden eine Abfrage, die ST_DWITHIN und eine QUALIFY-Fensterfunktion kombiniert. Diese Methode kann jedoch rechenintensiv sein.
Die zweite Methode besteht in der Verwendung der SedonaSnow Snowflake Native App, die Ihnen Zugang zur Funktion ST_VORONOIPOLYGONS bietet. Voronoi-Polygone können eine effizientere Möglichkeit sein, Punkte zu gruppieren, die einem anderen Punkt am nächsten sind. Um jedoch Zugriff auf eine solche Funktion zu erhalten, müssen Sie die SedonaSnow-App installieren.
In der Welt der Geodaten kommt es nicht selten vor, dass auf Daten aus nicht traditionellen Dateien zugegriffen werden muss. Glücklicherweise ermöglicht Ihnen die Flexibilität von Snowflake, mit diesen Dateien zu arbeiten und trotzdem auf diese wertvollen Daten für Ihre Analysen zuzugreifen.
Interaktive Karten
Auch in der Welt von GIS ist es üblich, mit Benutzeroberflächen zu interagieren, die für Standortdaten entwickelt wurden. Diese Anwendungen gehen über die Möglichkeiten hinaus, die in einem BI-Tool für die Präsentation von mehr Daten mit ausgefeilten Ebenenfunktionen und anderen standortspezifischen Interaktionen typisch sind. Ein Open-Source-Tool heißt Kepler.gl.. Doch anstatt Kepler.gl selbst implementieren zu müssen, können Sie Dekart einfach über den Snowflake Marketplace installieren und haben sofortigen Zugriff auf Kepler.gl und seine fortschrittlicheren Standortvisualisierungsfunktionen. Die Ausführung von Kepler.gl in einer Snowflake Native App mit Snowpark Container Services stellt außerdem sicher, dass Ihre Daten Snowflake nie verlassen. Sehen wir uns ein Beispiel aus dem Quickstart an.
In diesem Anwendungsfall erstellen wir eine interaktive Karte, um die Dichte von Ladestationen für Elektrofahrzeuge anzuzeigen und Bereiche aufzuzeigen, in denen es sich lohnen könnte, weitere Stationen hinzuzufügen. In diesem Beispiel müssen Sie drei Sätze an Daten überlagern: Ländergrenzen, Transportrouten und Standorte (in diesem Beispiel Ladegeräte für Elektrofahrzeuge). Sie können die Transportrouten und Ladegeräte für Elektrofahrzeuge jedoch problemlos durch zwei andere Sätze an Standortdaten in Ihrem Unternehmen ersetzen. Nachdem Sie die Einrichtung im Quickstart befolgt haben, führen Sie die folgenden drei Schritte aus.
Verwenden Sie eine Abfrage, um eine Grenzebene zu definieren:

Verwenden Sie eine zweite Abfrage, um die Transportrouten als zweite Ebene zu erfassen:

Beachten Sie oben, wie „uk_roads“ als Ebene auf der linken Seite der Kepler.gl-Schnittstelle hinzugefügt wurde.
Mit einer dritten Abfrage können Sie die Ladestationen für Elektrofahrzeuge als weitere Ebene aufzeichnen:

Beachten Sie in der zweiten und dritten Abfrage, wie Sie die Abfrage für die erste Ebene nach Namen in der FROM-Klausel referenzieren, um die zweite und dritte Abfrage zu filtern, indem Sie nur die Straßen und Ladegeräte auswählen, die innerhalb der Grenze der ersten Ebene enthalten sind.
Abschließend können Sie eine vierte Abfrage hinzufügen, die die Dichte der Ladegeräte für Elektrofahrzeuge berechnet, indem Sie die Anzahl der Ladegeräte für Elektrofahrzeuge in einem Umkreis von 50 Kilometern für jedes Straßensegment zählen:

In diesem Beispiel zeigen wir zwar nicht alles, was Sie mit Kepler.gl erreichen können, aber es zeigt hoffentlich, wie schwer Ihnen das in einem herkömmlichen BI-Tool fällt. Durch den Zugang zu einer ausgefeilteren Schnittstelle zur Erstellung von Standortvisualisierungen – und die einfache Installation über den Snowflake Marketplace – können Sie Ihre Standortanalysefunktionen auf eine Weise erweitern, die einfacher ist, als Sie denken.
Fazit
In diesem Blogbeitrag haben wir vorgestellt, wie Sie aus Geodaten in Snowflake Erkenntnisse gewinnen können. Wir haben sechs Hauptfunktionen abgedeckt, mit denen Sie:
Standortdaten in Datentypen GEOMETRY und GEOGRAPHY verwandeln können, um weitere Analysen durchzuführen und Anwendungsfälle wie Geocoding und Reverse-Geocoding zu ermöglichen
Zeitbasierte und Ereignis-Datasets anreichern können
ML-Modelle und native ML-SQL-Funktionen für Prognosen auf Geodaten anwenden können
LLMs zur Stimmungsanalyse anhand von Standorten anwenden können
Entfernungen berechnen und „nächster Nachbar“-Analysen mit nativen Funktionen durchführen können.
Interaktive Karten visualisieren, indem Sie die nativen Funktionen von Snowflake mit Snowpark Container Services und unserem umfangreichen Partnerökosystem erweitern.
Befolgen Sie diesen Quickstart, um praktische Erfahrungen mit diesen Szenarien zu sammeln. Hier erfahren Sie, wie Sie diese komplexeren Anwendungsfälle anwenden und mehr Nutzen aus Ihren Standortdaten in Snowflake ziehen können. Mögen Sie die Punkte finden, die Sie suchen!