Cara Kerja Sharding
Dalam desain sharding, tanggung jawab jaringan dibagi sehingga setiap partisipan hanya perlu menangani sebagian dari total beban. Bergantung pada desainnya, shard dapat membagi penyimpanan data, eksekusi transaksi, atau keduanya.
Proposal sharding Ethereum di awal berfokus pada banyak shard chain, di mana eksekusi smart contract dapat berlangsung di berbagai shard (sering disebut execution sharding). Pendekatan ini meningkatkan throughput dengan memparalelkan komputasi, tetapi juga menimbulkan kompleksitas dalam komunikasi antar-shard dan keamanan.
Peta jalan Ethereum berkembang seiring rollup menjadi cara utama untuk menskalakan eksekusi. Alih-alih menskalakan L1 dengan menjalankan banyak eksekusi smart contract secara paralel di berbagai shard, Ethereum kini semakin berfokus pada penskalaan data availability (DA), yakni membuat proses publikasi data transaksi oleh rollup menjadi murah dan dapat diverifikasi, sehingga verifikasi independen dapat dilakukan.
Langkah penting di antaranya adalah proto-danksharding (EIP-4844), yang menambahkan data blob sementara ke dalam blok. Blob lebih murah daripada memublikasikan data rollup sebagai calldata, tidak dapat dibaca oleh EVM, dan dihapus setelah periode retensi (sekitar 18 hari), sehingga membatasi pertumbuhan penyimpanan node dalam jangka panjang.
Selain itu, Ethereum juga menggunakan bentuk "sharded consensus": validator dibagi ke dalam komite sehingga setiap validator hanya memproses sebagian attestation, menjaga beban konsensus tetap terkendali seiring bertambahnya jumlah validator.
Contoh
Jika jalan satu lajur ibarat satu blockchain di mana setiap node menangani setiap transaksi, maka sharding seperti menambah beberapa lajur sehingga lalu lintas (beban kerja) dapat bergerak secara paralel.
Mengapa Penting
Sharding bertujuan meningkatkan kapasitas tanpa memaksa setiap node mengerjakan semua tugas, sehingga membantu menjaga desentralisasi. Di Ethereum saat ini, "sharding" sebagian besar berarti data availability yang lebih murah dan skalabel untuk rollup, yang sering berujung pada biaya L2 yang lebih rendah dan throughput ekosistem yang lebih tinggi.
Risiko atau Keterbatasan
"Sharding" bisa disalahpahami: istilah ini tidak otomatis berarti smart contract L1 mendapat throughput lebih besar, terutama di Ethereum yang penskalaan eksekusinya sebagian besar ditangani oleh rollup. Data blob bersifat sementara sejak awal, sehingga rollup dan pihak ketiga yang memantau harus mengunduh dan menyimpan data yang mereka perlukan sebelum dihapus. DA masih dapat mengalami kepadatan, dan desain yang lebih berpusat pada builder dapat menimbulkan kekhawatiran sentralisasi jika kebutuhan perangkat keras untuk pembuatan bukti sangat tinggi.
Istilah Terkait
- Rollup
- Data Availability
- Proto-Danksharding (EIP-4844)
- Danksharding
- Calldata