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

ElasticSearch sungai JDBC MySQL tidak menghapus catatan

Sejak pertanyaan ini diajukan, parameter telah banyak berubah, versi dan digest telah ditinggalkan, dan polling telah digantikan oleh jadwal, yang akan mengambil ekspresi cron tentang seberapa sering menjalankan ulang sungai (di bawah ini dijadwalkan untuk dijalankan setiap 5 menit )

    curl -XPUT 'localhost:9200/_river/account_river/_meta' -d '{
        "type" : "jdbc",
        "jdbc" : {
            "driver" : "com.mysql.jdbc.Driver",
            "url" : "jdbc:mysql://localhost:3306/test",
            "user" : "test_user",
            "password" : "test_pass",
            "sql" : "SELECT `account`.`id` as `_id`, `account`.`id`, `account`.`reference`, `account`.`company_name`, `account`.`also_known_as` from `account` WHERE NOT `account`.`deleted`",
            "strategy" : "simple",
            "schedule": "0 0/5 * * * ?" ,
            "autocommit" : true,
            "index" : "headphones",
            "type" : "Account"
        }
    }'

Tetapi untuk pertanyaan utama, jawaban yang saya dapatkan dari pengembang adalah inihttps://github.com/jprante/elasticsearch-river-jdbc/issues/213

Saya mencoba housekeeping dengan pembuatan versi, tetapi ini tidak bekerja dengan baik bersama dengan pembaruan tambahan dan penambahan baris.

Metode yang baik adalah pengindeksan berjendela. Setiap jangka waktu (mungkin sekali per hari atau per minggu) indeks baru dibuat untuk sungai, dan ditambahkan ke alias. Indeks lama akan dijatuhkan setelah beberapa saat. Pemeliharaan ini mirip dengan pengindeksan logstash, tetapi berada di luar cakupan sungai.

Metode yang saat ini saya gunakan sebagai aliasing penelitian saya adalah saya membuat ulang indeks dan sungai setiap malam, dan menjadwalkan sungai untuk berjalan setiap beberapa jam. Ini memastikan data baru yang dimasukkan akan diindeks pada hari itu, dan penghapusan akan dilakukan setiap 24 jam



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana jika saya menghapus ibdata1 di mysql (LINUX)

  2. Masalah Pengkodean Karakter

  3. Ganti nama tabel di MySQL

  4. Butuh bantuan untuk unpivot di mysql dengan beberapa kolom tanggal

  5. Sisipan Python MySql tidak berfungsi