Collections Statistics Query history Query data
Couchbase is a high-performance NoSQL database that combines the flexibility of document-oriented storage with the power of a distributed architecture. With features like memory-first architecture, integrated caching, and SQL-like querying with N1QL, Couchbase provides a flexible and efficient solution for modern, data-driven applications that demand speed and reliability.
Azimutt is making the first database explorer targeted for real world databases: large, heterogeneous and messy 😅 If you ever looked for an Entity-Relationship diagram tool (ERD) or drew your database schema on a sheet or whiteboard, Azimutt is made for you. But it goes well beyond that with database documentation, cross-database data exploration and even linter and monitoring of your database.
As a document-oriented database, Couchbase has no formal schema,
so the Couchbase connector
has to iterate over all buckets, scopes and collections to fetch a sample of documents and infer their schema.
If collections have an implicit schema, it works really well. If they don't, well, it reflects that also 😬
You can check what it does by looking at the getSchema
function in the
src/couchbase.ts file.
If you stored different entities inside the same collection, using a field to identify them, the Couchbase connector is able to create several entities out of one collection. You just have to specify the field name in the `discriminator` attribute in your database url.
Couchbase has no foreign keys defined in the database. Still you can reference entities by storing their ids. If you do, and follow a naming convention, Azimutt is able to suggest missing relations, making the exploration experience a lot better. If not, you can still add them manually in Azimutt using AML, this is not a fun work, but it's a good documentation investment ^^
How to use it #
The Couchbase connector is already included in the Azimutt Gateway, so you just have to:
- Launch the Gateway, if needed (for the local one use
npx azimutt@latest gateway
) - Create a new project or add a source to an existing one
- Fill your Couchbase database url (ex:
couchbases://user:[email protected]
)
Here are more details about how Azimutt secure your data and especially your database url.
Here is an example of what you can do using Azimutt: