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

Mengompresi teks sebelum menyimpannya di database

Apakah Anda akan mengindeks teks-teks ini. Seberapa besar beban baca pada teks ini? Masukkan beban?

Anda dapat menggunakan kompresi data InnoDB - cara transparan dan modern. Lihat dokumen untuk info lebih lanjut.

Jika Anda memiliki teks yang sangat besar (misalnya, setiap teks berukuran di atas 10MB), maka ide yang baik adalah tidak menyimpannya di Mysql. Simpan terkompresi oleh teks gzip dalam sistem file dan hanya pointer dan meta di mysql. Anda dapat dengan mudah memperluas penyimpanan Anda di masa mendatang dan memindahkannya ke mis. DFS.

Pembaruan: kelebihan lain menyimpan teks di luar Mysql:DB tetap kecil dan cepat. Minus:kemungkinan besar inkonsistensi data.

Pembaruan 2: jika Anda memiliki banyak sumber daya pemrograman, silakan lihat proyek seperti ini: http://code.google.com/p/mysql-filesystem-engine/ .

Pembaruan Terakhir: menurut info Anda, Anda bisa menggunakan kompresi InnoDB - sama dengan ZIP. Anda dapat memulai dengan parameter berikut:

CREATE TABLE book_parts
 (...) 
 ENGINE=InnoDB
 ROW_FORMAT=COMPRESSED 
 KEY_BLOCK_SIZE=8;

Nanti Anda harus bermain dengan KEY_BLOCK_SIZE . Lihat SHOW STATUS LIKE 'COMPRESS_OPS_OK' dan SHOW STATUS LIKE 'COMPRESS_OPS' . Rasio kedua parameter ini harus mendekati 1,0:Dokumen .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Django manage.py syncdb melempar Tidak ada modul bernama MySQLdb

  2. Bagaimana cara menyimpan string teks dengan jeda baris ke bidang teks database MySQL menggunakan PHP?

  3. Kolom Ganti Nama MySQL

  4. persimpangan mysql

  5. Format datetime tidak valid:1292 Nilai datetime salah