Chapter 4 System Build and Operations Setup Procedures (Data as a Product)
This chapter presents the procedures for building a minimum configuration system capable of performing data exchange between participants, using the deploy definition files provided by ODS SDK for Onboarding (hereinafter "SDK").
System Build Procedures (4.1–4.3)
4.1 System Architecture
The system architecture to be built in this chapter is as shown in Figure 3. Rectangles represent components or services, and arrows represent dependencies between them.
Figure 3 System Architecture Provided by the SDK
This SDK uses PostgreSQL as the RDBMS, Keycloak as the authentication system, and OpenFGA as the ReBAC authorization system. In the following sections, the Identity Component and Web API Transfer Module may be referred to simply as L3 and L2, respectively.
4.2 Initial Configuration of Each Component
The SDK provides files that aggregate the deploy definition files for each service, which can be used to start and stop all services at once. The usage instructions for the Docker Compose version are shown below.
Navigate into the cloned directory and clone the repositories for L2, L3, and the clearing and payment service.
Run Docker Compose using the docker-compose.yml file located at the top level of the repository to start all services.
The setup is complete when all services have started, as shown below. For procedures on starting and stopping components individually, refer to "4.5 Starting and Stopping."
Next, perform the initial configuration for L3, OpenFGA, and L2 by running the scripts provided by the SDK. For details, refer to the .
Before starting operations, it is necessary to register participant business information in L3. For details, refer to the .
It is necessary to configure the L3 URL in L2's configuration file so that L2 can communicate with L3. For details, refer to the .
The procedures for starting and stopping each component individually are as follows.
Start
Stop
Start
Stop
Start (L3 and Logging must be started beforehand)
Stop
Start (L3 must be started beforehand)
Stop
Data providers must configure authorization settings for the APIs published by the industry service, for the business entity created in "4.3 Data Configuration for Starting Operations." For details, refer to the .
Data users must set the headers shown in Table 2 in their HTTP requests.
Table 2: Required Header Information
Header Name
Description
Data users acquire data from providers using the following procedure.
Obtain an access token: Follow to obtain an access token.
Access data: Use the obtained access token to access data. A sample command is shown below.
For details, refer to the .
The types of logs output by each component are as follows.
Logs output by L2 serve as the basis for billing records and are therefore collected by the logging service and stored as files in object storage. For information on output destinations, rotation intervals, and other details, refer to the .
L3 outputs logs to standard output and standard error. When running in a container, logs can be viewed with the following command.
The clearing and payment service outputs logs to standard output and standard error. When running in a container, logs can be viewed with the following command.
X-ODS-xxx
Item subject to logging. Specify for xxx the string designated by the service provider (e.g., X-ODS-UserId)
API-Key
API key issued by this service
Authorization
Access token issued by L3 (Identity Component) in JWT format
X-TrackingId
Log output item for provenance management (UUID format)