更新readme
This commit is contained in:
parent
bc16d0b3c9
commit
72310fc797
32
README_en.md
32
README_en.md
|
@ -3,9 +3,9 @@
|
|||
# JCS-pub (JointCloud Storage Public Infrastructure + Ready-to-Use Storage Client)
|
||||
|
||||
## Project Overview
|
||||
JointCloud Storage is a storage service model built on a peer-to-peer intercloud collaboration mechanism. It manages storage resources across multiple clouds and provides users with a unified data storage service. The core idea emphasizes the independent and equal status of each cloud, connecting them in a non-intrusive manner. It also promotes intercloud collaboration by integrating computing, storage, and networking resources across clouds to deliver high-quality storage services.
|
||||
JointCloud Storage is a storage service model built on a peer-to-peer jointcloud collaboration mechanism. It manages storage resources across multiple clouds and provides users with a unified data storage service. The core idea emphasizes the independent and equal status of each cloud, connecting them in a non-intrusive manner. It also promotes intercloud collaboration by integrating computing, storage, and networking resources across clouds to deliver high-quality storage services.
|
||||
|
||||
This project aims to turn JointCloud Storage into a public infrastructure that is easy to use for individuals and enterprises alike. With a ready-to-use client, users can quickly access efficient intercloud storage without worrying about deploying additional components. At the same time, the system allows flexible customization of its features to meet diverse needs.
|
||||
This project aims to turn JointCloud Storage into a public infrastructure that is easy to use for individuals and enterprises alike. By simply using a ready-to-use storage client, users can quickly access efficient jointcloud storage without the need to deploy additional components. At the same time, the system allows flexible customization of its features to meet diverse needs.
|
||||
|
||||
|
||||
## Evolution Roadmap
|
||||
|
@ -18,11 +18,11 @@ This project aims to turn JointCloud Storage into a public infrastructure that i
|
|||
|
||||
### 1. Data Migration
|
||||
|
||||
- **Cross-Cloud Migration Support**: Enables users to migrate data across multiple cloud storage providers.
|
||||
- **Cross-Cloud Migration Support**: Allows users to migrate data across multiple cloud storage providers.
|
||||
- **Policy-Driven Migration Engine**
|
||||
- Filtering Rules: Migrate files based on size, file extension, or directory path.
|
||||
- Scheduling Control: Define migration time windows.
|
||||
- Post-Migration Actions: Choose whether to retain or delete the original data after migration.
|
||||
- Post-Migration Actions: Allow users to choose whether to retain or delete the original data after migration.
|
||||
- **Migration Efficiency Optimization**: Improve migration performance and reduce bandwidth costs by leveraging the **JointCloud Storage Public Infrastructure**.
|
||||
|
||||
### 2. Cross-Cloud Data Storage
|
||||
|
@ -65,7 +65,7 @@ This project aims to turn JointCloud Storage into a public infrastructure that i
|
|||
- **Open Source Public Infrastructure**:
|
||||
- Users can self-deploy or connect to existing public infrastructure.
|
||||
- Free Public Infrastructure Access:
|
||||
- To obtain an account, password, and certificate, please email `song-jc@foxmail.com`. The application process is illustrated below.
|
||||
- To obtain an account, password, and certificate, please send an Email to `song-jc@foxmail.com`. The application process is illustrated below.
|
||||
|
||||
<center>
|
||||
<img src="docs/figs/application_en.png" width=70% /></center>
|
||||
|
@ -98,7 +98,7 @@ The following components must be installed manually:
|
|||
|
||||
### 2. Docker Installation (Recommended)
|
||||
|
||||
Currently, only the JCS client is available as a Docker image. The jcsctl tool must be used as a precompiled executable — [click here to download]().
|
||||
Currently, only the JCS client is available as a Docker image. The jcsctl tool must be used as a precompiled executable — [Download here]().
|
||||
|
||||
Pull the Docker image
|
||||
```bash
|
||||
|
@ -119,7 +119,7 @@ jcs serve -c /opt/confs/config.json # Note: the config path is inside the contai
|
|||
|
||||
Before compiling, make sure you have the following installed:
|
||||
- `Go`: Version 1.23 or above
|
||||
- `mage`: A Makefile-like build tool. GitHub repo:[click here](https://github.com/magefile/mage)
|
||||
- `mage`: A Makefile-like build tool. GitHub repository: [Mage](https://github.com/magefile/mage)
|
||||
|
||||
After installing dependencies, clone this repository and run the following command in the project root:
|
||||
```powershell
|
||||
|
@ -133,7 +133,7 @@ After successful execution, a build directory will be created in the project roo
|
|||
|
||||
### 4. Install Precompiled Executables
|
||||
|
||||
Download and extract the binaries that match your system environment — [click here to download]().
|
||||
Download and extract the binaries that match your system environment — [Download here]().
|
||||
|
||||
|
||||
## Usage Guide
|
||||
|
@ -233,7 +233,7 @@ By default, `jcsctl` attempts to connect to the client at `https://127.0.0.1:789
|
|||
|
||||
### 3. API
|
||||
|
||||
See documentation: [Link](docs/JCS_pub_API.md)
|
||||
See the API documentation: [Access here](docs/JCS_pub_API.md)
|
||||
|
||||
|
||||
## Testing & Evaluation
|
||||
|
@ -241,9 +241,9 @@ See documentation: [Link](docs/JCS_pub_API.md)
|
|||
|
||||
## Custom Redundancy Strategy
|
||||
|
||||
Redundancy strategies have a wide-ranging impact on the read/write process and are tightly coupled with various parts of the codebase. When implementing your own strategy, it's highly recommended to review and reference existing implementations to avoid omissions.
|
||||
Redundancy strategies significantly impact the read/write process and are closely integrated with various parts of the codebase. When implementing your own strategy, it's highly recommended to review and reference existing implementations to avoid omissions.
|
||||
|
||||
The following explanation is written in an order that prioritizes understanding — it may not reflect the most optimal implementation flow. Please read through the entire section before deciding where to begin.
|
||||
The following explanation is organized to prioritizes clarity and understanding — it may not reflect the most optimal implementation flow. Please read through the entire section before deciding where to begin.
|
||||
|
||||
### 1. Redundancy Transformation
|
||||
|
||||
|
@ -348,13 +348,7 @@ You may embed the `NodeBase` struct from the `gitlink.org.cn/cloudream/common/pk
|
|||
|
||||
### 3. Using Custom Instructions
|
||||
|
||||
The lifecycle of an execution plan includes:
|
||||
- Writing `FromTo`
|
||||
- Parsing `FromTo` into a DAG
|
||||
- Optimizing the DAG
|
||||
- Generating Instructions from the DAG
|
||||
|
||||
You can extend any of the first three stages to integrate your custom instructions.
|
||||
The lifecycle of an execution plan includes the following stages: writing `FromTo` definitions, parsing `FromTo` into a DAG, optimizing the DAG, generating instructions from the DAG. You can extend any of the first three stages to integrate your custom instructions.
|
||||
|
||||
The `FromTo` model is used to describe the structure of an execution plan:
|
||||
- The `From` component defines where the data originates
|
||||
|
@ -370,7 +364,7 @@ type From interface {
|
|||
|
||||
type To interface {
|
||||
// The range of the file stream required by this To node.
|
||||
// The exact meaning depends on the value of DataIndex:
|
||||
// The specific meaning of this value depends on DataIndex:
|
||||
// If DataIndex == -1, it refers to the entire file range.
|
||||
// If DataIndex >= 0, it refers to a specific shard (chunk) of the file.
|
||||
GetRange() math2.Range
|
||||
|
|
Loading…
Reference in New Issue