finds.dev← search

// the find

apache/shardingsphere

★ 20,737 · Java · Apache-2.0 · updated Jun 2026

Empowering Data Intelligence with Distributed SQL for Sharding, Scalability, and Security Across All Databases.

Apache ShardingSphere is a database middleware layer that sits between your application and your databases, adding sharding, read/write splitting, data encryption, and distributed transactions without changing your application code. It ships in two flavors: a JDBC driver (jar, no separate process) and a standalone proxy server (language-agnostic). This is a serious piece of infrastructure used in large-scale Java deployments, primarily in China.

The dual-mode architecture (JDBC jar vs. standalone proxy) is genuinely useful — you pick the tradeoff between performance and language-agnosticism per service rather than committing to one globally. Field-level transparent encryption is well-thought-out: you configure the cipher and the middleware handles encrypt-on-write, decrypt-on-read without touching application code. The pluggable SPI architecture means you can swap sharding algorithms, key generators, and distributed transaction implementations independently. CI coverage is serious — separate workflows for SQL compatibility, agent instrumentation, GraalVM native image, and nightly E2E runs against real databases.

The ANTLR SQL parser has a known heap growth problem (they document it themselves in the README) where cache grows unboundedly with SQL template count — you will hit OOM in long-running services with diverse query patterns if you don't cap heap proactively. The project is overwhelmingly Chinese-ecosystem-oriented: most community activity, issues, and real-world case studies are in Chinese, and English documentation lags. Still on version 5.x after years; the API surface is enormous and the upgrade path between minor versions has historically broken configs. Cross-database SQL federation is listed as a feature but is nowhere near production-ready for complex queries — the gap between what's advertised and what works in practice is wide.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →