الاستیک سرچ توی Sequelize

قبل از این پست حتما این پست رو بخونید و بدونید که اگه دیتابیس شما mysql هست (performance خیلی بد mysql تو زمینه full text search) استفاده از ElasticSearch انتخاب خوبی میتونه باشه.

برای کسایی که با ElasticSearch آشنایی ندارن: به ازای هر JSON-object ای که ذخیره میکنه میاد تک تک key value های اون رو ایندکس گذاری میکنه (چیز وحشتناکی میشه. تو مثال زیر id ،first_name ،last_name و email ایندکس گذاری میشه). توی ElasticSearch به هر chunk یه داکیومنت میگن:

sample document: 
{
  id: 1,
  first_name: Jane,
  last_name: Doe,
  email: test@test.com,
}

خب کل مشکلی که اینجا داریم sync کردن داده های توی دیتابیس relational با ElasticSearch هست.


رفرنس: https://medium.com/riipen-engineering/sequelize-data-replication-to-elasticsearch-99b7891046ad