Sharding là gì? Tìm hiểu chi tiết giao thức Sharding trong Blockchain

SangLV
SangLV
Follow me:

Sharding là gì? Liệu Sharding có đóng vai trò quan trọng trong Blockchain trong việc giải quyết vấn đề về khả năng mở rộng cho Blockchain hay không? Cùng tham khảo bài viết sau để giải đáp được những thắc mắc liên quan đến Sharding nhé!

Sharding là gì?

1. Sharding là gì

Đây là một nguyên tắc về thiết kế cơ sở dữ liệu được Vitalik Buterin – Founder của Ethereum sáng lập. Mục tiêu của việc tạo ra Sharding là để giải quyết được vấn đề về khả năng mở rộng cho Blockchain, giúp tăng tốc độ xử lý giao dịch. Lúc này thay vì mỗi node có vai trò độc lập nhau thì chúng được phân mạng lưới để tách thành các nhóm; trong đó, mỗi node chỉ có một phần dữ liệu trên Blockchain. Chính bởi vậy, nhiều giao dịch có thể được xử lý cùng một lúc.

Cơ chế hoạt động của Sharding

Với những đề cập phía trên, chắc hẳn anh em đã có những hình dung nhất định về Sharding. Để anh em có những hiểu biết sâu sắc về thiết kế cơ sở dữ liệu này, chúng ta sẽ cùng phân tích chi tiết hơn về cơ chế hoạt động của Sharding

2. Cơ chế hoạt động của Sharding

Trong bài viết về cơ chế hoạt động của Blockchain, chúng ta đã được làm quen với các Node. Các Node này là những thực thể hoạt động độc lập, hay thường được coi như vô số các máy tính khác nhau giúp xác thực dữ liệu, duy trì hoạt động cho mạng lưới phi tập trung. Các Node này sẽ là yếu tố chính để hình thành nên các nền tảng phi tập trung, đồng thời đóng vai trò quan trọng trong việc tính toán dữ liệu, thêm các Block mới vào Blockchain và đảm bảo an toàn cho toàn bộ hệ sinh thái.

Như vậy, anh em có thể hình dung Blockchain sẽ có chứa vô số các lỗ cắm, và mỗi Node sẽ xử lý công việc trên Blockchain thông qua việc liên kết với các lỗ cắm. Điều này có nghĩa là mỗi node đều hoạt động hoàn toàn độc lập và phải chịu trách nhiệm xử lý toàn bộ thông tin. Quá trình này có thể đảm bảo được yếu tố về tính phi tập trung và tính bảo mật, nhưng lại khiến cho giao dịch được xử lý rất chậm chạp, và thậm chí còn có thể sinh ra tắc nghẽn mạng nếu cùng một lúc xuất hiện quá nhiều giao dịch.

Thay vì vậy, Sharding chia các Node ra làm các mảnh (Shard), hay các nhóm, khiến chúng có khả năng chạy song song nhau. Tức là lúc này mỗi Node không cắm riêng một lỗ cắm với Blockchain, cũng không thực hiện toàn bộ dữ liệu giao dịch nữa. 

Ví dụ blockchain có chứa 10.000 node; Sharding có thể giúp chia tất cả số lượng Node này thành 10 mảnh bao gồm 1.000 Node mỗi mảnh. Việc phân chia này sẽ khiến các Shard chạy song song nhanh và khiến tốc độ tăng lên 10 lần.

Một số công nghệ Sharding là gì?

Trong Blockchain, công nghệ Sharding có thể được chia ra làm một số nhánh như sau

3. Một số công nghệ Sharding

Network Sharding

Thông thường, khi một Block mới được thêm vào chuỗi, Miners sẽ cần thực hiện gửi bằng chứng công việc để chứng minh rằng mình đã tìm ra được số Nonce phù hợp. Nhờ vậy, tính hợp lệ của chuỗi mới sẽ được xác thực. Tuy đảm bảo được tính chính xác nhưng quá trình này có thể dẫn đến những ảnh hưởng về tính không thể thay đổi trong cấu trúc Blockchain.

Network Sharding giải quyết vấn đề này bằng cách chia nhỏ mạng lưới trên Blockchain và khiến các cơ sở giảm thiểu được quá trình giao tiếp. Như vậy, mỗi phân đoạn sẽ chịu trách nhiệm xử lý những giao dịch riêng trên chuỗi. Miners sẽ được nhóm ngẫu nhiên và quá trình xác thực sẽ được độc lập trong mỗi nhóm.

Transaction Sharding

Đối với Transaction Sharding, các giao dịch sẽ có sự phân bổ nhất định cho từng phân đoạn. Do đó, sự khác biệt trong mô hình Blockchain sẽ có tác động đến Sharding.

State Sharding

So với hai công nghệ phía trên, đây được cho là việc phân bổ khó khăn nhất. Bởi lúc này công việc của Sharding không chỉ là chia nhỏ và phân bổ công việc cho từng nhóm Node, mà còn cần gán dữ liệu Blockchain cho từng phân đoạn. Quá trình này có thể giúp giảm gánh nặng lưu trữ của các Node.

Tại sao Sharding lại cần thiết đối với Blockchain

Như chúng ta đã biết, mỗi Blockchain đều cần đáp ứng đủ 3 tiêu chí về Decentralization (tính phi tập trung); Security (tính bảo mật), Scalability (khả năng mở rộng). Tuy nhiên, tính phi tập trung và khả năng mở rộng là hai yếu tố không thể cùng tồn tại được. Lý do là bởi nếu đảm bảo được tính phi tập trung nghĩa là Blockchain có rất nhiều Node tham gia vào xác thực dữ liệu. Số lượng Node càng lớn, tính phi tập trung càng cao. Nhưng đồng thời, số lượng Node càng lớn thì thời gian xác thực dữ liệu lại càng lâu và khiến cho yếu tố về khả năng mở rộng không được đảm bảo.

4. Tại sao Sharding lại cần thiết đối với Blockchain

Để giải quyết được cả 3 yếu tố này, các Blockchain sẽ cần có sự tương thích với một hoặc nhiều chuỗi phụ để tăng tốc độ giao dịch và tạo điều kiện cho người dùng tiết kiệm chi phí (Một ví dụ điển hình là những dự án Layer 2 của Ethereum) Tuy nhiên, đây vẫn chưa phải là cách tối ưu bởi bản chất người dùng vẫn không thể giao dịch trên Blockchain gốc và tận dụng được những lợi thế của Blockchain đó.

Ngoài vấn đề về cải thiện trải nghiệm người dùng trên Blockchain, Sharding còn là một phương pháp đặc biệt quan trọng khi các ứng dụng Dapps, DeFi đang ngày càng thu hút người dùng và đem lại nguồn lợi nhuận lớn cho các dự án. Và tất nhiên, giao dịch nhanh chóng, thông lượng mạng ổn định sẽ là những yếu tố vô cùng quan trọng để giúp Blockchain trở nên hấp dẫn đối với cả người dùng mới và những developer của dự án.

Nếu anh em đã update những tin tức mới nhất về Ethereum The Merge, chắc hẳn đến đây anh em đã hiểu được tại sao đội ngũ Developer của Ethereum lại phải thực hiện quá trình “thay máu” đầy vất vả để áp dụng Sharding và giải quyết định khả năng mở rộng của mạng lưới này.

Cụ thể hơn, Ethereum 2.0 được thông báo là có thể gồm 64 phân đoạn bằng nhau với khả năng xử lý giao dịch một cách đồng thời. 64 Shard này sẽ được gắn với chuỗi tính, và dàn trải giữa các phân đoạn nhằm mục đích thực hiện được 100.000 giao dịch mỗi giây.

Tại sao khả năng mở rộng lại quan trọng đối với Blockchain

Trong Genesis Block, Satoshi đã gửi gắm một thông điệp mà dù không có lời xác minh nào đích đáng, chúng ta cũng ngầm hiểu được rằng ông tạo ra Bitcoin để giải quyết và tối ưu hóa hơn cơ cấu tài chính. Trên thực tế, Blockchain và những điểm mạnh của Bitcoin nói riêng và thị trường Crypto nói chung đã phần nào được chứng minh và được cộng đồng công nhận. Tuy nhiên, mọi thứ sẽ không hoàn hảo và trọn vẹn được nếu thiếu đi khả năng mở rộng.

Tại sao vậy? Tốc độ xử lý giao dịch của Paypal và VISA là 115tps và 2000tps (transactions per second – số lượng giao dịch trên giây). Trong khi đó Bitcoin lại chỉ có thể xử lý được 7tps, Ethereum nhỉnh hơn với khoảng 15tps. Nếu không xử lý được vấn đề về khả năng mở rộng, làm thế nào mà cuộc cách mạng về việc tái cơ cấu trong hệ thống tài chính có thể được thực hiện?

Sharding phù hợp với cơ chế đồng thuận nào?

POW là cơ chế đồng thuận đem lại tính phi tập trung và tính bảo mật lớn nhất cho mạng lưới còn POS lại là cơ chế đồng thuận có khả năng mở rộng tốt hơn do Validator không cần phải thực hiện khai thác. Anh em có thể tham khảo cụ thể hơn về từng cơ chế đồng thuận để nắm bắt được rõ ràng hơn về những yếu tố này. Vậy, giữa hai cơ chế đồng thuận này, cơ chế nào sẽ phù hợp nhất để thực hiện Sharding?

Đối với POW

5. Sharding và cơ chế đồng thuận POW

Với POW, Miners sẽ cần đảm bảo được tỷ lệ băm và đầu tư máy móc, hệ thống tính toán để sở hữu được tỷ lệ tốt nhất. Đây vốn dĩ là một cách rất tuyệt vời để đảm bảo tính cạnh tranh giữa các Miners và khiến hệ thống đảm bảo được tính phi tập trung, tính bảo mật. Và tất nhiên, hệ quả đi kèm của nó là thực hiện giao dịch rất chậm chạp và tốn phí. Vậy nếu chúng ta áp dụng Sharding với cơ chế đồng thuận POW thì sao?

Thoạt nghe, đây có thể sẽ là phương pháp phù hợp để tối ưu được tốc độ giao dịch cho những blockchain sử dụng POW. Tuy nhiên, nếu xét về bản chất, POW mang nặng tính phi tập trung còn Sharding lại chia các Node ra thành từng nhóm để xử lý một cách độc lập. Hay nói cách khác, Sharding khiến các Node trở nên tập trung hơn. Điều này tương tự như việc chia toàn bộ Miners thành nhóm các thợ đào hay các mỏ đào đã từng có tiền lệ tồn tại. Quá trình này vô tình đẩy những Blockchain sử dụng POW vào nguy hiểm với rủi ro của cuộc tấn công quá bán. 

Ví dụ, một Blockchain có 100 Shard, như vậy mỗi Shard sẽ chiếm 1% sức mạnh tính toán trên hoàn hệ thống. Lúc này, họ chỉ cần có thêm 1% sức mạnh băm nữa là có thể gây ra những ảnh hưởng lớn đến mạng lưới và kiểm soát được tốc độ băm của các Shard khác.

Đối với POS

6. Sharding và cơ chế đồng thuận POS

Về bản chất, POS đã sở hữu lợi thế lớn hơn so với POW về tốc độ giao dịch và khả năng mở rộng do có sự giới hạn nhất định về lượng Validator. Như vậy, POS có cần áp dụng Sharding để tiếp tục tăng tốc độ giao dịch và giúp tiết kiệm chi phí hay không?

Đúng là POS có khả năng mở rộng tốt hơn POW, nhưng điều này không có nghĩa là nó đã hoàn toàn được tối ưu. Bởi cơ chế hoạt động của POS là phân phối ngẫu nhiên Validators để xử lý giao dịch. Như vậy, quá trình xác thực vẫn được diễn ra độc lập trong một Node. Điều này đồng nghĩa với việc nếu có quá nhiều giao dịch cùng diễn ra một lúc trên POS, chúng vẫn có khả năng bị tắc nghẽn hoặc xử lý một cách chậm chạp. Sharding sẽ là phương pháp vô cùng phù hợp để tối ưu hóa được lợi thế của POS.

Cụ thể hơn, với sự phân chia thành các mảnh hay các nhóm Validator, vấn đề sẽ được giải quyết một cách nhanh chóng hơn mà không đem lại rủi ro hay nguy hiểm cho mạng lưới. Bởi với cơ chế hoạt động này, Validator sẽ cần thực hiện Stake coin/token để có quyền xác thực và họ không thể khai thác coin hay sử dụng tỷ lệ băm để chiếm lĩnh quyền kiểm soát trên mạng lưới.

Như vậy, rõ ràng Sharding sẽ là phương pháp phù hợp hơn cả đối với cơ chế đồng thuận POS. Đây cũng chính là lý do mà Ethereum cần chuyển đổi cơ chế đồng thuận (Ethereum The Merge) để áp dụng được Sharding và khiến tốc độ giao dịch được cải thiện một cách rõ rệt hơn.

Hạn chế của Sharding là gì?

Sharding được coi là phương pháp tối ưu nhất hiện nay để một Blockchain có thể đảm bảo được cả 3 yếu tố về tính phi tập trung, khả năng bảo mật và khả năng mở rộng. Tuy nhiên, phương pháp là một vấn đề, thành công với phương pháp đó hay không lại là một vấn đề khác.

Do được thực hiện trên cơ chế đồng thuận POS nên bản thân những Blockchain có thể áp dụng thành công Sharding sẽ phải giải quyết vấn đề về tính phi tập trung. Hay nói cách khác, lúc này Blockchain sẽ cần có số lượng Validator đủ để tránh được khả năng tập trung hóa, đồng thời phải giải quyết những vấn đề liên quan đến số lượng Shard hay phương pháp để liên lạc giữa các Shard một cách liền mạch nhất có thể.

Về mặt cơ chế đồng thuận, Developer có thể giải quyết được một phần vấn đề này bằng cách đưa ra chỉ định ngẫu nhiên. Tuy nhiên, anh em hình dung như sau: đối với những giao dịch có khối lượng tiền lớn, tất nhiên hệ thống sẽ ưu tiên chỉ định cho những người stake lượng coin lớn hơn. Bởi khi xảy ra vấn đề, những Validator với cổ phần nhỏ sẽ không thể chịu trách nhiệm được với giao dịch này. Cho nên, về bản chất, đây vẫn là một cơ chế đồng thuận phải giải quyết rất nhiều với tính tập trung hay những penalties đối với Validators có ý đồ xấu.

Với trường hợp của Ethereum, đội ngũ phát triển đã rất kỳ công trong việc xây dựng chuỗi Beacon Chain để chuẩn bị cho Ethereum The Merge; đồng thời lên kế hoạch chỉn chu để thực hiện Sharding – bước nâng cấp cuối cùng của Ethereum 2.0. Dù tồn đọng nhiều khó khăn và những vấn đề cần giải quyết với Sharding; tuy nhiên, Ethereum 2.0 vẫn là một tương lai rất rộng mở đối với Ethereum; đồng thời có thể đem lại cho nền tảng này tính bảo mật thậm chí còn lớn hơn khi so sánh với mạng Bitcoin.

Tương lai của Sharding

Trên thực tế, một loạt các dự án đã sử dụng phương pháp này để cải thiện giao dịch. Một số nền tảng có thể kể đến như Zilliqa với 2.800tps; Cardano và giao thức Hydra với 1.000tps trên mỗi hydra; Facebook’s Libra, Telegram, … và sắp tới đây là Ethereum. Có thể nói, nếu Ethereum 2.0 thành công rực rỡ, Sharding sẽ là một trong những mảnh ghép vô cùng quan trọng trong toàn bộ bức tranh của Cryptocurrency trong tương lai.

Với những chia sẻ trên, chắc hẳn anh em đã có dịp tìm hiểu một cách chi tiết nhất về Sharding là gì, đồng thời nắm được những đặc điểm và lý do tại sao Blockchain cần áp dụng Sharding nhằm cải thiện tính mở rộng. Thông qua đó, hy vọng anh em sẽ có cái nhìn toàn diện hơn về các Blockchain khác nhau; đồng thời có được cho mình những lựa chọn phù hợp nhất. Chúc anh em thành công!

 

Bài viết cùng chủ đề

TOP 10 đồng coin tiềm năng nhất 2022 – không thể bỏ lỡ

9+ Cách phân bổ vốn trong Crypto – Trời Xuân ta Xuân, trời Hạ ta Hạ

20+ Cách đầu tư tiền điện tử cho người mới bắt đầu – Nhanh kiếm được tiền

Sign up for an eToro account and access more than 70 popular cryptocurrencies and crypto funds to invest in.

Kéo xuống bên dưới 1 chút nữa bạn sẽ thấy phần bình luận. Hoặc tham gia ngay vào các cộng đồng của mình:

 
Telegram Channel

Thảo luận Blockchain, xu hướng mới 2024

Facebook Group

Check dự án Scam, phân tích Bitcoin & Altcoin

guest

0 Comments
Inline Feedbacks
View all comments