EKSTRAK

STRUKTUR DATABASE

Ketika seorang pengguna ingin menambahkan data ke database; ia menciptakan unit penyimpanan baru dan menyiarkannya ke teman-temannya. Unit penyimpanan mencakup (antara lain):

  • • Data yang akan disimpan. Suatu unit dapat menyertakan lebih dari satu paket data yang disebut pesan. Ada banyak jenis pesan yang berbeda, masing-masing dengan strukturnya sendiri. Salah satu jenis pesan adalah pembayaran, yang digunakan untuk mengirim byte atau aset lain kepada rekan-rekan.
  • • Tanda tangan (s) dari satu atau lebih pengguna yang menciptakan unit. Pengguna diidentifikasi oleh alamat mereka. Pengguna individu dapat (dan didorong untuk) memiliki banyak alamat, seperti di Bitcoin. Dalam kasus yang paling sederhana, alamat berasal dari kunci publik, lagi-lagi mirip dengan Bitcoin.
  • • Referensi ke satu atau lebih unit sebelumnya (orang tua) yang diidentifikasi oleh hash mereka.

Referensi untuk orang tua adalah apa yang membentuk urutan (hanya sebagian pesanan sejauh ini) unit dan generalisasi struktur rantai blok. Karena kita tidak terbatas pada satu hubungan orangtua-satu-anak antara blok yang berurutan, kita tidak harus berusaha untuk mendekati sinkroni dan dapat dengan aman mentoleransi latensi besar dan throughput yang tinggi: kita hanya akan memiliki lebih banyak orang tua per unit dan lebih banyak anak per satuan. Jika kita maju dalam sejarah di sepanjang hubungan orang tua-anak, kita akan mengamati banyak garpu ketika unit yang sama direferensikan oleh beberapa unit kemudian dan banyak gabungan ketika unit yang sama mereferensikan beberapa unit sebelumnya (pengembang sudah terbiasa melihat ini dalam git) . 

Struktur ini dikenal dalam teori graf sebagai grafik asiklik diarahkan. Unit adalah simpul, dan tautan orang tua-anak adalah tepi grafik.



Seperti dalam rantai blok di mana setiap blok baru mengonfirmasi semua blok sebelumnya (dan transaksi di dalamnya), setiap unit anak baru di BIC mengonfirmasi orang tuanya, semua orang tua dari orang tua, orang tua dari orang tua orang tua, dll. Jika seseorang mencoba mengedit unit, dia juga harus mengubah hashnya. 

Mau tidak mau, ini akan menghancurkan semua unit anak yang mereferensikan unit ini dengan hashnya karena tanda tangan dan hash anak-anak bergantung pada hash induk. Oleh karena itu, tidak mungkin merevisi unit tanpa bekerja sama dengan semua anak-anaknya atau mencuri kunci pribadi mereka. Anak-anak, pada gilirannya, tidak dapat merevisi unit mereka tanpa bekerja sama dengan anak-anak mereka (cucu dari unit asli), dan seterusnya. Setelah sebuah unit disiarkan ke dalam jaringan, dan pengguna lain mulai membangun unit mereka di atasnya (referensi sebagai orang tua), jumlah revisi sekunder yang diperlukan untuk mengedit unit ini maka tumbuh seperti bola salju. Itu sebabnya kami menyebutnya desain Byteball (kepingan salju kami adalah byte data).

Tidak seperti blockchain di mana menerbitkan blok adalah peristiwa yang jarang terjadi dan hanya kasta pengguna yang istimewa yang dalam prakteknya terlibat dalam kegiatan ini, dalam unit BIC yang baru mulai mengumpulkan konfirmasi segera setelah dirilis dan konfirmasi dapat datang dari siapa saja, setiap kali baru lain unit dikeluarkan. Tidak ada sistem dua tingkat dari pengguna dan penambang biasa. Sebaliknya, pengguna saling membantu: dengan menambahkan unit baru, pembuatnya juga menegaskan semua unit sebelumnya.

Tidak seperti Bitcoin, di mana upaya untuk merevisi transaksi sebelumnya membutuhkan upaya komputasi yang besar, upaya untuk memperbaiki catatan masa lalu di Byteball memerlukan koordinasi dengan sejumlah besar pengguna lainnya, kebanyakan dari mereka adalah orang asing anonim. Oleh karena itu, kekekalan catatan masa lalu didasarkan pada rumitnya koordinasi dengan sejumlah besar orang asing, yang sulit dijangkau, tidak tertarik dalam kerja sama, dan di mana setiap orang dari mereka dapat memveto revisi.

Dengan mereferensikan orang tuanya, sebuah unit termasuk orang tua. Ini tidak termasuk konten lengkap dari orang tua; sebaliknya, itu tergantung pada informasinya melalui hash orang tua. Dengan cara yang sama, unit secara tidak langsung bergantung pada dan karena itu termasuk orang tua dari orang tua, orang tua mereka, dan seterusnya, dan setiap unit pada akhirnya termasuk unit asal.

Ada aturan protokol bahwa unit tidak dapat mereferensikan orang tua yang berlebihan - yaitu orang tua seperti itu yang orang tuanya termasuk yang lain. Sebagai contoh, jika unit B mereferensi unit A, maka unit C tidak dapat mereferensikan kedua unit A dan B pada saat yang bersamaan. A sudah, dengan cara, terkandung dalam B. Aturan ini menghapus tautan yang tidak diperlukan yang tidak menambahkan konektivitas berguna baru ke grafik.

Terima kasih atas perhatiannya semoga apa yang saya sampaikan dapat bermanfaat bagi kawan kawan.


Eth: 0x5F53C937FD1cc13c75B12Db84F61cbE58A4a255e

Informasi lengkap


Komentar

Postingan Populer