# 0G's storage [ฉบับแปล ภาษาไทย]

By [CST](https://paragraph.com/@cst-2) · 2024-08-05

---

_บทความต้นฉบับ:_

[https://0g.ai/blog/0g-storage](https://0g.ai/blog/0g-storage)

![](https://storage.googleapis.com/papyrus_images/1b967433d54b80a053ed3892d3c7677e3b0620d8f4529962f5899a7f2404bdcb.png)

จะเป็นอย่างไรถ้าโครงการ Web2 หรือ Web3 ใดๆ ก็สามารถเข้าถึงโครงสร้างพื้นฐานการจัดเก็บข้อมูล (data storage infrastructure) สำหรับข้อมูลจำนวนมหาศาลได้? จะเป็นอย่างไรถ้าข้อมูลนี้สามารถถูกสืบค้นได้อย่างรวดเร็วเพื่อ data availability ในขณะที่มีความปลอดภัยสูงและสามารถปรับแต่งตามวัตถุประสงค์ได้?

บทความนี้จะพูดถึงภาพรวมของ 0G Storage ซึ่งเป็นฐานข้อมูลบนบล็อกเชนที่เพิ่มขนาดได้อย่างไม่จำกัดของเรา ที่รองรับความต้องการด้านข้อมูลของ Web2 หรือ Web3 ทุกประเภท

เราจะพูดถึงภาพรวมเกี่ยวกับ:

*   Dual-lane system for data management (ระบบสองช่องทางสำหรับการจัดการข้อมูล)
    
*   Erasure coding and data certification (การเข้ารหัสแบบกระจัดกระจายและการรับรองข้อมูล)
    
*   Layered storage architecture (สถาปัตยกรรมการจัดเก็บแบบหลายระดับ)
    
*   Economic model and incentives (โมเดลทางเศรษฐกิจและแรงจูงใจ)
    

เมื่อจบบทความนี้ คุณจะเห็นภาพชัดว่า 0G มีการจัดเก็บข้อมูลที่มีประสิทธิภาพสูงซึ่งสามารถตอบสนองความต้องการบนบล็อกเชนของทุกโครงการได้

**การจัดเก็บข้อมูลที่มีประสิทธิภาพสูงโดยใช้ 0G**

สำหรับผู้ที่ต้องการจัดเก็บข้อมูลกับ 0G ต้องจัดเตรียมข้อมูลพร้อมกับการชำระเงินโดยใช้ tokens ของ 0G ซึ่งอยู่ใน main chain ของ 0G ในการจัดเก็บข้อมูลนี้ ข้อมูลจะถูกเข้ารหัสแบบกระจัดกระจายก่อน ซึ่งหมายความว่าข้อมูลที่จัดเก็บจะถูกแบ่งเป็นชิ้นส่วนเล็กๆ แบบซ้ำซ้อนกัน และกระจายไปยังสถานที่จัดเก็บหลายแห่ง

ระบบของ 0G เองมีสองส่วน:

1.  **The Data Publishing Lane -** **ช่องทางการเผยแพร่ข้อมูล:** เพื่อรับประกันความพร้อมใช้งานของข้อมูล โดยข้อมูลใน 0G Storage สามารถถูกสืบค้นและตรวจสอบได้อย่างรวดเร็วโดยเครือข่ายฉันทามติของ 0G ("0G Consensus")
    
2.  **The Data Storage Lane - ช่องทางการจัดเก็บข้อมูล:** สำหรับการถ่ายโอนข้อมูลขนาดใหญ่ไปยัง 0G Storage
    

เพื่อวัตถุประสงค์ด้านความพร้อมใช้งานของข้อมูล (data availability) storage node ของ 0G ต้องประสานงานกับเครือข่ายฉันทามติของ 0G ("0G Consensus") เพื่อรับรองว่าข้อมูลมีอยู่จริงใน 0G Storage เราใช้การออกแบบ quorum-based design (แบบคณะกรรมการเท่าที่จำเป็น) โดยมีการเลือก storage node ของ 0G แบบสุ่ม

![](https://storage.googleapis.com/papyrus_images/8784255bc3113d99c2b4094ee8e28a4736d8b44e5def1f9d734fc68d6f37761f.png)

**การจัดเก็บข้อมูลแบบหลายระดับ (layered design)**

การจัดเก็บข้อมูลแบบ 0G ใช้การออกแบบหลายระดับ (layered design) โดยแต่ละระดับมีจุดเน้นที่แตกต่างกัน

ระดับล่างสุดคือชั้นการบันทึก (Log layer) รายการบันทึกอ้างอิงถึงบันทึกทั่วไป (คล้ายกับไฟล์ในโปรแกรมคอมพิวเตอร์ทั่วไป) และใช้สำหรับข้อมูลดิบที่ไม่ได้จัดเรียง (unstructured data) ซึ่งสามารถเพิ่มเติมเนื้อหาได้เท่านั้น (append-only)

ระดับถัดมาคือชั้นค่าคีย์ (Key-Value หรือ KV layer) เป็นที่จัดเก็บข้อมูลที่จัดเรียงเรียบร้อยแล้ว (structured data) ซึ่งสามารถอัปเดตได้ผ่านรายการใหม่ที่เพิ่มเข้าไปในรายการบันทึก (log entries) ตัวอย่างเช่น หากต้องการอัปเดตคีย์ใดคีย์หนึ่ง รายการบันทึกใหม่สามารถรวมเข้ากับการอัปเดตนี้ได้ (พร้อมกับข้อมูลอื่น ๆ ที่รวมอยู่ในแต่ละรายการบันทึก)

![KV Runtime ประสานงานกับ Log Runtime โดย "Runtime" หมายถึงช่วงเวลาที่โปรแกรมกำลังทำงานและรวมถึงสภาพแวดล้อมหรือกรอบการทำงานที่สนับสนุนการดำเนินการของโปรแกรม](https://storage.googleapis.com/papyrus_images/44052ec598dbb9b8164c47d18539ff0dfc006b9e40f30d7826db2c51d8d00a03.png)

KV Runtime ประสานงานกับ Log Runtime โดย "Runtime" หมายถึงช่วงเวลาที่โปรแกรมกำลังทำงานและรวมถึงสภาพแวดล้อมหรือกรอบการทำงานที่สนับสนุนการดำเนินการของโปรแกรม

**สรุปได้ดังนี้:**

ชั้นบันทึก (Log layer): ข้อมูลดิบที่ไม่ได้จัดเรียง (unstructured data)ซึ่งสามารถเพิ่มเติมได้เท่านั้น (append-only)

ชั้นค่าคีย์ (KV layer): ข้อมูลที่จัดเรียงเรียบร้อยแล้ว (structured data) ซึ่งสามารถอัปเดตเพื่อเปลี่ยนแปลงได้

ตัวอย่างเช่น machine learning models อาศัยชุดข้อมูลแบบตาราง (tabular data) ซึ่งจะถูกแสดงในรายการบันทึก ในทางตรงกันข้าม ข้อมูลที่อยู่ในรูปแบบ JSON หรือ MongoDB format จะถูกรวมอยู่ในรูปแบบ KV

การจัดเก็บแบบค่าคีย์ยังช่วยให้นักพัฒนาสามารถจัดการและดูแลข้อมูลที่มีโครงสร้างโดยสามารถเปลี่ยนแปลงได้อย่างเต็มที่ แม้กระทั่งสร้างแอปพลิเคชันที่คล้ายกับฐานข้อมูลบนระบบการจัดเก็บข้อมูลแบบ 0G

**การจัดเก็บข้อมูลที่ขยายได้สำหรับงบประมาณและความต้องการของคุณ**

0G ให้ผู้ใช้งานจัดเก็บข้อมูลได้ทุกระดับปริมาณ และให้ตัวเลือกต่างๆ เช่น ตำแหน่งที่จัดเก็บ ระดับการทำซ้ำข้อมูล (data replication) และระยะเวลาการจัดเก็บ ตัวอย่างเช่น ผู้ใช้สามารถจ่ายเพิ่มเพื่อสำรองข้อมูลเพิ่มเติม เลือกใช้เซิร์ฟเวอร์ในเขตอำนาจศาลเฉพาะ (เช่น สหรัฐอเมริกา) และเลือกระยะเวลาที่ระบบจะเก็บข้อมูลไว้

ในทางกลับกัน นักขุด (Miners) ที่จัดการการจัดเก็บของ 0G จะได้รับ token (ZG) เป็นรางวัลจาก network ระบบมี "กองทุนจัดเก็บข้อมูล" ที่จ่ายให้นักขุดเหล่านี้ นอกเหนือจากค่าธรรมเนียมที่จ่ายโดยผู้ที่จัดเก็บข้อมูล

รางวัลการจัดเก็บข้อมูลทั้งหมดสำหรับรายการข้อมูลใดๆ ไม่ขึ้นอยู่กับความนิยมของข้อมูลนั้น และรางวัลจะถูกแบ่งระหว่างจำนวนนักขุดที่จัดเก็บข้อมูลนี้ ดังนั้น รายการข้อมูลที่ถูกจัดเก็บโดย Miners เพียงไม่กี่คนจะส่งผลให้ผลตอบแทนสูงขึ้นสำหรับ Miners เหล่านั้น ในขณะที่รายการที่ถูกจัดเก็บอย่างแพร่หลายอาจนำไปสู่ผลตอบแทนที่ต่ำลงสำหรับ Miners ของข้อมูลนั้น

การกำหนดราคามีสองส่วน:

1.  **ค่าธรรมเนียม (fee)**: ค่าธรรมเนียมที่จ่ายให้กับ Miners ที่ประมวลผลคำขอจัดเก็บและเพิ่มรายการข้อมูลใหม่ ผู้ใช้สามารถกำหนดค่าธรรมเนียมที่สูงขึ้นเพื่อจูงใจให้ storage node มากขึ้นจัดเก็บข้อมูลนั้น
    
2.  **กองทุนจัดเก็บข้อมูล (Storage Endowment)**: รางวัลต่อเนื่องให้กับ Miners ที่จัดเก็บข้อมูลของ 0G ซึ่งให้ข้อมูลที่เกี่ยวข้อง เช่น การทำให้ข้อมูลพร้อมใช้งานเพื่อวัตถุประสงค์ในการพิสูจน์ความพร้อมใช้งานของข้อมูล ซึ่งจะถูกจ่ายโดยผู้ที่ต้องการพิสูจน์ความพร้อมใช้งานของข้อมูล มากกว่าผู้จัดเก็บข้อมูลเดิม (แม้ว่าอาจเป็นบุคคลเดียวกันก็ตาม)
    

**หลักฐานการเข้าถึงแบบสุ่ม (PoRA - Proof of Random Access)**

เพื่อจูงใจให้ Miners เก็บข้อมูล จึงมีการใช้หลักฐานการเข้าถึงแบบสุ่ม (PoRA) วิธีนี้กำหนดให้ Miners ต้องตอบสนองแบบสุ่มที่เกี่ยวข้องกับชิ้นส่วนข้อมูลที่เก็บถาวร (archived data chunks)

Miners ต้องตอบสนองต่อที่ร้องขอแต่ละครั้งและคำนวณผลลัพธ์จนกว่าจะพบคำตอบที่ตรงตามความยากในการขุด (เช่น มีจำนวนเลขศูนย์นำหน้ามากพอ)

เมื่อ Miners โหลดชิ้นส่วนข้อมูลที่เก็บถาวและคำนวณแฮชที่แสดงถึงข้อมูลนี้แล้ว พวกเขาจะตรวจสอบว่าคำตอบของตนตรงตามระดับความยากที่กำหนดหรือไม่ เนื่องจากกระบวนการนี้เป็นแบบสุ่ม นักขุดสามารถเพิ่มโอกาสในการได้รับรางวัลโดยการเพิ่มกำลังการประมวลผลและจัดเก็บข้อมูลมากขึ้น

_ความยุติธรรม_

เพื่อให้เกิดความยุติธรรมสำหรับผู้ที่มีเครื่องมือน้อยกว่า ช่วงการขุดจึงถูกจำกัดไว้ที่ 8 เทราไบต์ของข้อมูล นั่นหมายความว่าผู้ที่มีเครื่องจำนวนมากสามารถขุดพร้อมกันได้หลายช่วงข้อมูล (โดยแต่ละช่วงมีขนาด 8 เทราไบต์) ในขณะที่เครื่องเดี่ยวสามารถแข่งขันในช่วงข้อมูลขนาด 8 เทราไบต์เพียงช่วงเดียว

_การสร้างแรงจูงใจให้การแชร์ข้อมูล_

การสร้างแรงจูงใจให้ nodes แบ่งปันข้อมูลนั้นเป็นเรื่องท้าทาย เนื่องจากส่วนใหญ่ของกระบวนการนี้จะเกิดขึ้นภายนอก 0G Consensus ดังนั้นจึงสมเหตุสมผลที่ nodes จะต้องการเก็บรักษาความกว้างแบนด์วิดท์ที่มีอยู่

0G มีการใช้กลไกการจ่ายค่าลิขสิทธิ์ในตัวเพื่อสร้างแรงจูงใจในการแบ่งปันข้อมูล โดยที่ 0G จะให้ค่าลิขสิทธิ์เมื่อมีการสร้างหลักฐานการขุด PoRA mining proof ใหม่บนพื้นฐานของข้อมูลที่แบ่งปัน ตัวอย่างเช่น หากโหนด A แบ่งปันข้อมูลกับโหนด B และโหนด B สร้างหลักฐานการขุดที่ถูกต้อง โหนด A จะได้รับรางวัล

**0G Storage จะรองรับการใช้งานนับพัน**

ตอนนี้ควรจะชัดเจนแล้วว่า 0G Storage มีการออกแบบอย่างไม่เหมือนใครที่สามารถขยายขนาดได้อย่างรวดเร็วในขณะเดียวกันก็รองรับคำขอความพร้อมใช้งานของข้อมูลในทุกรูปแบบ 0G Storage ยังทำหน้าที่เป็นโครงสร้างพื้นฐานการเก็บข้อมูลพื้นฐานสำหรับโครงการ Web3 อื่นๆ ที่ต้องการใช้ 0G โดยมีความคล้ายคลึงกับ AWS และบริการคลาวด์ที่มีการรวมศูนย์แบบดั้งเดิม แต่เป็นแบบ on-chain และ decentralized อย่างสมบูรณ์

หากคุณสนใจจะพาร์ทเนอร์กับ 0G โปรดติดต่อเราที่ Discord

[https://discord.com/channels/1210423309808963594/1213988718646526023](https://discord.com/channels/1210423309808963594/1213988718646526023)

ติดตามการเดินทางของ 0G เพิ่มเติมได้ที่ [https://0g.ai/](https://0g.ai/) และ follow เราบน Twitter ที่ [https://twitter.com/0G\_labs](https://twitter.com/0G_labs)

---

*Originally published on [CST](https://paragraph.com/@cst-2/0g-s-storage)*
