Itu tergantung pada apa yang Anda maksud ketika Anda mengatakan "tipe data". Beberapa database seperti PostgreSQL, memiliki tipe data JSON yang memungkinkan pencarian teks lengkap, mekanisme penyimpanan biner, pengindeksan, dan rangkaian lengkap operator untuk mengakses data. Maria belum memilikinya. Tipe data secara khusus dilacak oleh MDEV-9144 .
Meskipun begitu, membawa tipe yang sangat terbatas ke MySQL, dari salah satu pengelola bug,
Tipe data JSON secara langsung bertentangan dengan standar SQL, yang mengatakan, bahwa fungsi JSON_ mengambil string sebagai argumen. Juga, MariaDB kecepatan-bijaksana
tidak perlu JSON biner, menurut tolok ukur kami, parser JSON kami secepat JSON teks seperti MySQL pada biner JSON. Artinya, di MariaDB orang bisa VARCHAR atau TEXT untuk JSON. Jika validasi diperlukan, seseorang dapat melakukannya dengan kendala PERIKSA:
my_json_column TEXT CHECK (JSON_VALID(my_json_column))
Kami akan menambahkan "tipe" JSON untuk kompatibilitas MySQL.
Dari bacaan saya, itu bukan titik biner JSON mari kita merujuk ke dokumen MySQL
Format biner disusun untuk memungkinkan server mencari sub-objek atau nilai-nilai bersarang secara langsung dengan indeks kunci atau array tanpa membaca semua nilai sebelum atau sesudahnya dalam dokumen.
Sekali lagi, PostgreSQLjsonb
tidak banyak lebih dari itu.
data jsonb disimpan dalam format biner terurai yang membuatnya sedikit lebih lambat untuk input karena penambahan overhead konversi, tetapi secara signifikan lebih cepat untuk diproses, karena tidak diperlukan reparsing. jsonb juga mendukung pengindeksan, yang bisa menjadi keuntungan yang signifikan.
tldr; Maria DB belum memiliki tipe JSON. Bahkan ketika mendapat "tipe" itu hanya pembungkus tipis di atas validasi teks (seperti json
tipe PostgreSQL ). Tidak ada rencana untuk jenis JSON biner (seperti PostgreSQL jsonb
) karena pengembang tampaknya tidak memahami kelebihannya.