Difficulty: General understanding of structured programming, git, reading knowledge of TypeScript and the fundamentals of databases and data structures
Estimated Time: 15 minutes


The objective of this lesson is to examine an example of an web application that takes a single source approach to data architecture.

What you'll be doing

In this lesson you're going to get, install and run a simple microservice that manages order information. The demonstration microservice writes and reads data to a single data source.

Single Data Source Architecture

While not an optimal approach to data management as web-scale, having insight into single source data architecture is worth taking the time to understand, at the least to understand the shortcomings at hand.

You'll be doing the following steps:

  • Step 1: Installing the lesson code
  • Step 2: Getting the code up and running
  • Step 3: Analyzing the application
  • Step 4: Identifying opportunities for improvement

Executing command line instructions

This scenario is completely interactive. The instructions you'll be given will be executed directly in the terminal window that is embedded directly in the Katacoda interactive learning environment. In the steps to come, when you see a command line instruction with a black background and check mark at the end, like so:

Katacoda command line

just click on it and the command will execute in the interative terminal window.

Click the START SCENARIO button to start.

Congratulations! You've completed the scenario that describes the essential concepts behind a single source data architecture.

The interactive scenario you:

  • Installed the lesson code
  • Got the code up and running
  • Analyzed the application
  • Identified opportunities for improvement

In next lesson you'll take a look at how to implement a basis example of the Command Query Responsibility Segregation (CQRS) pattern.

Take the next lab is this series, Part 2-Implementing the CQRS Pattern.

Microservice Database Design: Part 1-Examining a Single Source Database Architecture

Step 1 of 4

Cloning the Code from GitHub


The objective of this lesson is demonstrate how to clone from GitHub the project code you'll be using in this lab.


Step 1: Get the code from GitHub:

git clone https://github.com/reselbob/simplecqrs.git

Step 2: Navigate to the working directory of the code just cloned. This directory contains all the assets for the lab's demonstration application.

cd ~/simplecqrs && pwd

Step 3: Check out the git branch that contains the source code for this lesson:

git checkout 01-standard-monolith.0.0.1

You'll see output as follows:

Branch 02-implement-read-write-datasources.0.0.1 set up to track remote branch 02-implement-read-write-datasources.0.0.1 fromorigin.
Switched to a new branch '02-implement-read-write-datasources.0.0.1'

Next: Getting the code up and running