SQL Queries for Apache CouchDB: Structured Query Server (SQS) is an SQL query engine for CouchDB, letting you use complex SQL SELECT statements to extract information from a CouchDB database with extreme flexibility.
The demo video gave me several “wow” moments, so I decided to give it a try. With SQS I can select a subset of attributes from my documents, making queries faster and lighter while still retaining richer data in the background. Honestly, I couldn’t think of an easier way — SQS makes the whole process remarkably simple.
Developers can build more complex software on top of CouchDB faster without sacrificing performance or CouchDB’s unique replication feature.
SQS seamlessly complements CouchDB’s built-in querying mechanisms and allows for complex queries that have not been possible with your CouchDB data before, including finding documents by multiple criteria, sorting by another value, and complex JOINS.
Data analysts can now query your CouchDB with the tools they are used to without any additional infrastructure to maintain.
Instead of having to learn CouchDB’s idiosyncrasies compared to SQL databases, SQS gives your data analysts full access to your CouchDB data.

HTTP interface that returns JSON: query with anything, from anywhere, no SQL client necessary.

SQS runs in parallel with CouchDB and keeps itself up to date.

Works out of the box with most database designs and node configurations.

Handles millions of documents per database.

Fast indexing (on average: on par with CouchDB JS views)
Structured Query Server is designed to feel as easy to use as the CouchDB views you already know:
- Update a design doc to change your schema and SQS automatically picks it up.
- SQS indexes are stored as hashes of the schema content, so you can “warm up” indexes in production before using them.
- Supports
_purgefor strict data removal, for example to ensure GDPR compliance. - Includes
_statsthat show useful runtime statistics. - Can be configured with different log levels for everything from request logging to debugging and logs to stdout, a file or syslog.
- Correctly handles single-node and clustered uses of CouchDB, including changes-feed rewinds.
- Index compaction is handled automatically and can be switched to manual if needed.
- Crash-proof design, just like CouchDB.
Subscribe now for 149 EUR* per month
* VAT is added if applicable
Please consult our Software License agreement for more information.
See our FAQ for more information.