Skip to main content

Creating data stores

Adding a data store to your Catalog is a great way for you to document your data stores in your architecture (e.g. databases, caches, objectStore, searchIndexes, etc).

You can assign your services to read/write to data stores in your architecture.

This can help your teams understand which services are reading or writing to data stores in your architecture.

What do data stores look like in EventCatalog?​

Example

You can see an example of a data store in the EventCatalog demo.

Adding a new data store​

To add a new data store create a new folder within the /containers folder with an index.mdx file.

  • /containers/{Data Store Name}/index.mdx
    • (example /containers/OrdersDatabase/index.mdx)

The index.mdx contents are split into two sections, frontmatter and the markdown content.

Here is an example of what a data store markdown file may look like.

/containers/OrdersDatabase/index.mdx (example)
---
# id of your data store, used for slugs and references in EventCatalog.
id: orders-db
# Display name of the data store, rendered in EventCatalog.
name: Orders DB
# Version of the data store
version: 0.0.1
# Type of the data store (e.g. database, cache, objectStore, searchIndex)
container_type: database
# Technology of the data store (e.g. postgres@14, redis@7, etc)
technology: postgres@14
# Classification of the data store (e.g. internal, external, etc)
classification: internal
# Retention of the data store (e.g. 7y, 10y, etc)
retention: 7y
# Residency of the data store (e.g. eu-west-1, us-east-1, etc)
residency: eu-west-1
---

## Overview

This orders database stores all orders and order lines for the orders domain.

<NodeGraph />

That's it!

Once you add your new data store to EventCatalog, it will now show in the docs, visualizer and discoverability table.

Adding content​

With data stores you can write any Markdown you want and it will render on your page. Every data store gets its own page.

Within your markdown content you can use components to add interactive components to your page.