Akan selalu ada banyak kebingungan tentang database dan blockchain. Blockchain sebenarnya adalah sejenis database, karena ini adalah buku besar digital dan menyimpan informasi tentang struktur data blok tersebut. Struktur penyimpanan informasi dalam database disebut tabel. Namun, blockchain adalah database, dan database tersebut bukanlah blockchain. Meskipun mereka semua menyimpan informasi, desain mereka sangat berbeda, sehingga tidak dapat dipertukarkan. Selain itu, tujuan keduanya juga berbeda, jadi bagi banyak orang, mereka tidak begitu jelas mengapa blockchain dibutuhkan dan mengapa database lebih cocok untuk menyimpan data tertentu. Pertama, mari kita lihat perbedaan antara database dan blockchain.
database
Database tradisional adalah struktur data yang digunakan untuk menyimpan informasi. Ini berisi data yang diperlukan untuk menghasilkan laporan yang mendukung berbagai keputusan bisnis, keuangan dan manajemen. Pemerintah juga menggunakan database untuk menyimpan data berukuran besar, yang bisa memiliki jutaan record. Mulai dari sistem klasifikasi file, database menyediakan fungsi akuisisi dan penyimpanan informasi paling dasar. Kemudian, database menggunakan model terkait, dan dengan menghubungkan beberapa database, data dapat diperoleh dengan cara yang lebih kompleks. Informasi yang disimpan dalam database dapat dikelola dengan menggunakan sistem manajemen. Database sederhana disimpan dalam baris dan kolom data, yang disebut tabel. Tabel berisi bidang yang berbeda untuk menentukan jenis catatan yang berbeda, dan data yang disimpan disebut atribut. Setiap bidang berisi kolom dan garis, mewakili catatan yang disimpan.
Basis data dapat dimodifikasi, dikelola, dan dikontrol oleh administrator. Akan selalu ada administrator dalam database dan dapat mengontrol database sepenuhnya. Mereka dapat membuat, menghapus, dan mengubah catatan apa pun dalam database. Mereka dapat mengoptimalkan kinerja dan ukuran database. Database yang lebih besar akan memiliki kinerja yang lebih lambat, sehingga administrator dapat menggunakan metode untuk mengoptimalkannya. Administrator juga dapat mentransfer identitas ini kepada orang lain. Misalnya, administrator dapat mentransfer identitas ke pengguna lain dan membiarkan mereka mencadangkan database. Namun, akan ada masalah, misalnya jika server dilintasi, satu-satunya cara adalah memulihkan dari cadangan. Basis data juga bersifat rekursif, yang berarti Anda dapat kembali dan mengulangi tugas, atau menghapus tugas. Jika informasi telah dicadangkan, administrator akan menghapus catatan sebelumnya dan informasi kadaluwarsa lainnya. Misalnya, Anda telah menulis "John Smith" di database saat ini, dan sekarang Anda perlu memperbarui alamat Anda. Tapi sekarang sudah ada backup dari "John Smith", jadi Anda bisa memperbaruinya dengan alamat baru dari database yang ada.
Basis data dapat diimplementasikan melalui arsitektur server. Ini karena komputer perlu terhubung ke server, dan mereka mengelola database sehingga mereka dapat memperoleh informasi dan data yang disimpan. Awalnya, klien database menggunakan ODBC untuk menyambungkan, yang ditetapkan oleh administrator, lalu tersambung ke database. Perangkat lunak klien kemudian akan berjalan untuk menyelesaikan koneksi terenkripsi, tetapi Anda harus memiliki izin untuk masuk. Otoritas ini dapat diatur oleh administrator, atau pengguna dapat masuk dengan kata sandi. Inilah sebabnya mengapa akun pengguna dibuat untuk memungkinkan pengguna yang diautentikasi masuk, sementara menolak mereka yang tidak diautentikasi. Sebagian besar sistem sekarang menggunakan antarmuka web. Tetapi untuk informasi pribadi, otentikasi masih diperlukan, tetapi database publik dapat dengan mudah diakses melalui web.
Kita dapat melihat bahwa database membutuhkan kontrol yang memadai, yang membuatnya sangat tersentralisasi. Pada saat yang sama, ini juga perlu diizinkan, yang berarti administrator perlu menyetel cara mengizinkan pengguna untuk masuk. Dalam lingkungan produksi, administrator DB perlu menyetel izin hanya-baca, dan mereka juga perlu menyetel izin pembaruan dan tulis untuk pengguna. Sentralisasi database tradisional akan memastikan keamanan dan kepercayaan sistem. Banyak database akan berjalan di bawah jaringan pribadi, sementara di belakang firewall perusahaan besar. Basis data lain didasarkan pada server cloud. Tapi mereka masih membutuhkan administrator untuk mengontrolnya.
Blockchain
Untuk deskripsi blockchain, kami memikirkan Bitcoin. Tetapi ada juga banyak rantai pribadi yang beroperasi di lingkungan perusahaan. Blockchain lahir pada tahun 2009, dan Bitcoin adalah sistem pertama yang didasarkan padanya. Dalam sistem Bitcoin, blockchain adalah buku besar digital yang tidak dapat diubah, dan itu juga merupakan basis data terdistribusi terenkripsi yang berkembang. Blockchain akan menyimpan informasi dalam blok dengan ukuran yang sama. Setiap blok akan berisi informasi hash dari blok sebelumnya, sehingga memberikan keamanan enkripsi. Informasi dari hash ini adalah data dan tanda tangan di blok sebelumnya, dan hash dari blok sebelumnya akan kembali ke blok pertama dari blockchain, yang disebut "Genesis Block". Seluruh informasi akan melewati hash dan mengarah ke alamat blok berikutnya. Struktur data Blockchain, seperti pohon Merkel, adalah metode verifikasi data yang sangat efektif.
Agar blok ditambahkan ke blockchain, teori permainan disertakan dalam seluruh proses. Komputer sebagai node dalam jaringan disebut "penambang" dan harus bersaing untuk menemukan nilai yang benar dari nonce. Penambang harus menggunakan sumber daya komputasi untuk menyelesaikan nilai ini, dan ini juga membutuhkan perangkat keras komputer. Protokol built-in dari blockchain dapat menggunakan kekuatan komputasi dari seluruh jaringan untuk menentukan kesulitan dalam memecahkan masalah. Artinya, semakin banyak penambang, semakin sulit menyelesaikan masalah. Ini karena jika ada lebih banyak penambang, akan ada lebih banyak sumber daya komputasi di jaringan dan pada saat yang sama meningkatkan daya hash, yaitu h / s. Setelah penambang memverifikasi blok tersebut, mereka akan diberi imbalan karena menyediakan daya komputasi. Bagian dari insentif ini adalah motivasi untuk mendorong node untuk menambang, karena mereka akan menerima biaya transaksi dan token. Dalam Bitcoin, ini juga disebut algoritma bukti kerja.
Seperti yang telah kita lihat, blockchain menggunakan jaringan terdistribusi yang terdesentralisasi. Desentralisasi berarti bahwa semua node di jaringan akan menyimpan cadangan dari blockchain. Node menyimpan cadangan dari node penuh, atau menambang, atau keduanya dapat melakukannya. Tidak ada administrator yang memverifikasi transfer blok. Anda membutuhkan penambang yang dapat memecahkan masalah enkripsi, tetapi ini didasarkan pada persentase daya komputasi seluruh jaringan. Setelah blok ditambahkan ke rantai, informasi ini tidak dapat diubah dan transparan. Transfer blockchain tidak dapat diubah, yang juga berarti bahwa setelah blok diverifikasi, mereka tidak dapat digunakan kembali. Blockchain toleran terhadap kesalahan, karena jika satu atau lebih node turun, akan selalu ada node lain yang menjalankan blockchain. Keuntungan lain dari desentralisasi dapat memberikan transparansi kepada mereka yang tidak tahu atau percaya. Blockchain akan meningkatkan kepercayaan dengan merekam transfer dan menyediakan enkripsi dan algoritma keamanan untuk memperdagangkan data.
Blockchain adalah arsitektur jaringan P2P. Ini tidak membutuhkan database terpusat, tetapi semua node dalam jaringan terhubung satu sama lain. Oleh karena itu, tidak ada yang bisa mengontrol semua node. Tidak ada administrator yang diperlukan di blockchain. Bagaimana jika seseorang menipu di node? Apakah ini akan memengaruhi seluruh jaringan? Jawaban teoritisnya adalah jika mereka mendapatkan daya komputasi paling banyak, maka itu mungkin. Secara teori, jika seseorang dapat mengontrol 51% daya komputasi, mereka dapat mengontrol jaringan. Ini membutuhkan banyak sumber daya komputasi, sehingga serangannya sangat mahal. Menguntungkan menggunakan sumber daya komputasi untuk menambang. Inti dari memastikan keamanan blockchain adalah desentralisasi.Jika seseorang ingin mengubah informasi apa pun di blockchain, mereka membutuhkan bantuan orang lain untuk memverifikasinya. Ini akan memisahkan rantai baru dari rantai utama, dan hanya akan efektif jika lebih panjang dari rantai utama. Mirip dengan Bitcoin, ada ribuan node, jadi jika diperlukan penipuan, semua node di jaringan perlu diubah. Padahal, hal ini membutuhkan banyak perhitungan dan tenaga, dan juga sangat sulit untuk diselesaikan. Ini adalah cara pengawasan untuk memastikan tidak ada yang bisa menipu siapa pun. Inilah mengapa blockchain tidak dapat diubah. Pada saat yang sama, karena informasi transfer dapat dilihat oleh siapa saja, juga transparan.
Inilah perbedaan antara blockchain dan database dalam arsitektur yang mendasarinya.
Blockchain dan database, kapan sebaiknya digunakan?
Basis data lebih cocok untuk jaringan perusahaan karena stabilitasnya yang baik. Mereka juga lebih ramah pengguna, dan ada banyak sistem manajemen pendukung untuk administrator dan pengembang. 500 perusahaan teratas Forbes semuanya menggunakan database untuk menjalankan sistem kelas atas untuk memproses data dalam jumlah besar. Basis data dapat diperluas menjadi beberapa juta catatan, dan dapat menangani ribuan transfer per detik. Untuk menangani lalu lintas dalam jumlah besar, seperti ritel, database adalah solusi terbaik. Blockchain tidak perlu menyimpan banyak pemrosesan untuk analisis, database dapat menyimpan lebih banyak data, dan karena tidak memerlukan node, kecepatan pemrosesan juga lebih cepat. Anda juga tidak perlu mengenkripsi setiap data. Umumnya database tidak dienkripsi, karena enkripsi akan menambah banyak redundansi ke database. Database tradisional akan meningkatkan enkripsi melalui otorisasi.
Data tidak terstruktur adalah tempat lain di mana blockchain tidak diperlukan. Ini lebih cocok untuk sistem manajemen basis data. Data tersebut tidak memerlukan verifikasi kepercayaan, sama seperti data harian toko akan dicatat di database. Jika blockchain digunakan untuk menyimpan informasi pribadi, biayanya akan tinggi. Informasi yang hanya diketahui perusahaan tertentu, seperti jaminan sosial dan rekam medis, disimpan dalam database. Informasi yang dapat digunakan melalui sistem verifikasi publik dapat didasarkan pada blockchain. Informasi pribadi ini dapat diautentikasi di blockchain berdasarkan algoritma enkripsi kunci publik.
Basis data cocok untuk:
Data yang perlu terus diperbarui, seperti pemantauan dan sensor
Proses transfer online yang cepat
Informasi pribadi (tidak terbuka untuk umum)
Data keuangan yang perlu diproses dengan cepat
Data yang tidak membutuhkan verifikasi
Aplikasi untuk menyimpan data
Data relasional
Kebutuhan blockchain adalah untuk membangun kepercayaan dan transparansi. Sederhananya, ini adalah buku besar publik yang memungkinkan siapa pun mendapatkan informasi. Ini dapat membantu transfer B2B, seperti rantai pasokan, distribusi produk, dan inventaris untuk memverifikasi informasi. Transparansi dapat membantu perusahaan seperti industri periklanan untuk meminimalkan penipuan dengan membuat lebih banyak verifikasi perusahaan periklanan. Blockchain tidak berarti bahwa catatan data yang besar akan memiliki lebih banyak verifikasi informasi. Bitcoin adalah penerapan blockchain pertama yang berhasil, dan ini juga merupakan sistem untuk transfer nilai dan verifikasi transfer pembayaran. Keberhasilan Bitcoin juga menimbulkan masalah pengeluaran ganda, yang memungkinkan pengguna membelanjakan dua kali untuk token yang sama. Bitcoin menggunakan urutan cap waktu untuk memverifikasi transfer. Hal ini memungkinkan sistem untuk memproses transfer pada waktu yang sama untuk mencegah pengeluaran ganda, yang akan dilakukan secara kronologis.
Beberapa proyek sedang mempelajari sistem izin blockchain dan menerapkannya ke sistem pemungutan suara. Karena blockchain dapat memverifikasi identitas dan siapa yang akan memilih, ini sangat masuk akal. Tujuan utamanya adalah untuk mencegah penipuan, sehingga blockchain dapat menjamin keadilan kepercayaan.Beberapa blockchain tidak memerlukan mata uang digital atau penambangan, seperti blockchain tingkat perusahaan. Dalam lingkungan pribadi dan diizinkan, penggunaan teknologi blockchain dapat memiliki level sistem yang baru, dan terkadang berintegrasi dengan database untuk menyelesaikan sistem hybrid.
Administrator database akan menemukan bahwa blockchain tidak relevan. Anda tidak dapat membuat koneksi antara blockchain yang berbeda dan data terkait. Inilah perbedaan utama antara keduanya, jadi ketika informasi membutuhkan relevansi, blockchain tidak cocok untuk ini.
Aplikasi blockchain lainnya, seperti kontrak pintar di Ethereum. Ini lebih seperti proses penyimpanan database, di mana pemicu dapat digunakan untuk mengeksekusi kode untuk memproses transfer. Di jaringan Ethereum, kontrak pintar akan menjalankan kode di semua node di jaringan. Ethereum dan mata uang digital lainnya, seperti EOS dan NEO, akan menggunakan blockchain sebagai ekosistem kontrak pintar mereka. Ini adalah kasus membedakan antara blockchain dan database tradisional.
Blockchain cocok untuk:
Pengiriman dana
Transfer nilai
Verifikasi data tepercaya (identitas, reputasi, kredit, dll.)
Verifikasi kunci publik
APP Terdesentralisasi
Sistem pemungutan suara
Ada banyak hal yang perlu dibahas tentang blockchain dan database. Kami hanya menemukan beberapa situasi ini dari perspektif teknis. Faktanya, tidak ada database dan blockchain yang lebih baik dari yang lain. Mereka semua memiliki tujuan mereka sendiri dan memilih solusi yang berbeda berdasarkan bagaimana Anda ingin memproses data.
Sumber: Beifeng.com
- Apa yang harus saya lakukan jika saya tidak bisa mengemudi setelah minum? Lakukan seperti ini: Anda menelepon saya untuk membayarnya!
- Angin laut berangsur-angsur menjadi menawan, dan hanya sekelompok kecil orang yang bisa menjemput pria