JavaScript Object Notation (JSON) adalah format file berbasis teks ringan yang mirip dengan YAML atau XML yang menyederhanakan pertukaran data. Itu ditemukan oleh Douglas Crockford pada awal 2000-an dan menjadi semakin populer dengan munculnya database berbasis dokumen (juga disebut NoSQL). Show JSON mendukung string, angka, boolean, objek, dan array serta nilai null. Contoh JSON sederhana yang berisi key-value pair, objek JSON
MySQL telah mengimplementasikan dukungan dasar untuk tipe data JSON dengan versi 5. 7. 8 pada pertengahan 2015 dan telah menambahkan peningkatan dan fitur baru sejak saat itu. Tujuh tahun kemudian, MySQL sekarang mendukung banyak fungsi SQL untuk bekerja dengan dokumen JSON, menyediakan validasi konten otomatis, memungkinkan pembaruan sebagian di tempat, dan menggunakan format penyimpanan biner untuk meningkatkan kinerja Database relasional mengikuti struktur yang telah ditentukan dan menekankan pada kohesi dan integritas data. Untuk mencapai ini, tipe dan format datanya, serta ukuran datanya, semuanya ditegakkan secara ketat melalui skema. Tipe data JSON sedikit anti-pola terhadap sifat ketat dari skema semacam itu. Ini memungkinkan Anda untuk keluar darinya, untuk mendapatkan fleksibilitas saat Anda membutuhkannya. Dan itu terbukti bermanfaat selama Anda mengetahui kompromi yang dijelaskan di bagian selanjutnya Beberapa contoh kapan mungkin bermanfaat untuk menyimpan data sebagai dokumen JSON adalah
Anda juga dapat menggunakan dokumen JSON dalam desain database relasional untuk memecah relasi kompleks yang mencakup beberapa tabel. Proses ini disebut denormalisasi, yang merupakan anti-pola basis data relasional lainnya. Namun, dalam kasus tertentu, ini dapat menghasilkan peningkatan kinerja tergantung pada kasus penggunaan dan desain aplikasi Anda Fleksibilitas yang diberikan oleh tipe data JSON hadir dengan beberapa peringatan yang perlu Anda ketahui Terutama, Anda perlu mempertimbangkan bahwa dokumen JSON sering kali membutuhkan lebih banyak kapasitas penyimpanan. Di MySQL, jejak penyimpanannya mirip dengan tipe data 1 atau 2. Ada overhead, karena pengkodean biner dan tambahan metadata dan kamus yang ada untuk mempercepat pembacaan basis data. Aturan praktis yang baik adalah bahwa string yang disimpan di JSON menggunakan sekitar 4 hingga 10 byte penyimpanan tambahan dibandingkan dengan kolom 1 atau 2Jika Anda ingin mengoptimalkan skema database Anda untuk efisiensi penyimpanan, yang terbaik adalah menggunakan tipe data MySQL yang lebih tradisional ( 5, 6, 7, dan sejenisnya), karena semuanya lebih hemat penyimpanan daripada JSON yang mungkin pernah adaPeringatan lain yang harus diperhatikan adalah dampak kinerja. Mirip dengan format biner lainnya, dokumen JSON tidak dapat diindeks secara langsung. Ini, dan jumlah variabel data yang dapat Anda simpan dalam dokumen JSON, berarti bahwa meminta kolom JSON sering kali menggunakan lebih banyak ruang buffer dan mengembalikan kumpulan hasil yang lebih besar, yang mengarah ke lebih banyak pertukaran data
Meskipun dokumen JSON yang disimpan di MySQL dapat berukuran hingga 1 GB, secara teori, disarankan untuk menyimpan dokumen JSON dengan ukuran hanya beberapa MB. Di PlanetScale, kami mendukung dokumen JSON hingga 67 MB MySQL hadir dengan serangkaian fungsi JSON yang kuat yang memungkinkan Anda membuat, memperbarui, membaca, atau memvalidasi dokumen JSON Anda. PlanetScale mendukung semua fungsi JSON kecuali 8Mari kita telusuri beberapa contoh bersama Pertama, kita membuat tabel dengan kolom _9 dan 0SQL _Tabel kosong membutuhkan data, jadi mari gunakan 1 untuk menambahkan beberapaSQL
Bagaimana kita tahu ini adalah array? SQL
Jika kita ingin mengekstrak item dari array, kita dapat melakukannya dengan 3. Dalam contoh di bawah ini, kami mengekstrak elemen keempat dari arraySQL
Kita juga dapat menggunakan _4, yang setara dengan operator untuk 3SQL
Jika kita membutuhkan hasil yang tidak dikutip, kita dapat menggunakan 6, yang merupakan kependekan dari 7SQL
Jika kita perlu menambahkan data ke array JSON, kita dapat menggunakan 8 atau 9 untuk memperbaruinyaSQL
Untuk informasi selengkapnya tentang cara menggunakan semua fungsi JSON yang berbeda, silakan lihat dokumentasi MySQL untuk tipe data JSON dan referensi Fungsi JSON Haruskah Anda menggunakan JSON di MySQL?Jika Anda memiliki persyaratan data relasional yang jelas, gunakan bidang nilai tunggal yang sesuai. JSON harus digunakan dengan hemat sebagai upaya terakhir . Bidang nilai JSON tidak dapat diindeks, jadi hindari menggunakannya pada kolom yang diperbarui atau dicari secara rutin.
Apakah baik menyimpan JSON di database SQL?Kesimpulan. Fungsi Native JSON di SQL Server dan SQL Database memungkinkan Anda memproses dokumen JSON seperti di database NoSQL. Setiap basis data - relasional atau NoSQL - memiliki beberapa pro dan kontra untuk pemrosesan data JSON. Manfaat utama menyimpan dokumen JSON di SQL Server atau SQL Database adalah dukungan bahasa SQL penuh .
Apakah baik menggunakan JSON di basis data?Database JSON memungkinkan untuk menyimpan data sebagai JSON dan memberikannya ke aplikasi dalam bentuk lain . Misalnya, ini dapat beroperasi sebagai penyimpanan nilai kunci dalam memori untuk aplikasi yang hanya membutuhkan akses cepat dan mudah. Atau, pengindeksan dan kueri dapat membuat data JSON muncul sebagai tabel.
Apa kekurangan JSON di MySQL?Kekurangannya? . Kekurangan lainnya adalah MySQL tidak mendukung pengindeksan kolom JSON , yang berarti bahwa menelusuri dokumen JSON Anda dapat menghasilkan pemindaian tabel lengkap. |