h3
sled
Our great sponsors
h3 | sled | |
---|---|---|
21 | 37 | |
4,588 | 7,736 | |
2.1% | - | |
7.1 | 2.4 | |
21 days ago | 10 days ago | |
C | Rust | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
h3
- H3: Hexagonal hierarchical geospatial indexing system
- Evaluation of Location Encoding Systems
- Not sure if this is the worst or most genius indentation I've seen
-
A population density map of the state of Pennsylvania
It looks like the base Kontur dataset uses H3 resolution 8, and there’s a lookup table here. “400m” seems to refer to the edge length (which averages to 461m).
-
[ANN] HexTree: geographical region-to-value mapping
I can speak to quadtrees, but the primary reason for using this is that you need a geographic "dictionary" (not using the word map to avoid confusion with charts), and you're perhaps already using the H3 hexagonal grid system.
-
What's everyone working on this week (34/2022)?
HexSet: is a way of storing a set of H3 cells in a tree, and doing fast (2-20 ns on my 2013 trashcan Mac Pro) membership tests. You must first convert the input data (e.g. GeoJSoN polygon) into H3 cells.
-
Surprising result while transpiling C to Go
> What an amazing tool that can completely change function names when it converts from C to Go.
How can one read the code of the benchmark, then switch into virulent sarcasm mode without trying to understand the code? And seeing "+1" comments without any effort to understand is also disheartening.
The blog post had a link about the Go helper functions the author used. It lands on https://github.com/akhenakh/goh3/blob/main/h3.go This shows that the `FromGeo()` function used by the Go benchmark is a helper that calls transpiled functions. The benchmark code itself was of course not transpiled, so the sarcasm was unneeded and wrong.
If anyone wants to dig in deeper, the C function `latLngToCell()` calls 2 functions, see https://github.com/uber/h3/blob/master/src/h3lib/lib/h3Index...
- Completely ignorant Newbie needing help with launching Ubers H3 Software.
-
Anyone doing geospatial queries? NoSQL? Amazon Location Service?
Uber just released their library to perform geospatial indexing - https://h3geo.org/. This might be an useful building block for you.
sled
-
SableDb – a key/value store that uses RocksDB and Redis API (written in Rust)
a few times, seems interesting. The author's also built a lot of other cool concurrency primitives for Rust as well.
[0] https://github.com/spacejam/sled
-
Is Something Bugging You?
- Dropbox [3] uses a similar approach but they talk about it a bit more abstractly.
Sans-IO is more documented in Python [4], but str0m [5] and quinn-proto [6] are the best examples in Rust I’m aware of. Note that sans-IO is orthogonal to deterministic test frameworks, but it composes well with them.
With the disclaimer that my opinions are mine and mine alone, and don’t reflect the company I work at —— I do work at a rust shop that has utilized these techniques on some projects.
TigerBeetle is an amazing example and I’ve looked at it before! They are really the best example of this approach outside of FoundationDB I think.
[0]: https://risingwave.com/blog/deterministic-simulation-a-new-e...
[1]: https://risingwave.com/blog/applying-deterministic-simulatio...
[2]: https://dropbox.tech/infrastructure/-testing-our-new-sync-en...
[3]: https://github.com/spacejam/sled
[4]: https://fractalideas.com/blog/sans-io-when-rubber-meets-road...
[5]: https://github.com/algesten/str0m
[6]: https://docs.rs/quinn-proto/0.10.6/quinn_proto/struct.Connec...
-
RFC: redb (embedded key-value store) nearing version 1.0
Sled uses bw-tree actually https://github.com/spacejam/sled/wiki/sled-architectural-outlook
-
Production grade databases in Rust
There is a valid argument to be made for threads over async in a large percentage of use cases where async is considered the default. If this is what you are referring to however, I don't think they ever referred to async as completely useless: https://github.com/spacejam/sled/issues/1123.
-
Best local database that works on all platforms including web?
Have you looked into other pure-Rust databases as well, such as sled or GlueSQL which has an SQL interface on top of sled? I wonder how those would compare to Persy.
-
Are there any embedded databases that have multiple-process support?
I'm not sure what you need. Are these of any use? https://github.com/meilisearch/heed https://github.com/spacejam/sled
- Some key-value storage engines in Rust
-
Are there a demand for management system of embedded storage like RocksDB? I plan to build one in Rust as the language becoming a core of many popular databases but wonder if there’s a demand. Can’t find any similar project even in other languages.
There is also Sled but as I understand it that is being reworked to use the author's new DB core Marble
-
GreptimeDB: a new open source database designed for large-scale time-series data storage and processing, written in rust
There are some databases like sled/FlashDB designed to be embedded to other applications even bare metal microcontrollers. But I do doubt the potential bussiness value of a pure embedded database.
-
Ask HN: Serverless” key value store with transactions?
https://github.com/spacejam/sled
To add transaction support, you probably need a good understanding of how the memtable works in Log Structured Merge trees:
What are some alternatives?
S2 geometry - S2 geometry library in Go
RocksDB - A library that provides an embeddable, persistent key-value store for fast storage.
Leaflet - 🍃 JavaScript library for mobile-friendly interactive maps 🇺🇦
rust-rocksdb - rust wrapper for rocksdb
mapbox-gl-js - Interactive, thoroughly customizable maps in the browser, powered by vector tiles and WebGL
redis-rs - Redis library for rust
starlink-coverage - Calculating some statistics about Starlink satellites
sqlx - 🧰 The Rust SQL Toolkit. An async, pure Rust SQL crate featuring compile-time checked queries without a DSL. Supports PostgreSQL, MySQL, and SQLite.
s2geometry - Computational geometry and spatial indexing on the sphere
mini-redis - Incomplete Redis client and server implementation using Tokio - for learning purposes only
maplibre-gl-js - MapLibre GL JS - Interactive vector tile maps in WebGL2
heed - A fully typed LMDB wrapper with minimum overhead 🐦