logo
  1. Blog
  2. Tin tức Crypto
  3. Sharding là gì? Những thách thức và rủi ro tiềm ẩn của Sharding

Sharding là gì? Những thách thức và rủi ro tiềm ẩn của Sharding

  1. 1. Sharding là gì?
  2. 2. Sharding giải quyết vấn đề gì?
  3. 3. Công nghệ Sharding hoạt động như thế nào?
  4. 4. Những ưu nhược điểm của công nghệ Sharding
  5. 5. Vấn đề mở rộng Blockchain
  6. 5.1 Mở rộng theo chiều rộng
  7. 5.2 Mở rộng theo chiều ngang
  8. 6. Các giải pháp mở rộng khác
  9. 7. Vì sao Ethereum cần sharding?
  10. 8. Tầm nhìn Ethereum 2.0 & Công nghệ Sharding là gì?
  11. 9. Những thách thức và rủi ro của Sharding là gì?
  12. 10. Phân loại công nghệ Sharding
  13. 10.1 Network Sharding
  14. 10.2 State Sharding
  15. 10.3 Transaction Sharding
  16. 11. Tương lai của Sharding là gì?
  17. 12. Công nghệ Sharding giúp gì cho Blockchain
  18. 13. Công nghệ Sharding - giải pháp cho bài toán Scalability

Sharding là gì? Sharding được xem là một công nghệ giúp mở rộng mạng lưới Blockchain. Đây là vấn đề được nhiều nhà đầu tư quan tâm. Vậy Sharding có đặc điểm gì nổi bật, ưu và nhược điểm của công nghệ này như thế nào? Mời các bạn hãy cùng BHO Network tìm hiểu chi tiết hơn về dự án này trong bài viết dưới đây nhé!

1. Sharding là gì?

Sharding được hiểu là quá trình phân đoạn cơ sở dữ liệu theo chiều ngang và chiều dọc. Công nghệ này xử lý và lưu trữ dữ liệu trên nhiều nền tảng để có thể truyền tải nhanh chóng. Với Blockchain, Sharding sẽ chia nhỏ mạng lưới thành nhiều mảnh. Mỗi mảng là một phần riêng biệt có trạng thái độc lập, có hợp đồng thông minh và dữ liệu về tài khoản riêng.

Vì vậy, công nghệ Sharding đã giảm bớt gánh nặng tính toán trên mỗi node. Từ đó, khối lượng giao dịch trên mạng lưới cũng nhanh hơn trước.

Công nghệ Sharding đã giảm bớt gánh nặng tính toán trên mỗi node

Hiện nay, mạng lưới Ethereum sở hữu TPS khá khiêm tốn chỉ khoảng 15 TPS. Khi Ethereum ngày càng phát triển, số lượng người dùng cũng tăng theo dẫn đến số lượng giao dịch thực hiện 15TPS/giây gây ra nghẽn mạng và tiêu tốn nhiều chi phí. Điều này khiến người dùng mất nhiều thời gian chờ đợi. Công nghệ Sharding được xem là giải pháp cho vấn đề trên.

2. Sharding giải quyết vấn đề gì?

Mạng lưới Blockchain có 3 đặc tính được gọi là “tam giác bất khả thi” khi chỉ có 2 trong số các vấn đề dưới đây của nền tảng được giải quyết:

  • Tính mở rộng cho đồng bộ: Blockchain có thể tiến hành nhiều giao dịch hơn so với khả năng xác minh của một node như thường lệ.
  • Tính phi tập trung: Blockchain có thể không cần phụ thuộc vào bất kỳ nhóm nhỏ hay những tác nhân tập trung nào mà vẫn chạy được.
  • Tính bảo mật: Blockchain có thể chống lại một phần trăm lớn tỷ lệ các node tham gia muốn tấn công vào mạng lưới.

3 đặc tính bất khả thi của Blockchain

Tuy nhiên, các giải pháp hiện nay chỉ đáp ứng được 2 trong 3 đặc tính của Blockchain. Cụ thể là:

  • Trước khi ứng dụng Sharding và PoS, Bitcoin hay Litecoin của Ethereum thường phụ thuộc vào việc người dùng chạy một node hoàn chỉnh để xác minh giao dịch nên có khả năng bảo mật và phân quyền. Tuy nhiên, mạng lưới thiếu khả năng mở rộng.
  • Những Blockchain có TPS cao, số lượng node nhỏ chỉ từ 10 đến 100, có thể duy trì sự đồng thuận lẫn nhau. Người dùng tham gia phải tin tưởng vào hầu hết các node này. Vì vậy, khả năng mở rộng và sự an toàn là có nhưng thiếu tính phi tập trung.
  • Hệ sinh thái Multi-Chain bao gồm nhiều ứng dụng khác nhau và những giao thức Cross-Chain sẽ giúp giao thức trao đổi lẫn nhau. Nhờ đó, mạng lưới có thể mở rộng và đảm bảo tính phi tập trung; nhưng lại thiếu tính an toàn. Các tin tặc chỉ cần tấn công dưới 1% toàn bộ hệ sinh thái là có thể phá vỡ Blockchain.

3. Công nghệ Sharding hoạt động như thế nào?

Công nghệ Sharding được Vitalik Buterin tạo ra nhằm khắc phục những nhược điểm trên, thông qua các hoạt động sau:

  • Phân đoạn một cơ sở dữ liệu lớn thành những mảnh nhỏ hơn có cùng định dạng. Từ đó chia sẻ các nguồn lực tính toán cho mạng lưới Blockchain. Hiện nay, Ethereum đang có hơn 8,200 node với cơ chế hoạt động duy trì liên tục, mỗi nốt trong mạng lưới đều xử lý mọi hoạt động.
  • Sharding sẽ tiến hành dịch chuyển mô hình trên thành mô hình xử lý song song. Mọi giao dịch được thực hiện song song và cùng lúc trên các node. Từ đó, khối lượng công việc được phân tán, giúp thông lượng giao dịch tăng. Các node sẽ chỉ tiến hành những hoạt động nhất định chứ không xử lý mọi hoạt động như mô hình cũ.
  • Công nghệ Sharding được thực hiện trên mạng lưới sử dụng cơ chế đồng thuận PoS – Proof of Stake. Các node sẽ tiến hành giao dịch dựa vào số lượng Token đã Stake. Sharding sẽ phân bổ cho người đã stake xử lý các mảnh khác nhau và những giao dịch trên mạng lưới.
  • Sharding không cho phép mạng lưới ứng dụng cơ chế đồng thuận Proof of Work. Bởi các node sẽ gặp khó khăn khi tiến hành xác thực giao dịch với lượng thông tin chỉ có trên một mảnh thay vì toàn mạng lưới. Sharding sẽ giúp các node chỉ cần lưu trữ dữ liệu liên quan đến mảnh của mình. Từ đó, mạng lưới có thể mở rộng quy mô.
  • Các node sẽ biết dữ liệu giao dịch này đã thực hiện hay chưa thông qua quá trình Shard Sharing. Đây là việc thông tin mỗi mảnh được chia sẻ cho các node và người tham gia có thể thấy các giao dịch mà không cần xử lý hay lưu trữ toàn bộ thông tin.

Sharding phân đoạn một cơ sở dữ liệu lớn thành những mảnh nhỏ hơn có cùng định dạng

Xem thêm: Solidity là gì? Những thông tin cần biết về Solidity

4. Những ưu nhược điểm của công nghệ Sharding

Công nghệ Sharding giúp mạng lưới Blockchain giải quyết được các vấn đề đang hạn chế tuy nhiên dự án cũng có một số nhược điểm cần khắc phục:

Ưu điểm:

  • Tăng khả năng mở rộng Blockchain.
  • Giảm thiểu gánh nặng cho việc lưu trữ và xử lý giao dịch cho các node.
  • Hoạt động tốt hơn với các Blockchain có ứng dụng cơ chế đồng thuận Proof of Stake.

Sharding tăng khả năng mở rộng Blockchain

Nhược điểm:

  • Gây khó khăn cho các ứng dụng và cơ sở dữ liệu nếu Sharding không đúng cách.
  • Hạn chế khi Blockchain ứng dụng cơ chế đồng thuận Proof of Work
  • Vấn đề về quyền riêng tư và bảo mật không rõ ràng khiến nhiều nhà đầu tư quan tâm.

Ngoài Sharding, cũng có nhiều cơ chế và công nghệ ứng dụng cho Layer-2 như State Channels hay Rollups. Những giải pháp này chủ yếu xử lý các giao dịch ngoài mạng lưới, tách biệt với cơ sở của Blockchain nhưng vẫn ứng dụng mô hình bảo mật phi tập trung của Blockchain chính. Plasma hay Sidechain cũng bảo mật tách biệt với mạng lưới cơ sở.

5. Vấn đề mở rộng Blockchain

Có hai cách để tăng thông lượng giao dịch của Blockchain là mở rộng theo chiều rộng (Vertical Scalability) và theo chiều ngang (Horizontal Scalability):

5.1 Mở rộng theo chiều rộng

Để thông lượng cao hơn thì Blockchain yêu cầu các node trong mạng phải cực kỳ mạnh mẽ, có thể xử lý nhanh và nhiều giao dịch hơn. Nghĩa là người dùng phải bỏ nhiều chi phí hơn cho phần cứng. Điều này không phù hợp với người dùng phổ thông. Dự án thích hợp với các cá nhân, tổ chức có tài chính vững chắc và có nền tảng kỹ thuật tốt.

Cả 2 nền tảng Solana và Internet Computer đã tiếp cận theo hướng này. Người dùng phổ thông không thể xác thực Blockchain trên phần cứng bình thường. Điều này không hẳn là xấu, bởi cách này phù hợp với một số ứng dụng nhất định yêu cầu hiệu suất cao và trạng thái nhất quán. Nhược điểm là làm cho quá trình xác thực giao dịch kém phân quyền.

Người dùng phổ thông không thể xác thực Blockchain trên phần cứng bình thường

5.2 Mở rộng theo chiều ngang

Mở rộng theo chiều ngang là cách phân chia hệ thống thành nhiều đoạn (Shards). Mỗi phân đoạn có nhiệm vụ thực hiện một tập hợp con trong tổng số công việc trên Blockchain. Mỗi Validator sẽ xác thực phân đoạn đơn đó và một số phân đoạn khác.

Điều này cho phép nhiều người dùng tham gia vào quá trình xác thực hơn, do các yêu cầu được giảm bớt cho mỗi phân đoạn. Tổng thể, cách mở rộng theo chiều ngang giữ cho việc xác thực giao dịch được phân quyền, nhưng vẫn mở rộng tổng thông lượng của hệ thống.

Mở rộng theo chiều ngang là cách phân chia hệ thống thành nhiều đoạn (Shards)

6. Các giải pháp mở rộng khác

Ngoài việc áp dụng Sharding, nhiều giải pháp Layer-2 khác cũng đã được sinh ra để giải quyết những đặc tính của Blockchain bao gồm Rollup và State Channels. Các công nghệ này cơ bản xử lý các giao dịch ngoài chuỗi (Off-Chain), tách riêng hoàn toàn với lớp cơ sở của mạng lưới nhưng vẫn tận dụng mô hình bảo mật phi tập trung của mạng lưới đó.

Ngoài ra, cũng có những giải pháp khác sở hữu cơ chế bảo mật tách riêng so với mạng lưới cơ sở như Sidechain và Plasma.

7. Vì sao Ethereum cần sharding?

Sharding có thể giúp chạy các node đầy đủ dễ dàng hơn. Theo nhà khai thác khối Etherscan, các node đầy đủ của Ethereum chiếm ít nhất 5 Terabyte không gian, gấp khoảng 10 lần so với sức chứa của một máy tính trung bình. Các node này sẽ chỉ phát triển lớn hơn và khó chạy hơn theo thời gian khi nhiều người dùng tham gia vào nền tảng hơn.

Sharding là một công nghệ phổ biến trong khoa học máy tính. Sharding được dùng cho việc mở rộng các ứng dụng để có thể hỗ trợ nhiều dữ liệu hơn. Nếu sharding được triển khai đúng cách trong Ethereum thì mỗi người dùng đều có thể lưu trữ một phần lịch sử các thay đổi đối với cơ sở dữ liệu. Đây là cách một Blockchain thường hoạt động.

Sharding là một công nghệ phổ biến trong khoa học máy tính

8. Tầm nhìn Ethereum 2.0 & Công nghệ Sharding là gì?

Vấn đề cốt lõi của Ethereum đặt ra là làm cách nào để có khả năng xử lý nhiều giao dịch hơn trên mỗi giây nhưng vẫn giữ được sự phân quyền và tính an toàn của mạng lưới. Đây là một vấn đề khó giải quyết vô cùng và các nhà phát triển Ethereum đã suy nghĩ về điều này trong nhiều năm.

Việc mở rộng hệ thống theo chiều ngang là giải pháp tốt nhất để giải quyết vấn đề trên. Sử dụng công nghệ Sharding - một nền tảng Smart Contract được phân mảnh tùy ý. Đây chính là tầm nhìn của Ethereum 2.0.

Ethereum 2.0 hướng đến Sharding để giải quyết các vấn đề về xử lý dữ liệu

Ethereum 2.0 là một trong những cách tiếp cận khá phức tạp để mở rộng quy mô cho Ethereum Network. Dự án đòi hỏi nhiều công sức thiết kế và thực hiện. Tuy nhiên, nếu được tiến hành thành công, Ethereum 2.0 sẽ có thể là một trong những cách hiệu quả nhất. Giao thức sẽ giúp tăng thông lượng giao dịch của Ethereum theo cấp độ lớn.

Sharding là một trong những công nghệ cốt lõi của Ethereum 2.0. Ở Ethereum 1.0, mỗi node chỉ lưu trữ một bản sao của toàn bộ Blockchain Ethereum. Bất kỳ khi nào mạng lưới được mở rộng, các node phải cập nhật. Điều này gây tiêu tốn băng thông và bộ nhớ của hệ thống.

Cấu trúc mạng lưới khi không sử dụng sharding và khi sử dụng sharding

Với Sharding, Ethereum sẽ được phân chia thành nhiều mảnh. Mỗi mảnh (Shard) sẽ xử lý các giao dịch và hợp đồng của riêng. Tuy nhiên, tổng thể các mảnh vẫn có thể giao tiếp qua lại với các phân đoạn khác. Do mọi mảnh xác thực độc lập nên không cần phải lưu trữ dữ liệu từ các Shard khác.

9. Những thách thức và rủi ro của Sharding là gì?

Sharding là giải pháp cho Scalability Trilemma, nhưng công nghệ này lại đem đến bài toán khác cho Ethereum và nhà phát triển. Do Sharding chia Ethereum thành nhiều mảnh. Mỗi mảnh làm một việc riêng, các giao thức DeFi có xu hướng tập trung trên cùng một mảnh để hưởng lợi ích từ sự phối hợp. Điều này dẫn đến sự gia tăng Gas Fee trên một số mảnh.

Những giao thức trên các mảnh khác nhau muốn giao tiếp với nhau sẽ phải sử dụng một số giao thức tương tác khác. Vì vậy, việc tương tác giữa hai giao thức trong cùng một mảnh sẽ phức tạp hơn. Chính vì thế trên một số mảnh (Shard) sẽ rất nhộn nhịp, giống như sự phân chia dân cư giữa thành thị và nông thôn.

Sharding sẽ chia Ethereum thành rất nhiều mảnh mỗi mảng đảm nhận một việc riêng

Bên cạnh đó, Sharding cũng có thể đem lại một số rủi ro tiềm ẩn cho mạng. Dự án cho phép Hacker phá hủy một hệ sinh thái đang phát triển mạnh mẽ chỉ bằng cách tấn công một mảnh bất kỳ trong mạng. Nếu mảnh đó bị hacker chiếm đoạt, sẽ gây ra hiệu ứng Domino gây ảnh hưởng tiêu cực đến giá Token, một lượng lớn người dùng và các node trên mảnh.

10. Phân loại công nghệ Sharding

Trong công nghệ Sharding, gia tăng sức mạnh tính toán đồng nghĩa với việc tăng số lượng phân đoạn của Blockchain. Sharding được sử dụng trên mạng Blockchain có thể được chia thành 3 loại như sau:

10.1 Network Sharding

Khi một khối được thêm vào, các giao thức cần phải giao tiếp với nhau để xác nhận tính hợp lệ của khối mới. Mặc dù điều này có thể đảm bảo tính chính xác của giao dịch, nhưng cũng dễ dẫn đến những thiếu sót liên quan đến cấu trúc Blockchain không thể thay thế được.

Do đó, bước đầu tiên của Sharding là chia nhỏ mạng lưới Blockchain, trên cơ sở giảm thiểu giao tiếp với nhau. Mỗi phân đoạn sẽ xử lý các giao dịch trên chuỗi. Các thợ đào đào được nhóm ngẫu nhiên và công việc sẽ được giao cho từng nhóm thợ đào để xác minh độc lập.

10.2 State Sharding

State Sharding có nghĩa là gán dữ liệu Blockchain cho các phân đoạn khác nhau. Nhờ đó, giảm gánh nặng lưu trữ của các node. So với hai cơ chế Sharding còn lại, việc phân bổ trạng thái cho các phân đoạn là khó nhất.

10.3 Transaction Sharding

Transaction Sharding giải quyết vấn đề các giao dịch nào sẽ được phân bổ cho các phân đoạn nào. Sau đó, sự khác biệt trong mô hình sổ cái của Blockchain sẽ tác động đến giao dịch Sharding.

Transaction Sharding giải quyết vấn đề các giao dịch nào sẽ được phân bổ cho các phân đoạn nào

Xem thêm: Lending là gì? Tìm hiểu về Lending trong Crypto từ A-Z

11. Tương lai của Sharding là gì?

Tương lai của công nghệ Sharding khá tươi sáng. Một loạt các dự án đáng tin cậy đã thực hiện và đang sử dụng Sharding. Một trong những nền tảng đầu tiên ứng dụng Sharding là Zilliqa. Trong giai đoạn Testnet, mạng lưới Zilliqa có thể đạt hơn 2.800 giao dịch mỗi giây.

Mạng Cardano gần đây đã phát hành giải pháp có khả năng mở rộng có tên là giao thức Hydra. Mỗi mảnh của giao thức Hydra có thể xử lý khoảng 1 ngàn TPS. Kết quả là, blockchain Cardano có khả năng đạt được thông lượng giao dịch là 1 triệu giao dịch mỗi giây.

Mạng Cardano phát hành giải pháp khả năng mở rộng có tên là giao thức Hydra

Ethereum 2.0, Facebook’s Libra, mạng mở Telegram nổi tiếng cùng nhiều dự án đáng chú ý khác đang làm việc chăm chỉ để mang lại tương lai cho ngày hôm nay. Sharding là một phần quan trọng trong tương lai của các dự án.

12. Công nghệ Sharding giúp gì cho Blockchain

Việc triển khai Sharding trong Blockchain được áp dụng hàng loạt có thể sẽ trở thành hiện thực. Bởi công nghệ phi tập trung quá phức tạp đối với người dùng phổ thông. Vì thế, các nhà phát triển Blockchain luôn cố gắng hết sức để đưa các giải pháp công nghệ phức tạp vào hình thức thân thiện với người dùng.

Nhờ đó, các ứng dụng phi tập trung (dApps) trông tự nhiên và khá đơn giản với người dùng khi trải nghiệm trực quan. Tuy nhiên, một trong những trở ngại lớn trên con đường áp dụng hàng loạt là tốc độ giao dịch tốn rất nhiều thời gian.

Khi được triển khai trong một Blockchain, công nghệ Sharding sẽ phân tán tải mạng giữa các phân đoạn. Do đó, tốc độ giao dịch có thể tăng mạnh, mang lại thông lượng tốt hơn và thu hút người dùng mới.

Sharding có tiềm năng tăng tốc độ giao dịch, thu hút người dùng mới

Ethereum 2.0 được chờ đợi sẽ giải quyết các vấn đề về khả năng mở rộng bằng cách triển khai giải pháp Sharding vào mạng. Blockchain Ethereum cũng có kế hoạch chuyển sang giao thức đồng thuận PoS để giúp việc triển khai Sharding trở nên khả thi và hiệu quả.

Ethereum 2.0 bao gồm 64 phân đoạn bằng nhau và có thể xử lý các giao dịch đồng thời. Tất cả 64 mảnh được gắn chặt vào chuỗi chính tạo thành cây Merkle. Bằng cách dàn trải giữa các phân đoạn, Ethereum 2.0 sẽ có khả năng thực hiện đến 100.000 giao dịch mỗi giây.

13. Công nghệ Sharding - giải pháp cho bài toán Scalability

Sharding Blockchain là gì? Sharding là phân vùng, tách các cơ sở dữ liệu lớn thành các phần nhỏ hơn, nhanh hơn được gọi là Shard. Một Shard chỉ là một phần nhỏ của một phân vùng lớn hơn.

Mạng lưới Ethereum sẽ bị chia thành hàng ngàn các Shard. Cộng đồng Ethereum đang cố gắng bỏ đi yêu cầu là các giao dịch phải được kiểm tra bằng tất cả các node trên toàn hệ thống khi thực hiện Sharding. Khi đó, Sharding sẽ cho phép hàng nghìn giao dịch mỗi giây mà không cần qua tất cả các node. Điều này sẽ làm giảm đáng kể kích thước tổng thể.

Vì các nút có sự phụ thuộc hơn là độc lập nên tính bảo mật không được chắc chắn. Đây là sự hy sinh tính bảo mật để tăng khả năng mở rộng cho mạng lưới. Khi một node cụ thể yêu cầu thông tin không được lưu trữ trong Shard riêng thì giao thức sẽ tìm thông tin ở các khối khác. Đây là cơ chế để các Shard trao đổi thông tin với nhau.

Sharding là phân vùng, tách các cơ sở dữ liệu lớn thành các phần nhỏ hơn, nhanh hơn

Sharding là một cách tiếp cận rất khả thi để giải quyết vấn đề về khả năng mở rộng Blockchain. Tuy nhiên, công nghệ này không phải không có nhược điểm. Do cấu trúc của Shard, giao thức có thể dễ dàng bị mất đi tính Security của Blockchain. Đây cũng là một trong những lý do thúc đẩy Ethereum chuyển sang cơ chế Proof-Of-Stake.

Những bài viết liên quan:

Bài viết đã cung cấp cho bạn những thông tin hữu ích về Sharding là gì. Công nghệ này đang là một ứng dụng mới cho việc mở rộng Blockchain hiện nay. Hãy theo dõi BHO Network để cập nhật thêm những tin tức mới nhất của nền tảng này trong tương lai nhé!

Xuất bản ngày 11 tháng 8 năm 2022

Chủ đề liên quan

share iconShare
wallet_3s_desktop_vi
wallet_3s_mobile_vi
reward_now_float_cta