Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Memahami Ukuran Penyimpanan untuk Tipe Data MySQL TEXT

TEXT objek data, seperti namanya, berguna untuk menyimpan string teks bentuk panjang dalam database MySQL. Empat TEXT tipe objek data dibuat untuk menyimpan dan menampilkan sejumlah besar informasi yang bertentangan dengan tipe objek data lain yang membantu tugas-tugas seperti menyortir dan mencari kolom atau menangani opsi berbasis konfigurasi yang lebih kecil untuk proyek yang lebih besar. TEXT yang berbeda objek menawarkan rentang ruang penyimpanan dari 1 byte hingga 4 GB dan tidak dirancang untuk menyimpan nilai komputasi. Ini umum untuk melihat ini digunakan untuk menyimpan deskripsi produk untuk situs penjualan, ringkasan properti untuk database realty, dan teks artikel bentuk panjang di situs web berita. TEXT objek paling baik digunakan saat VARCHAR dan objek data berbasis string lainnya tidak cukup untuk menangani penyimpanan jumlah informasi yang diinginkan. Namun, TEXT terkecil ketik, TINYTEXT , memiliki panjang karakter yang sama dengan VARCHAR . TEXT objek membedakan dirinya dari tipe penyimpanan string lainnya dengan menghapus persyaratan untuk menentukan panjang penyimpanan, tidak menghapus byte saat dipilih, dan tidak mengisi ruang karakter yang tidak digunakan untuk penyimpanan disk yang efisien. Sejak TEXT objek tidak disimpan dalam memori server, mereka memerlukan overhead data untuk pengambilan. Ukuran berikut mengasumsikan database menggunakan pengkodean UTF-8.

TINYTEXT:255 karakter - 255 B

TINYTEXT objek data adalah yang terkecil dari TEXT keluarga dan dibangun untuk secara efisien menyimpan string informasi singkat. Tipe ini dapat menyimpan hingga 255 byte (dinyatakan sebagai 2^8 -1) atau 255 karakter dan memerlukan overhead 1 byte. Objek ini dapat digunakan untuk menyimpan hal-hal seperti ringkasan singkat, tautan URL, dan objek pendek lainnya. TINYTEXT bersinar di atas VARCHAR saat menyimpan data di bawah 255 karakter dengan panjang yang tidak konsisten dan tidak perlu digunakan untuk kriteria pengurutan.

TEXT:65.535 karakter - 64 KB

TEXT standar objek data cukup mampu menangani konten teks bentuk panjang yang khas. TEXT objek data mencapai 64 KB (dinyatakan sebagai 2^16 -1) atau 65.535 karakter dan memerlukan overhead 2 byte. Ini cukup besar untuk menampung teks untuk sesuatu seperti artikel, tetapi tidak akan cukup untuk menampung teks seluruh buku.

MEDIUMTEXT:16.777.215 - 16 MB

MEDIUMTEXT objek data berguna untuk menyimpan string teks yang lebih besar seperti kertas putih, buku, dan cadangan kode. Objek data ini dapat berukuran sebesar 16 MB (dinyatakan sebagai 2^24 -1) atau 16.777.215 karakter dan memerlukan 3 byte penyimpanan overhead.

LONGTEXT:4.294.967.295 karakter - 4 GB

LONGTEXT objek data untuk digunakan dalam kasus penggunaan penyimpanan string teks ekstrim. Ini adalah opsi yang layak ketika MEDIUMTEXT objek tidak cukup besar. Program dan aplikasi komputer sering kali mencapai panjang teks dalam LONGTEXT jangkauan. Objek data ini dapat berukuran hingga 4 GB (dinyatakan sebagai 2^32 -1) dan menyimpan hingga 4.294.967.295 karakter dengan 4 byte penyimpanan overhead,

TEXT vs. BLOB

BLOB s adalah jenis penyimpanan data alternatif yang berbagi mekanisme penamaan dan kapasitas yang cocok dengan TEXT objek. Namun, BLOB s adalah string biner tanpa pengurutan kumpulan karakter, sehingga diperlakukan sebagai nilai numerik saat TEXT objek diperlakukan sebagai string karakter. Diferensiasi ini penting untuk menyortir informasi. BLOB s digunakan untuk menyimpan file data seperti gambar, video, dan file yang dapat dieksekusi.

Catatan Penggunaan

  • Menggunakan TEXT kolom untuk kueri pemilihan dan penelusuran akan menghasilkan hit kinerja karena server akan memanggil objek satu per satu dan memindainya selama kueri alih-alih melakukan paging data yang disimpan dalam memori.
  • Mengaktifkan SQL ketat akan memberlakukan panjang karakter maksimum dan memotong data yang dimasukkan yang melebihi batas tersebut.
  • TEXT kolom memerlukan panjang awalan indeks dan tidak boleh memiliki DEFAULT nilai, tidak seperti CHAR dan VARCHAR objek.
  • Memperkirakan ukuran berdasarkan jumlah kata:asumsikan rata-rata kata bahasa Inggris panjangnya 4,5 huruf dan membutuhkan 1 karakter tambahan untuk spasi. Contoh, sebuah situs yang terdiri dari artikel 500 kata akan menggunakan rata-rata sekitar 2.750 karakter untuk data teks artikel. TINYTEXT kapasitas 255 karakter tidak cukup untuk kasus penggunaan ini, sementara TEXT Kapasitas 65535 karakter menawarkan penyimpanan untuk artikel yang mencapai lebih dari 11.900 kata berdasarkan kriteria rata-rata.

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Pengantar Indeks SQL

  2. Cara menentukan versi MySQL

  3. JDBC Buat Tabel Contoh Penggunaan Pernyataan

  4. Kesalahan MySQL #1071 - Kunci yang ditentukan terlalu panjang; panjang kunci maksimal adalah 767 byte

  5. TEMUKAN_IN_SET() vs IN()