Design and Manage Elasticsearch Databases Visually with DbSchema

DbSchema lets you design, manage, and document Elasticsearch databases. Create ER diagrams, define tables and columns, and generate SQL scripts - with or without a live database connection.

Use Git to share the design, compare it with the Elasticsearch database, and deploy changes. DbSchema also includes a data editor, query builder, and HTML5 documentation - everything you need in one tool.

DbSchema Database Designer

Download DbSchema Download Elasticsearch JDBC Driver

Elasticsearch stores documents in indices, and each index has a mapping that defines field names, data types, analyzer configurations, and nested object structures. While Elasticsearch is primarily a search engine, its SQL interface — available from the Basic license tier upward — allows standard SQL queries against index data. DbSchema treats each Elasticsearch index as a table, visualizes field mappings as a schema diagram, and provides SQL and data exploration tools for Elasticsearch environments.

Exploring Elasticsearch Index Mappings and Field Types

Elasticsearch field types — keyword, text, nested, geo_point, dense_vector, and others — determine how documents are indexed and queried. DbSchema reads the mapping from the Elasticsearch REST API and displays each index's field structure, including nested object hierarchies, giving engineers a clear picture of the data model without reading raw mapping JSON.

Browsing Elasticsearch index field types and mapping structure in DbSchema

Browsing Elasticsearch Document Data

The DbSchema data explorer fetches documents from Elasticsearch indices and displays them in a tabular format. You can apply field filters to narrow the result set, paginate through large indices, and inspect individual field values — all without writing DSL queries or using the Kibana Discover interface.

Browsing Elasticsearch index document data in DbSchema's data explorer

Schema Documentation for Elasticsearch Indices

DbSchema generates HTML documentation from the Elasticsearch mapping, capturing index names, field types, analyzer assignments, and nested structures as human-readable reference material. For teams managing dozens of indices across environments, this documentation provides an accessible overview of the full data model without requiring Elasticsearch API knowledge.

Auto-generated schema documentation for Elasticsearch indices in DbSchema

Connecting DbSchema to Elasticsearch

DbSchema connects to Elasticsearch using the Elasticsearch JDBC driver, available from Elastic's download page. The default HTTP port is 9200. The JDBC URL format is jdbc:es://http://host:9200. The Elasticsearch SQL feature must be enabled — it is included in the Basic license tier and above with no additional configuration required. For Elasticsearch Service on Elastic Cloud, use the HTTPS cluster endpoint URL and supply your API key as the password in the connection dialog. Self-signed certificates require adding the Elasticsearch CA certificate to the Java truststore before connecting.

Why Teams Use DbSchema with Elasticsearch

  • Mapping visualization — view nested field hierarchies and analyzer assignments as a schema diagram instead of raw JSON.
  • SQL query access — run Elasticsearch SQL queries from the built-in editor without learning the Query DSL.
  • Document browsing — explore index contents in a tabular data explorer with column filtering and pagination.
  • Index documentation — generate HTML reference documentation covering all index mappings for team knowledge sharing.
  • Elastic Cloud support — connect to cloud-hosted Elasticsearch clusters using API key authentication over HTTPS.