Sharding คืออะไร?
Sharding คือวิธีการที่บล็อกเชนแบ่งข้อมูลและงานประมวลผลออกเป็นกลุ่มย่อยเพื่อให้สามารถประมวลผลพร้อมๆ กันได้หลายอย่าง ชนิดเดียวกัน แยกความรับผิดชอบออกไป ลองนึกถึงร้านสะดวกซื้อที่เปิดแคชเชียร์หลายช่องเพื่อให้แถวเดินเร็วขึ้น แต่ทุกคนยังจ่ายให้กับร้านเดิม
Sharding หมายถึงกระเป๋าเงินของคุณอยู่บนเครือข่าย mini chain ของตัวเอง ไม่ใช่ซะทีเดียว มันแยกเครือข่ายออกเป็นกลุ่ม nodes ที่ร่วมมือกัน จากนั้นนำผลลัพธ์มารวมกันเพื่อให้เครือข่ายยังคงสอดคล้องกัน
How Sharding works
จงจินตนาการถึงเครือข่ายที่มีหลายเลน ในแต่ละเลนจะเรียงลำดับธุรกรรม ถูกประมวลผลพร้อมกัน และจากนั้นจะถูกรวมกลับเข้าด้วยกันเพื่อให้ได้ความจริงร่วมเดียว กันทัวร์สั้นๆ:
- Start: เครือข่ายมอบหมายธุรกรรมไปยัง shards ต่างๆ ตามกฎง่ายๆ เช่น บัญชีหรือที่อยู่สัญญา
- Split: แต่ละ shard ตรวจสอบความถูกต้องของชุดของตัวเองด้วยคณะกรรมการภายใน
- Execute: การประมวลผลแบบขนานช่วยให้ throughput สูงขึ้นเพราะ shards หลายตัวทำงานพร้อมกัน
- Sync: ผลลัพธ์ถูกรวบรวมและยึดติดกับเลเยอร์ประสานงานที่ทำให้ทุกคนเห็นตรงกัน
- Cross: จำเป็นต้องสื่อสารกับ shard อื่น ข้อความจะเดินทางผ่านเลนเพื่อให้สมดุลและการเรียกใช้สัญญายังถูกต้อง
นั่นคือแผนการ เล่นหลายเลน แต่บัญชีเดียว
ทำไม Sharding ถึงสำคัญ
นี่คือผลลัพธ์ที่คุณและแอปของคุณจะได้:
- ประโยชน์: ผู้ใช้งานมากขึ้น, เวลารอคอยน้อยลง, และค่าธรรมเนียมถูกลงบ่อยครั้งด้วย Increased Scalability.
- มุมมอง: เครือข่ายขนาดใหญ่ต้องการให้บริการผู้ใช้หลายล้านรายโดยไม่รู้สึกว่าเป็นการจราจรติดขัด การ Sharding เป็นหนึ่งในเส้นทางไปสู่เป้าหมายนี้
- ความเกี่ยวข้อง: หากคุณสนใจการ mint NFT, การเทรด หรือ decentralized applications (dApps) เหล่านี้มีผลต่อความเร็วและค่าธรรมเนียมที่คุณรู้สึกจริง
เมื่ออ่าน roadmap ให้มองหาวิธี Cross shard calls ทำงานกับ smart contracts ถ้าการเรียกใช้งานรวดเร็วและคาดเดาได้ แอปของคุณจะ feel smooth even across lanes.
Key Characteristics of Sharding
อะไรที่ทำให้มันโดดเด่น:
- Parallelism: หลายส่วนของ chain ประมวลผลงานต่างๆ พร้อมกัน
- Partitioning: ข้อมูลและกิจกรรมถูกแบ่งออกเพื่อไม่ให้กลุ่มใดกลุ่มหนึ่งรับภาระทั้งหมด
- Coordination: beacon หรือเลเยอร์ผู้ประสานงานทำให้ shard เห็นตรงกัน
- Messaging: การสื่อสารข้าม shard ทำให้เงินทุนและการเรียกใช้เคลื่อนไหวอย่างปลอดภัยระหว่างเลน
- Resilience: คณะกรรมการหมุนเวียนเพื่อลดโอกาสที่ shard จะถูกยึดครอง
Variations
Sharding ไม่ใช่แบบเดียวทุกกรณี คุณอาจเห็น:
- Network: ชุด validator ถูกแบ่งออก เพื่อให้แต่ละกลุ่มดูแล shard ของตน
- State: ข้อมูลบัญชีถูกแบ่งส่วน ทำให้การจัดเก็บเบาลงสำหรับผู้เข้าร่วม
- Transaction: การประมวลผลธุรกรรมถูกแบ่งส่วน ปรับปรุงความสามารถในการประสานงาน
- Data: Data availability sharding เน้นการเผยแพร่และการสุ่มตัวอย่าง large blobs สำหรับ rollups
Sharding ช่วยเพิ่มสเกล แต่ยังพึ่งพาการเห็นพ้องต้องสอดคล้องและการแจกจ่าน validator อย่างเหมาะสม ความเร็วอย่างเดียวไม่ได้หมายถึงความปลอดภัยถ้าเรื่องความเชื่อถือผิดพลาด
ตัวอย่าง
Sharding ช่วยให้ chain ประมวลผลการ liquidations ของ DeFi บน shard หนึ่ง ในขณะที่ mint ยอดฮิตทำงานบน shard อื่น แล้วทั้งคู่ settle ไปยัง checkpoint เดียวกันโดยไม่ชนกัน
ข้อเท็จจริงสนุกๆ
คำว่า sharding มาจากวิศวกรรมฐานข้อมูลก่อนหน crypto เข้ามามีชื่อเสียงมากๆ เทคโนโลยีขนาดใหญ่แบ่งข้อมูลแบบนี้เพื่อให้แอปตอบสนองเร็ว แล้วเครือข่ายจึงนำกลยุทธ์นี้มาสนับสนุม ledger ที่มี consensus
Wrap-Up
Sharding กระจายงานทำให้บล็อกเชนดูเร็วและยังคงความสอดคล้อง คิดถึงมากขึ้นหลายเลน ปลายทางเดียวกัน