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

Database untuk Pencarian Teks Lengkap dan 200 juta+ Catatan

Saya percaya bahwa menyimpan catatan utama dalam database SQL dan menggandakannya ke database noSQL adalah pendekatan yang sangat umum.

ElasticSearch memiliki halaman status berkelanjutan tentang ketahanan mereka . Bahkan dalam versi terbaru, ElasticSearch dapat kehilangan data di berbagai situasi . Perubahan besar dalam struktur indeks ElasticSearch (seperti menambahkan penganalisis) mengharuskan Anda indeks ulang semua dokumen. Proses ini lebih aman jika Anda memiliki sumber lain untuk dokumen tersebut. Pada akhirnya, ElasticSearch tidak dirancang untuk menyimpan dokumen secara konsisten - saya hanya akan memilih untuk menggunakan ElasticSearch sebagai penyimpanan utama dalam situasi di mana kehilangan data sesekali bukanlah bencana.

Tidak seperti ElasticSearch, MongoDB dirancang untuk menjadi tahan . Anda harus dapat menyimpan dokumen dengan aman di MongoDB. Saya telah menemukan mencoba melakukan pencarian teks lengkap di MongoDB bisa sedikit menyakitkan, setidaknya dibandingkan dengan ElasticSearch. Menurut pendapat saya, untuk pencarian teks, satu-satunya keuntungan yang dimiliki MongoDB dibandingkan TEKS LENGKAP adalah bahwa itu didistribusikan.

Kami menjalankan ElasticSearch dan MySQL sekarang - dan manfaatnya jauh lebih besar daripada kerumitan infrastruktur ekstra dan berurusan dengan replikasi di antara keduanya. Kami sebelumnya telah mencoba menggunakan solusi noSQL sebagai penyimpanan data utama, dengan hasil yang membawa malapetaka. Menjalankan ES bersama dengan MySQL memberi Anda yang terbaik dari keduanya - konsistensi &keamanan data dalam SQL, dengan pencarian teks lengkap yang terukur dan efektif di ES.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Migrasi Laravel :Hapus onDelete('cascade') dari kunci asing yang ada

  2. Akses Database MySQL di Electron

  3. mysql - memindahkan baris dari satu tabel ke tabel lainnya

  4. Ulangi n kali tanpa menggunakan prosedur tersimpan

  5. Masalah MVC5 Mqsql