Hackolade is an intuitive yet powerful application to perform the visually data modeling of many NoSQL and multi-model databases (in order of appearance...):


Data storage formats and IDLs

Document

Graph

Column-Oriented

Multi-model

Hadoop &

Data Whses

APIs

RDMBS

w/ JSON

JSON Schema v4

MongoDB

Neo4j

Cassandra

CosmosDB

- w/ SQL API

- w/ MongoDB API

- w/ Cassandra API

- w/ Gremlin API

HBase

Swagger API

SQL Server

JSON Schema v7

Couchbase

TinkerPop

Datastax

Hive

OpenAPI

Oracle

Avro schema

DynamoDB

Amazon Neptune

HBase

AWS Glue
Data Catalog

RAML

PostgreSQL

Joi schema

Elasticsearch


ScyllaDB

MarkLogic

Snowflake


MySQL

Parquet

Firebase



ArangoDB

BigQuery


MariaDB

ORC

Firestore






DB2

Thrift








ProtoBuf









Hackolade combines the graphical representation of collections in an Entity Relationship Diagram, with the graphical representation of the JSON Schema definition of each collection in a Tree View.  Together, these graphical representations provide the schema model of a NoSQL application, and the documentation of that model.  The application is specifically designed around the powerful nature of JSON nested sub-objects and denormalization.


The software facilitates the work of, and the dialog between analysts, architects, designers, developers, testers, DBAs, and operators of systems that are based on such technologies.  It also can generate schema scripts and documentation in a variety of machine-based (e.g.; JSON Schema, MongoDB Validator, Mongoose, DynamoDB CreateTable and ConditionExpression scripts...), Couchbase Ottoman, or human-readable formats such as HTML and PDF reports.


Instead of having to find data structures tacitly described in the application code, the creation of a database model helps to evaluate design options beforehand, think through the implications of different alternatives, and recognize potential hurdles before committing sizable amounts of development effort.  A database model helps plan ahead, in order to minimize later rework.  In the end, the modeling process accelerates development, increases quality of the application, and reduces execution risks.


You will hopefully find Hackolade user-friendly.  In case it is is not sufficiently intuitive, this help documentation is designed so you can quickly learn Hackolade as a new user, or enhance your knowledge as a regular user.