Smooth onboarding of
NoSQL databases

Graphic visualization
JSON nested objects
Implicit relationships
Forward- and
Reverse-Engineering
Data model
documentation
Team collaboration
Data governance
Windows, Mac, Linux

Graphic visualization of complex data structures

Leverage the power of visual data modeling

NoSQL Entity Relationship Diagram

Intuitive and easy-to-use interface

Hackolade's user interface has been carefully designed to be clear and effective, minimizing the learning curve, and allowing you to start modeling right away, without the need to read the entire user manual.

Just enough industry standards

Entity Relationship theory and JSON Schema are great industry standards. Hackolade uses just enough of them to serve its purpose. But not too much of them either, so they don't become a constraint to the practical construction of NoSQL document models.

NoSQL hierarchical schema view

Visual ER diagrams for JSON documents

Schema design in a schemaless world seems like a contradiction. Hackolade applies some Entity Relationship theory to non-relational databases to represent denormalized data in a user-friendly way.

Graphic hierarchical schema editing

Hackolade is specifically designed to handle the powerful nature of nested objects, denormalization, and polymorphic semi-structured schemas. It uses a JSON Schema notation, easily visualized and maintained in a hierarchical schema view.

Leveraging the power of JSON and NoSQL

Modeling nested objects: sub-documents and arrays

Attribute properties

Field properties

Each data type has its specific properties and constraints, allowing documentation and validation of the business rules needed for proper data integrity. Following the capabilities of JSON, Hackolade supports polymorphic semi-structured schemas with mutiple types possible for a given field/attribute.

Hierarchical schema

Collapsible hierarchical schema view

To make each collection's structure more readable, the ER diagram contains a pretty view of the collection schema with an indication of each field's data type. You can easily navigate the database structure only using a mouse.

JSON Schema editor

JSON Schema editor

You may use Hackolade to model plain JSON documents, with its intuitive graphical editor hiding the complexity of JSON Schema with no loss of power. It simplifies the visualization and understanding of deeply nested structures, and facilitates editing and maintenance. Hackolade dynamically generates a sample JSON document to illustrate the structure being built, and validates both the JSON Schema and the sample document.

Even non-relational DBs have relationships

Documentation of implicit relationships and denormalization

NoSQL implicit relationships

Denormalized data requires thorough updates

To make each collection's structure more readable, the ER diagram contains a pretty view of the collection schema with an indication of each field's data type. You can easily navigate the database structure only using a mouse.

Forward- and Reverse-Engineering

Speed up your modeling and development cycle

NoSQL forward-engineering

Forward-engineering

Create sample documents as you develop your model, to help you visualize your design with representative data. Easily generate MongoDB 3.2+ Validator scripts and Mongoose schemas to be integrated in your code. For DynamoDB, there's dynamic generation of CreateTable and ConditionExpression scripts.

How-to video   Online documentation

NoSQL Reverse-Engineering

Reverse-engineering

Capture your current data architecture, with many options for reading the metadata of your applications. This can be done by submitting simple JSON documents or their JSON Schema, or even a SQL Data Definition Language file or an XSD from erwin, ER/Studio, or PowerDesigner. When reverse-engineering a NoSQL instance, the system performs a probabilistic inference of a representative sampling of each collection or table.

How-to video   Online documentation

Data model documentation

Publish data model details

NoSQL data model documentation

HTML, Markdown, or PDF formats

Once you have enriched your model with descriptions, constraints, and relationships, Hackolade generates a rich configurable report including diagrams, tables, and all the metadata, plus other artifacts.

Engage the dialog

Collaborative application architecture design

Data modeling collaboration

A powerful tool for analysts, data architects, designers, developers, and DBAs

Evaluate alternatives, recognize potential hurdles early to reduce rework later. Facilitate troubleshooting and evolution to respond to growth and customer needs.

Data governance

Ensure data integrity and build credibility

data governance

Add just the right level of control

Combine the flexibility of the document model with true data conformance and validation capabilities. Now teams can benefit from the ease of development that the document model offers, while still maintaining the strict data governance controls that are critical for applications in regulated industries.

NoSQL data dictionary

Data dictionary

Define once object definitions that can be re-used in multiple places. A library of definitions standardizes content and insures consistency. It also simplifies the work of data modelers so maintenance can be performed in one place and be automatically propagated to all places where the definition is referenced.

How-to video   Online documentation

NoSQl data modeling cli command-line interface

Command Line Interface

True support for an agile development approach leveraging the flexibility of NoSQL dynamic schemas via automated tasks to discover new fields and structures from a much larger dataset as a basis for document sampling.

Data model compare merge

Model compare and merge

Identify additions, modifications, and deletions between 2 versions of a model, or between a baseline model and what can be found in the production database instance. Manual and automatic merging can be performed.

Online documentation

Attribute custom property controls

User-defined custom properties

To help fit Hackolade in your data management infrastructure, you may define your own properties for any kind of object: model, container, database, bucket, collection, table, or attribute.

Online documentation

Data model naming conventions

Naming conventions

You can maintain both a ‘business name’ and a ‘technical name’ for objects (containers, entities, and attributes.) To facilitate the maintenance of these 2 names, it is possible to keep them synchronized and transformed based on a set of user-driven parameters, and optionally based on a conversion file maintained outside of the application. Name conversion can go both directions: Business-to-Technical, or Technical-to-Business. Furthermore, when performing reverse-engineering, it is assumed that the database instance contains technical names, to be transformed in business names.

How-to video   Online documentation

Data lineage model source

Lineage capture

Object lineage states where an object comes from, where it is going, and what (optional) transformations are applied to it as it flows through multiple processes. It helps understand the life cycle of the object. Lineage is the documentation of the life cycle.

Hackolade includes basic lineage capture capabilities to enable an audit trail, which can in turn be used to feed a specialized lineage tool where further visualization can be performed, or to feed an ETL tool where transformation can take place.

Online documentation

Data model Excel import export

Bulk editing in Excel with export/import

For any of the supported targets, it is possible to export all or part of a model, so properties could be easily edited in a tabular format, to be re-imported back into the application. You may pick and choose exactly which objects and properties are exported for each target.

Online documentation

Model-Driven API generation

Model-driven API generation

Generate an OpenAPI (or Swagger) model and documentation from any Hackolade model target. This feature will help make your APIs more consistent than those produced by hand, while easily exposing resources for underlying data sources. API maintenance will be greatly facilitated, and Total Cost of Ownership reduced. Take an entity-relationship diagram (ERD) to automatically generate the API for CRUD operations of the entities of that data model.

Online documentation

Multi-platform desktop application

Native support for your desktop OS

Windows Mac Linux OS

Matching your environment

Hackolade was developed to be conveniently used on any of your desktop computers: Windows 7 through 10, Mac OS X 10.10 or higher, and several Linux flavors based on kernel v3.20 or above.