This is an automated email from the ASF dual-hosted git repository. jiayu pushed a commit to branch branch-1.8.0 in repository https://gitbox.apache.org/repos/asf/sedona.git
commit fe0c3adb4aed2f448b345e26df9f5c057da5090b Author: Jia Yu <[email protected]> AuthorDate: Wed Sep 24 00:57:03 2025 -0700 [DOCS] Update the SedonaDB announcement blog post (#2362) --- .gitignore | 3 + README.md | 31 ++++--- docs-overrides/main.html | 2 +- docs/blog/.authors.yml | 32 ++++--- docs/blog/posts/intro-sedonadb.md | 131 +++++++++++++++------------- docs/image/blog/sedonadb1/image1.png | Bin 76709 -> 0 bytes docs/image/blog/sedonadb1/image2.png | Bin 150429 -> 0 bytes docs/image/blog/sedonadb1/sf1-09242025.png | Bin 0 -> 20887 bytes docs/image/blog/sedonadb1/sf10-09242025.png | Bin 0 -> 25154 bytes 9 files changed, 115 insertions(+), 84 deletions(-) diff --git a/.gitignore b/.gitignore index ef4bf2f91f..596041ef01 100644 --- a/.gitignore +++ b/.gitignore @@ -48,3 +48,6 @@ target *.min.css.map *.min.js *.min.js.map + +# Ignore node_modules in docs-overrides +docs-overrides/node_modules/ diff --git a/README.md b/README.md index 8977c76157..2e0ba4801a 100644 --- a/README.md +++ b/README.md @@ -36,6 +36,16 @@ [](https://github.com/apache/sedona/graphs/commit-activity) [](https://github.com/apache/sedona/issues?q=is%3Aissue%20state%3Aopen%20label%3A%22good%20first%20issue%22) +## π **NEW: SedonaDB & SpatialBench - Latest Apache Sedona Subprojects** + +**SedonaDB** - A single-node analytical database engine with geospatial as a first-class citizen. Perfect for developers who want Sedona's spatial analytics power without distributed system complexity. + +**SpatialBench** - A comprehensive benchmark for assessing geospatial SQL analytics query performance across database systems. + +**[Read the full announcement blog post β](https://sedona.apache.org/latest/blog/2025/09/24/introducing-sedonadb-a-single-node-analytical-database-engine-with-geospatial-as-a-first-class-citizen/)** | **[SedonaDB β](https://sedona.apache.org/sedonadb)** | **[SpatialBench β](https://sedona.apache.org/spatialbench)** + +--- + | Download statistics | **Maven** | **PyPI** | Conda-forge [...] |----------------------------|------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------ [...] | Apache Sedona | 330k/month | [](https://pepy.tech/project/apache-sedona) [](https://pepy.tech/project/apache-sedona) | [](https://anaconda. [...] @@ -47,6 +57,7 @@ - [Join the community](#join-the-community) - [What is Apache Sedona?](#what-is-apache-sedona) - [Features](#features) +- [Apache Sedona subprojects](#apache-sedona-subprojects) - [When to use Sedona?](#when-to-use-sedona) - [Use Cases:](#use-cases) - [Code Example:](#code-example) @@ -58,7 +69,6 @@ - [Building Sedona](#building-sedona) - [Documentation](#documentation) - [Star History](#star-history) -- [Contributors](#contributors) - [Powered by](#powered-by) <!-- END doctoc generated TOC please keep comment here to allow auto update --> @@ -101,6 +111,11 @@ Some of the key features of Apache Sedona include: These are some of the key features of Apache Sedona, but it may offer additional capabilities depending on the specific version and configuration. +## Apache Sedona subprojects + +* **SedonaDB**: A single-node analytical database engine with geospatial as a first-class citizen - [GitHub](https://github.com/apache/sedona-db) | [Website](https://sedona.apache.org/sedonadb) +* **SpatialBench**: A benchmark for assessing geospatial SQL analytics query performance across database systems - [GitHub](https://github.com/apache/sedona-spatialbench) | [Website](https://sedona.apache.org/spatialbench) + ## When to use Sedona? ### Use Cases: @@ -187,7 +202,7 @@ We provide a Docker image for Apache Sedona with Python JupyterLab and a single- pip install apache-sedona ``` -* To compile the source code, please refer to [Sedona website](https://sedona.apache.org/latest-snapshot/setup/compile/) +* To compile the source code, please refer to [Sedona website](https://sedona.apache.org/latest/setup/compile/) * Modules in the source code @@ -206,10 +221,10 @@ We provide a Docker image for Apache Sedona with Python JupyterLab and a single- ## Documentation -* [Spatial SQL in Sedona](https://sedona.apache.org/latest-snapshot/tutorial/sql/) -* [Integrate with GeoPandas and Shapely](https://sedona.apache.org/latest-snapshot/tutorial/geopandas-shapely/) -* [Working with Spatial R in Sedona](https://sedona.apache.org/latest-snapshot/api/rdocs/) -* [Sedona Python API Documentation](https://sedona.apache.org/latest-snapshot/api/pydocs/) +* [Spatial SQL in Sedona](https://sedona.apache.org/latest/tutorial/sql/) +* [Integrate with GeoPandas and Shapely](https://sedona.apache.org/latest/tutorial/geopandas-shapely/) +* [Working with Spatial R in Sedona](https://sedona.apache.org/latest/api/rdocs/) +* [Sedona Python API Documentation](https://sedona.apache.org/latest/api/pydocs/) Please visit [Apache Sedona website](http://sedona.apache.org/) for detailed information @@ -217,10 +232,6 @@ Please visit [Apache Sedona website](http://sedona.apache.org/) for detailed inf [](https://www.star-history.com/#apache/sedona&Date) -## Contributors - -[](https://github.com/apache/sedona/graphs/contributors) - ## Powered by <a href="https://www.apache.org/"> diff --git a/docs-overrides/main.html b/docs-overrides/main.html index 6c3098ad20..4b5302ed2f 100644 --- a/docs-overrides/main.html +++ b/docs-overrides/main.html @@ -17,7 +17,7 @@ You're not viewing the latest stable version. {% block header %} <div style="background: #CA463A; color: white; text-align: center; padding: 0.5rem;"> - <a href="https://sedona.apache.org/sedonadb/" title="Announcement">π’ Introducing SedonaDB: A single-node analytical database engine with geospatial as the first-class citizen.</a> + <a href="/blog/2025/09/24/introducing-sedonadb-a-single-node-analytical-database-engine-with-geospatial-as-a-first-class-citizen/" title="Announcement">π’ Introducing SedonaDB: A single-node analytical database engine with geospatial as the first-class citizen.</a> </div> {{ super() }} {# This renders the original header below your test bar #} {% endblock %} diff --git a/docs/blog/.authors.yml b/docs/blog/.authors.yml index 368b8341ca..b5a3f335df 100644 --- a/docs/blog/.authors.yml +++ b/docs/blog/.authors.yml @@ -29,26 +29,34 @@ authors: description: Director of Customer Engineering & Product Led Growth, Wherobots avatar: https://media.licdn.com/dms/image/v2/D4E03AQHxYTrEgc53_g/profile-displayphoto-shrink_200_200/profile-displayphoto-shrink_200_200/0/1722352936567?e=2147483647&v=beta&t=X10Z02O2UX8IRmbypcw-m-jbIDeNsPWWL-YOPX_v1XQ jia: - name: Jia - description: Sedona PMC + name: Jia Yu + description: Apache Sedona PMC chair avatar: https://media.licdn.com/dms/image/v2/D5603AQEez8EVYH82LQ/profile-displayphoto-shrink_400_400/profile-displayphoto-shrink_400_400/0/1719619666312?e=1761782400&v=beta&t=4xYyTp1peAtupNdaPfbWEYbdMjMMbcdHWEbqO7Y-2dw dewey: - name: Dewey - description: Software Engineer + name: Dewey Dunnington + description: Apache Sedona Contributor, Apache Arrow PMC member avatar: https://media.licdn.com/dms/image/v2/C5603AQEQpLYQ6u-a8Q/profile-displayphoto-shrink_400_400/profile-displayphoto-shrink_400_400/0/1630000445999?e=1761782400&v=beta&t=dR8biUFIxB_KL1nYXTibNrjaRzTAkfc3LO6FSfRPREE kristin: - name: Kristin - description: Software Engineer + name: Kristin Cowalcijk + description: Apache Sedona PMC member avatar: https://avatars.githubusercontent.com/u/5501374?v=4 feng: - name: Feng - description: Software Engineer + name: Feng Zhang + description: Apache Sedona Committer avatar: https://media.licdn.com/dms/image/v2/C5603AQEuI_xKhOjapA/profile-displayphoto-shrink_400_400/profile-displayphoto-shrink_400_400/0/1645716542340?e=1761782400&v=beta&t=6vDu04f9Mun3LXoQaTs-C9DVSSZcH1LaasulqWqpliw james: - name: James - description: Software Engineer + name: James Willis + description: Apache Sedona Contributor avatar: https://media.licdn.com/dms/image/v2/C4E03AQETRcdZDZNlRg/profile-displayphoto-shrink_400_400/profile-displayphoto-shrink_400_400/0/1516810351294?e=1761782400&v=beta&t=AlPGe5RqTMd6gfh4qEILx9XsivRWnIM5KIdVSx7AzFE pranav: - name: Pranav - description: Software Engineer + name: Pranav Toggi + description: Apache Sedona Committer avatar: https://media.licdn.com/dms/image/v2/D4E03AQE1XVwinur7-w/profile-displayphoto-shrink_400_400/profile-displayphoto-shrink_400_400/0/1729284611733?e=1761782400&v=beta&t=B1SOzUOz9CW0J0LEVICMLztKFLAwDg3okem5p-VE--4 + jess: + name: Jess Pavlin + description: Apache Sedona Contributor + avatar: https://avatars.githubusercontent.com/u/202656197?v=4 + peter: + name: Peter Nguyen + description: Apache Sedona Contributor + avatar: https://avatars.githubusercontent.com/u/115442597?v=4 diff --git a/docs/blog/posts/intro-sedonadb.md b/docs/blog/posts/intro-sedonadb.md index 015e1aae81..2917f2fd4e 100644 --- a/docs/blog/posts/intro-sedonadb.md +++ b/docs/blog/posts/intro-sedonadb.md @@ -2,14 +2,20 @@ date: created: 2025-09-24 links: - - Apache Sedona Discord: https://discord.com/invite/9A3k5dEBsY + - SedonaDB: https://sedona.apache.org/sedonadb/ + - SpatialBench: https://sedona.apache.org/spatialbench/ authors: - dewey + - kristin - feng + - peter + - jess + - pranav + - james - jia - - kristin - matt_powers -title: "Introducing SedonaDB: A spatial-first query engine" + - kelly +title: "Introducing SedonaDB: A single-node analytical database engine with geospatial as a first-class citizen" --- <!-- @@ -31,28 +37,41 @@ title: "Introducing SedonaDB: A spatial-first query engine" # under the License. --> -The Apache Sedona community is excited to announce the initial release of SedonaDB. +!!! info + ππ Big News! ππ -SedonaDB is the first open-source, single-node analytical database engine that treats spatial data as a first-class citizen. + Weβre celebrating the launch of SedonaDB & SpatialBench with a special Apache Sedona Community Office Hour! -<!-- more --> + π October 7, 2025 + + β° 8β9 AM Pacific Time + + π Online + + π [Sign up here](https://bit.ly/3UBmxFY) + +The Apache Sedona community is excited to announce the initial release of [SedonaDB](https://sedona.apache.org/sedonadb)! π + +SedonaDB is the first open-source, single-node analytical database engine that treats spatial data as a first-class citizen. It is developed as a subproject of Apache Sedona. + +Apache Sedona powers large-scale geospatial processing on distributed engines like Spark (SedonaSpark), Flink (SedonaFlink), and Snowflake (SedonaSnow). SedonaDB extends the Sedona ecosystem with a single-node engine optimized for small-to-medium data analytics, delivering the simplicity and speed that distributed systems often cannot. -Written in Rust, itβs lightweight, blazing fast, and spatial-native. Out of the box, it provides: +<!-- more --> -* Full support for spatial types, joins, CRS (coordinate reference systems), and functions on top of industry-standard query operations. -* Query optimizations, indexing, and data pruning features under the hood that make spatial operations just work with high performance. -* Pythonic and SQL interfaces familiar to developers, plus APIs for R and Rust. -* Flexibility to run in single-machine environments on local files or data lakes. +## π€ What is SedonaDB -SedonaDB utilizes Apache Arrow and Apache DataFusion, providing everything you need from a modern, vectorized query engine. However, it also delivers the unique ability to run high-performance spatial workloads easily, without requiring extensions. It's for builders who need a spatial-first query engine. +Written in Rust, SedonaDB is lightweight, blazing fast, and spatial-native. Out of the box, it provides: -SedonaDB is easy to download and run on your local machine or in the cloud. You can install it easily in any runtime. +* πΊοΈ Full support for spatial types, joins, CRS (coordinate reference systems), and functions on top of industry-standard query operations. +* β‘ Query optimizations, indexing, and data pruning features under the hood that make spatial operations just work with high performance. +* π Pythonic and SQL interfaces familiar to developers, plus APIs for R and Rust. +* βοΈ Flexibility to run in single-machine environments on local files or data lakes. -Apache Sedona already adds geospatial support to Apache Spark (SedonaSpark), Apache Flink (SedonaFlink), and Snowflake (SedonaSnow). SedonaDB is an excellent small data complement to the existing big data/streaming Sedona libraries. +SedonaDB utilizes Apache Arrow and Apache DataFusion, providing everything you need from a modern, vectorized query engine. What sets it apart is the ability to process spatial workloads natively, without extensions or plugins. Installation is straightforward, and SedonaDB integrates easily into both local development and cloud pipelines, offering a consistent experience across environments. -The initial release of SedonaDB provides a comprehensive suite of geometric vector operations and seamlessly integrates with GeoArrow, GeoParquet, and GeoPandas. Subsequent releases will support all popular spatial functions, including functions for raster data. +The initial release of SedonaDB provides a comprehensive suite of geometric vector operations and seamlessly integrates with GeoArrow, GeoParquet, and GeoPandas. Future versions will support all popular spatial functions, including functions for raster data. -## SedonaDB quickstart example +## π SedonaDB quickstart example Start by installing SedonaDB: @@ -120,7 +139,7 @@ where ST_Intersects(cities.geometry, countries.geometry) The code utilizes `ST_Intersects` to determine if a city is contained within a given country. -Hereβs the result of the query: +Here's the result of the query: ``` βββββββββββββββββ¬ββββββββββββββββββββββββββββββ¬ββββββββββββ @@ -135,25 +154,23 @@ Hereβs the result of the query: βββββββββββββββββ΄ββββββββββββββββββββββββββββββ΄ββββββββββββ ``` -The code above is an example of a point-in-polygon join. The point represents the city, and the polygon represents the area that represents the country. SedonaDB can easily perform spatial joins with optimizations, such as effectively utilizing spatial indices where required and adapting join strategies at runtime based on samples of the input data. - -These types of spatial operations can be relatively slow for engines that are not optimized for spatial data. SedonaDB is optimized for these spatial computations. - -## Apache Sedona SpatialBench +The example above performs a point-in-polygon join, mapping city locations (points) to the countries they fall within (polygons). SedonaDB executes these joins efficiently by leveraging spatial indices where beneficial and dynamically adapting join strategies at runtime using input data samples. While many general-purpose engines struggle with the performance of such operations, SedonaDB is purpose-built for spatial workloads and delivers consistently fast results. -To test our work on SedonaDB, we also needed to develop a mechanism to evaluate its performance and speed. As a result of this, and other motivations, we also created Apache Sedona SpatialBench, which is a new standard for measuring the performance of spatial data processing engines and databases. We will discuss the benefits and capabilities of SpatialBench in more detail in our next blog. +## π Apache Sedona SpatialBench -## Single-node spatial benchmarks +To test our work on SedonaDB, we also needed to develop a mechanism to evaluate its performance and speed. This led us to develop Apache Sedona SpatialBench, a benchmark for assessing geospatial SQL analytics query performance across database systems. -Letβs compare the performance of SedonaDB vs. GeoPandas and DuckDB Spatial for some representative spatial queries as defined in [SpatialBench](https://sedona.apache.org/spatialbench/). Here are the results for Scale Factor 1 (SF 1): +Let's compare the performance of SedonaDB vs. GeoPandas and DuckDB Spatial for some representative spatial queries as defined in [SpatialBench](https://sedona.apache.org/spatialbench/). -{ align=center width="80%" } +Here are the results from SpatialBench v0.1 for Queries 1β12 at scale factor 1 (SF1) and scale factor 10 (SF10). -And here are the results for SF 10: +{ width="400" } +{ width="400" } +{: .grid } -{ align=center width="80%" } +SedonaDB demonstrates balanced performance across all query types and scales effectively to SF 10. DuckDB excels at spatial filters and some geometric operations but faces challenges with complex joins and KNN queries. GeoPandas, while popular in the Python ecosystem, requires manual optimization and parallelization to handle larger datasets effectively. An in-depth performance analysis can be found in the [SpatialBench website](https://sedona.apache.org/spatialbench/single-node-benchmarks/). -Hereβs an example of the SpatialBench query #8 SQL code that works for SedonaDB and DuckDB: +Hereβs an example of the SpatialBench Query #8 that works for SedonaDB and DuckDB: ```sql SELECT b.b_buildingkey, b.b_name, COUNT(*) AS nearby_pickup_count @@ -162,7 +179,9 @@ GROUP BY b.b_buildingkey, b.b_name ORDER BY nearby_pickup_count DESC ``` -Hereβs what the query returns: +This query intentionally performs a distance-based spatial join between points and polygons, followed by an aggregation of the results. + +Here's what the query returns: ``` βββββββββββββββββ¬βββββββββββ¬ββββββββββββββββββββββ @@ -205,15 +224,11 @@ result = ( ) ``` -SedonaDB optimizes query execution behind the scenes. GeoPandas requires more manual optimizations for better performance. If you have experience tuning GeoPandas code and would like to help optimize it, please comment on [this issue](https://github.com/apache/sedona-spatialbench). - -DuckDB Spatial offers optimized spatial join capabilities, enabling the quick execution of some queries, but it errors out for other queries. We encourage the DuckDB community to investigate these issues. - -## SedonaDB CRS management +## πΊοΈ SedonaDB CRS management SedonaDB manages the CRS when reading/writing files, as well as in DataFrames, making your pipelines safer and saving you from manual work. -Letβs compute the number of buildings in the state of Vermont to highlight the CRS management features embedded in SedonaDB. +Let's compute the number of buildings in the state of Vermont to highlight the CRS management features embedded in SedonaDB. Start by reading in a FlatGeobuf file that uses the EPSG 32618 CRS with GeoPandas and then convert it to a SedonaDB DataFrame: @@ -268,7 +283,7 @@ where ST_Intersects(buildings.geometry, vermont.geometry) ).show() ``` -This command correctly errors out because the tables have different CRSs. For safety, SedonaDB errors out rather than give you the wrong answer! Hereβs the error message thatβs easy to debug: +This command correctly errors out because the tables have different CRSs. For safety, SedonaDB errors out rather than give you the wrong answer! Here's the error message that's easy to debug: ``` SedonaError: type_coercion @@ -289,7 +304,7 @@ where ST_Intersects(buildings.geometry, ST_Transform(vermont.geometry, 'EPSG:432 ).show() ``` -We now get the correct result: +We now get the correct result! ``` ββββββββββββ @@ -302,11 +317,11 @@ We now get the correct result: SedonaDB tracks the CRS when reading/writing files, converting to/from GeoPandas DataFrames, or when performing DataFrame operations, so your spatial computations run safely and correctly! -## Realistic example with SedonaDB +## π― Realistic example with SedonaDB -Letβs now turn our attention to a KNN join, which is a more complex spatial operation. +Let's now turn our attention to a KNN join, which is a more complex spatial operation. -Suppose youβre analyzing ride-sharing data and want to identify which buildings are most commonly near pickup points, helping understand the relationship between trip origins and nearby landmarks, businesses, or residential structures that might influence ride demand patterns. +Suppose you're analyzing ride-sharing data and want to identify which buildings are most commonly near pickup points, helping understand the relationship between trip origins and nearby landmarks, businesses, or residential structures that might influence ride demand patterns. This query finds the five closest buildings to each trip pickup location using spatial nearest neighbor analysis. For every trip, it identifies the five buildings that are geographically closest to where the passenger was picked up and calculates the exact distance to each of those buildings. @@ -347,25 +362,19 @@ Here are the results of the query: βββββββββββββ΄ββββββββββββββββββββββββββββββββ΄ββββββββββββββββ΄ββββββββββββββββ΄βββββββββββββββββββββββ ``` -This is one of the queries from [SpatialBench](https://github.com/apache/sedona-spatialbench/). - -## Why SedonaDB was built in Rust - -SedonaDB is built in Rust to leverage performance, fine-grained memory management capabilities, and an expansive ecosystem of data libraries. - -Rust is a high-performance, memory-safe programming language. +This is one of the queries from [SpatialBench](https://github.com/apache/sedona-spatialbench/). -The Rust data ecosystem is mature, and SedonaDB leverages Rust libraries like [Apache DataFusion](https://github.com/apache/datafusion), [GeoArrow](https://github.com/geoarrow/geoarrow), and [georust/geo](https://github.com/georust/geo). +## π¦ Why SedonaDB was built in Rust -Whereas Spark, as a database engine, exposes several extension points that allow Sedona Spark to optimize spatial queries in a distributed setting, on a single node, DataFusion exposes stable and well-documented APIs for pruning, specialized physical operators like spatial joins, and optimizer rules at the logical and execution levels. This allowed us to add deep spatial awareness throughout the engine while maintaining non-spatial type and function coverage that users need and expect. N [...] +SedonaDB is built in Rust, a high-performance, memory-safe language that offers fine-grained memory management and a mature ecosystem of data libraries. It takes full advantage of this ecosystem by integrating with projects such as [Apache DataFusion](https://github.com/apache/datafusion), [GeoArrow](https://github.com/geoarrow/geoarrow), and [georust/geo](https://github.com/georust/geo). -## Why SedonaDB and SedonaSpark are Both Needed +While Spark provides extension points that let SedonaSpark optimize spatial queries in distributed settings, DataFusion offers stable APIs for pruning, spatial operators, and optimizer rules on a single node. This enabled us to embed deep spatial awareness into the engine while preserving full non-spatial functionality. Thanks to the DataFusion project and community, the experience was both possible and enjoyable. -SedonaSpark is an excellent option for users who have large geospatial datasets or an existing production Spark runtime. For example, if you have a large 4-terabyte vector dataset and want to join it with a large raster dataset, then SedonaSpark is clearly the best option. +## βοΈ Why SedonaDB and SedonaSpark are Both Needed -But Spark has limitations for smaller datasets. It is slow to run locally, cumbersome to install, and challenging to tune. +SedonaSpark is well-suited for large-scale geospatial workloads or environments where Spark is already part of your production stack. For instance, joining a 100 GB vector dataset with a large raster dataset. For smaller datasets, however, Spark's distributed architecture can introduce unnecessary overhead, making it slower to run locally, harder to install, and more difficult to tune. -SedonaDB is better for smaller datasets and when running computations locally. The SedonaDB spatial functions are compatible with the SparkSedona functions, so SQL chunks that work for one engine will usually work for the other. Over time, we will ensure that both project APIs are fully interoperable. Hereβs an example of a chunk to analyze the Overture buildings table that works for both engines. +SedonaDB is better for smaller datasets and when running computations locally. The SedonaDB spatial functions are compatible with the SedonaSpark functions, so SQL chunks that work for one engine will usually work for the other. Over time, we will ensure that both project APIs are fully interoperable. Here's an example of a chunk to analyze the Overture buildings table that works for both engines. ``` nyc_bbox_wkt = ( @@ -389,20 +398,20 @@ WHERE LIMIT 5; ``` -## Next steps +## π Next steps While SedonaDB is well-tested and provides a core set of features that can perform numerous spatial analyses, it remains an early-stage project with multiple opportunities for new features. Many more ST functions are required. Some are relatively straightforward, but others are complex. -The community will add built-in support for other spatial file formats, such as GeoPackage and GeoJSON, to SedonaDB. You can read data in these formats into GeoPandas DataFrames and convert them to SedonaDB DataFrames in the meantime. +The community will add built-in support for other spatial file formats, such as GeoPackage and GeoJSON, to SedonaDB. You can read data in these formats into GeoPandas DataFrames and convert them to SedonaDB DataFrames in the meantime. -Raster support is also on the roadmap, which is a complex undertaking, so itβs an excellent opportunity to contribute if youβre interested in solving challenging problems with Rust. +Raster support is also on the roadmap, which is a complex undertaking, so it's an excellent opportunity to contribute if you're interested in solving challenging problems with Rust. -Refer to the [SedonaDB v0.2 milestone](https://github.com/apache/sedona-db/milestone/1) for more details on the specific tasks outlined for the next release. Additionally, feel free to create issues, comment on the Discord, or start GitHub discussions to brainstorm new features. +Refer to the [SedonaDB v0.2 milestone](https://github.com/apache/sedona-db/milestone/1) for more details on the specific tasks outlined for the next release. Additionally, feel free to create issues, comment on the Discord, or start GitHub discussions to brainstorm new features. -## Join the community +## π€ Join the community -The Apache Sedona community has an active Discord community, monthly user meetings, and regular contributor meetings. +The Apache Sedona community has an active Discord community, monthly user meetings, and regular contributor meetings. -SedonaDB has a [well-defined roadmap](https://github.com/apache/sedona-db/milestones) and welcomes contributions from the community. Feel free to request to take ownership of an issue, and we will be happy to assign it to you. Youβre also welcome to join the contributor meetings, and the other active contributors will be glad to help you get your pull request over the finish line! +SedonaDB welcomes contributions from the community. Feel free to request to take ownership of an issue, and we will be happy to assign it to you. You're also welcome to join the contributor meetings, and the other active contributors will be glad to help you get your pull request over the finish line! diff --git a/docs/image/blog/sedonadb1/image1.png b/docs/image/blog/sedonadb1/image1.png deleted file mode 100644 index df65546a29..0000000000 Binary files a/docs/image/blog/sedonadb1/image1.png and /dev/null differ diff --git a/docs/image/blog/sedonadb1/image2.png b/docs/image/blog/sedonadb1/image2.png deleted file mode 100644 index 4c090dff39..0000000000 Binary files a/docs/image/blog/sedonadb1/image2.png and /dev/null differ diff --git a/docs/image/blog/sedonadb1/sf1-09242025.png b/docs/image/blog/sedonadb1/sf1-09242025.png new file mode 100644 index 0000000000..34f146fcb8 Binary files /dev/null and b/docs/image/blog/sedonadb1/sf1-09242025.png differ diff --git a/docs/image/blog/sedonadb1/sf10-09242025.png b/docs/image/blog/sedonadb1/sf10-09242025.png new file mode 100644 index 0000000000..0a400fca53 Binary files /dev/null and b/docs/image/blog/sedonadb1/sf10-09242025.png differ
