Skip to content
This repository was archived by the owner on May 3, 2024. It is now read-only.

Commit efcba9e

Browse files
author
Rohan Dhodare
committed
Fixed Codacy issues of Markdown files
Signed-off-by: Rohan Dhodare <[email protected]>
1 parent e29d450 commit efcba9e

File tree

2 files changed

+26
-24
lines changed

2 files changed

+26
-24
lines changed

doc/CORTX-MOTR-ARCHITECTURE.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
![image](./Images/1_EOS_Core_Architecture_Overview.png)
1+
2+
![image](./Images/1_EOS_Core_Architecture_Overview.png)
23

34
# Outline
45
+ This presentation is a beginner's guide to the CORTX core architecture
@@ -12,7 +13,7 @@
1213
+ FDMI
1314
+ ADDB
1415

15-
## What is CORTX
16+
# What is CORTX?
1617
+ CORTX core is a component of the new cloud software stack developed by Seagate
1718
+ CORTX provides basic functionality through its Motr client interface:
1819
+ object store

doc/Seagate-FDMI-HLD.md

Lines changed: 23 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,39 @@
11
# High Level Design Specification
2-
## Seagate FDMI
32

4-
## Revision History
3+
## Seagate FDMI ##
4+
5+
## Revision History ##
56
|Date | Revision History | Revision # | Comments | Initials|
67
|------| -----------------|------------| -----------------| --------|
78
|08/29/2014 | Major | 1.0 | | IV |
89
| |
910
| |
1011

1112

12-
# Introduction
13-
## 1.1 Document's Purpose
13+
# Introduction #
14+
## 1.1 Document's Purpose ##
1415
The document is intended to specify the design of Mero FDMI interface. FDMI is a part of Mero product. FDMI provides interface for Mero plugins and allows horizontally extending the features and capabilities of the system.
1516

16-
## 1.2 Intended Audience
17+
## 1.2 Intended Audience ##
1718
* Product Architect
1819
* Developers
1920
* QA Engineers
2021

21-
## 1.3 Definitions, Acronyms, and Abbreviations
22+
## 1.3 Definitions, Acronyms, and Abbreviations ##
2223
FDMI: File data manipulation interface
2324

24-
## 1.4 References
25+
## 1.4 References ##
2526
1. “Mero Object Store Architecture: Technical” MeroTechnicalWhitepaper.pdf
26-
1. “mero a scalable storage platform” Mero technical (toi).pdf
27-
1. fdmihighleveldecomposition.pdf
27+
2. “mero a scalable storage platform” Mero technical (toi).pdf
28+
3. fdmihighleveldecomposition.pdf
2829

29-
# Overview
30+
# Overview #
3031
Mero is a storage core capable of deployment for a wide range of large scale storage regimes, from cloud and enterprise systems to exascale HPC installations. FDMI is a part of Mero core, providing interface for plugins implementation. FDMI is build around the core and allows for horizontally extending the features and capabilities of the system in a scalable and reliable manner.
3132

32-
## 1.5 Product Purpose
33+
## 1.5 Product Purpose ##
3334
TBD
3435

35-
## 1.6 Assumptions and Limitations
36+
## 1.6 Assumptions and Limitations ##
3637
TBD
3738

3839
# Architecture
@@ -51,7 +52,7 @@ In this section only architectural information like the following is displayed b
5152

5253

5354

54-
## 1.7 FDMI position in overall Mero Core design
55+
## 1.7 FDMI position in overall Mero Core design ##
5556

5657
FDMI is an interface allowing Mero Core scale horizontally. The scaling includes two aspects:
5758

@@ -74,7 +75,7 @@ Considering the amount of data Mero Core operates with it obvious that plug-in t
7475

7576
Source in its turn refreshes its own subset of filters against the database. The subset is selected from overall filter set based on the knowledge about data types the source is able to feed FDMI with as well as operation with the data the source supports.
7677

77-
## 1.8 FDMI Roles
78+
## 1.8 FDMI Roles ##
7879
FDMI consists of APIs implementing particular roles in accordance with FDMI use cases. The roles are:
7980

8081
* Plug-in dock, responsible for:
@@ -94,8 +95,8 @@ FDMI consists of APIs implementing particular roles in accordance with FDMI use
9495

9596
![image](./images/Image1.PNG)
9697

97-
## 1.9 FDMI Plugin dock
98-
### 1.9.1 initialization
98+
## 1.9 FDMI Plugin dock ##
99+
### 1.9.1 initialization ###
99100

100101
![image](./images/Image2_sequenceDiagram.PNG)
101102

@@ -111,7 +112,7 @@ Further initialization consists of registering a number of filters in **filterd
111112
**NB:**
112113
TBD if we really need to determine the moment when all sources appear to be running filter sets consistent across the whole system. Currently we need to consider if Plug-in should be notified about this point.
113114

114-
### 1.9.2 Data Processing
115+
### 1.9.2 Data Processing ###
115116
![image](./images/Image3_sequenceDiagram.PNG)
116117

117118
Remote FDMI instance running Source Dock role provides data payload via RPC channel. RPC sink calls back local FDMI
@@ -128,8 +129,8 @@ confirmation it deregisters the associated RPC sink and plug-in’s callback fun
128129

129130
All registered sources are notified about changes in filter set, if any occurred as the result of plug-in coming off
130131

131-
## 1.10 FDMI Source Dock
132-
### 1.10.1 Initialization
132+
## 1.10 FDMI Source Dock ##
133+
### 1.10.1 Initialization ###
133134
![image](./images/Image5_sequenceDiagram.PNG)
134135

135136
* TBD where to validate, on Source side or inside FDMI
@@ -138,7 +139,7 @@ Source registration starts with registering source callbacks in local FDMI insta
138139
As an optimization, execution plan could be built for every added filter to be kept along with the one. As an option, execution
139140
plan can be built on every data filtering action to trade off memory consumption for CPU ticks.
140141

141-
### 1.10.2 Input Data Filtering
142+
### 1.10.2 Input Data Filtering ###
142143
![image](./images/Image6_sequenceDiagram.PNG)
143144

144145
*In case of RPC channel failure, input data reference counter has to be decremented. TBD if this to be done explicitly or in context of
@@ -162,7 +163,7 @@ When done with traversing, FDMI engine calculates final Boolean result for the f
162163

163164
The method “get next filter” is the place where the behavior is to be implemented.
164165

165-
### 1.10.3 Deferred Input Data Release
166+
### 1.10.3 Deferred Input Data Release ###
166167
![image](./images/Image7_DeferredInputDataRelease.PNG)
167168

168169
Input data may require to remain locked in the Source until the moment when plug-in does not need it anymore. The data processing inside plug-in is an asynchronous process in general, and plug-in is expected to notify corresponding source allowing it to release the data. The message comes from plug-in to FDMI instance hosting the corresponding source.
@@ -171,7 +172,7 @@ Input data may require to remain locked in the Source until the moment when plug
171172
TBD: We need to establish a way to resolve resource id to FDMI instance hosting particular source. Most probably
172173
resource id itself may contain the information, easily deduced or calculated.
173174

174-
### 1.10.4 FDMI Service Found Dead
175+
### 1.10.4 FDMI Service Found Dead ###
175176
![image](./images/Image8_FDMIserviceFoundDead.PNG)
176177

177178

0 commit comments

Comments
 (0)