In this series (post 1 and post 2), we talked about using Neo4j plus a Vector Index plus H3 indexing to attempt to do some geospatial pre-filtering on the Foursquare Open Source Places (FSQ OS Places) dataset. In this post, we will create some queries that leverage the vector index within Neo4j combined with H3 […]
Author: dave fauth
Geospatial Pre-filtering for POI Recommendations – Data Model
In the previous blog post, we talked about using Neo4j plus a Vector Index plus H3 indexing to attempt to do some geospatial pre-filtering on the Foursquare Open Source Places (FSQ OS Places) dataset. In this post, we will discuss our data modeling strategy and how the FSQ OS Places data can be modeled as […]
Geospatial Pre-filtering for POI Recommendations
Background Place / Point of Interest (POI) recommendations provide locations that are of interest to a person searching for an interesting place to see within a geographic area. Recent papers have been published to identify different approaches to address this problem. One paper looks at Graph Neural Networks. A second paper looks at using Large […]
Neo4j – GeoParquet
Over the 2023 holidays, I wanted to learn more about GeoParquet and learn more about geospatial data in general. I decided to create a simple Neo4j plugin that reads in a Geoparquet file (or any parquet file for that matter) and return the results to the user. This is similar to the capability in the […]
Neo4j – H3 – Intersecting Polygons
Geospatial use cases with Neo4j are interesting. A colleague recently asked if there was a way to identify which pieces of property a power line might intersect. Thinking back to previous work on H3 and Neo4j, I knew we could model the power line as a set of hex addresses and model the property geometry […]
Geospatial Graph – Simple Queries
In this blog post, we are going to run through some simple queries to show how to query and traverse the graph. We are going to focus on the geospatial database for now. The next blog post will discuss using the Neo4j 5 Composite Database for the distributed queries. Data Model As a quick refresher […]
Geospatial Graph Data Model
What Is a Knowledge Graph? Here is the definition from the Neo4j white paper “A knowledge graph is an interconnected dataset enriched with semantics so we can reason about the underlying data and use it confidently for complex decision-making”. Connecting data adds context and improves outcomes. Connecting data makes that data inherently more valuable and […]
Neo4j – H3 Datasets
H3 allows us to help make sense of large amounts of data. For this blog series, we will use the NYC Taxi Data set and add in the NYC Taxi Zones, New York Counties, NYC Boroughs and NYC Buildings. I also added in Open Street Map POI data using the Python notebook from my colleague […]
Neo4j – H3 Library – Update
After about four years (where did that time go?), I have circled back to Neo4j and H3 geospatial data processing. Since version 3.4, Neo4j has a native geospatial datatype. Neo4j uses the WGS-84 and WGS-84 3D coordinate reference system. Within Neo4j, we can index these point properties and query using our distance function or you query within a bounding […]