기술공유
KETI-Storage-Engine-Instance
4세부
KETI

Introduction of OpenCSD KETI-Storage-Engine-Isnstance

-----------------------------------------------------------------------------------------------------------------------------------------------------------------

KEIT-Storage-Engine-Instance for KETI-OpenCSD Platform

Developed by KETI

 

Contents

-----------------------------------------------------------------------------------------------------------------------------------------------------------------

1. Requirement

2. Required Module

3. How To Install

4. Modules

5. Governance

 

Requirement

-----------------------------------------------------------------------------------------------------------------------------------------------------------------
Ubuntu 20.04.2 LTS
MySQL 5.6(Storage Engine : MyROCKS by KETI-Version)
RapidJSON
Cmake >= 3.24
libprotoc >= 3.19

 

Required Module

-----------------------------------------------------------------------------------------------------------------------------------------------------------------

 

How To Install

-----------------------------------------------------------------------------------------------------------------------------------------------------------------
git clone
cd KETI-Storage-Engine-Instance/cmake/build
cmake ../..
make -j8

 

Modules

-----------------------------------------------------------------------------------------------------------------------------------------------------------------

Interface Container

----------------------------------------------------------------------------------------------------------------------------------------------------------------- 

Be the first to receive and manage snippets to perform queries

 

Storage Engine Input Interface

-----------------------------------------------------------------------------------------------------------------------------------------------------------------

Receive snippets for query execution from DB Connector Instance

 

Snippet Manager

-----------------------------------------------------------------------------------------------------------------------------------------------------------------

Manage snippet task status by query and deliver snippets to appropriate container

 

Monitoring Container

-----------------------------------------------------------------------------------------------------------------------------------------------------------------

Manages data related to database schema information required to perform queries

 

LBA2PBA Query Agent

-----------------------------------------------------------------------------------------------------------------------------------------------------------------

Communicates with LBA2PBA Manager to convert logical block address to physical block address

 

WAL Query Agent

----------------------------------------------------------------------------------------------------------------------------------------------------------------- 

Communicates with WAL Manager, which manages unflushed data

 

Table Manager

----------------------------------------------------------------------------------------------------------------------------------------------------------------- 

Manage database table schema information, etc.

 

Index Manager

-----------------------------------------------------------------------------------------------------------------------------------------------------------------

Perform tasks required for index scans, such as index table management and data exploration

 

Offloading Container

-----------------------------------------------------------------------------------------------------------------------------------------------------------------

Passing snippets to computational storage

 

Snippet Scheduler

----------------------------------------------------------------------------------------------------------------------------------------------------------------- 

Appropriate compute storage to perform query scan/filter operations is selected according to a scheduling algorithm

 

CSD Status Manager

-----------------------------------------------------------------------------------------------------------------------------------------------------------------

State management of computational storage for scheduling

 

Merging Container

----------------------------------------------------------------------------------------------------------------------------------------------------------------- 

Merge and store work results received from computational storage

 

Merge Query Manager

----------------------------------------------------------------------------------------------------------------------------------------------------------------- 

Merge task results received from computational storage

 

Buffer Manager

----------------------------------------------------------------------------------------------------------------------------------------------------------------- 

Save merged snippet operation results and query final results

 

Governance

-----------------------------------------------------------------------------------------------------------------------------------------------------------------

This work was supported by Institute of Information & communications Technology Planning & Evaluation (IITP) grant funded by the Korea government(MSIT) (No.2021-0-00862, Development of DBMS storage engine technology to minimize massive data movement)

Others

-----------------------------------------------------------------------------------------------------------------------------------------------------------------

Due to the structure change, in the first half of the year, we worked on local repositories and private github.

https://github.com/KETI-OpenCSD/Pushdown-Process-Container

다운로드