ElasticSearch : Mengindeks hasil metode yang memiliki argumen

Saya sedang mengerjakan aplikasi Rails yang seharusnya dapat diskalakan untuk setidaknya 100 ribu pengguna. Namun, ketika kami mengisi cukup banyak data di DB kami, data tersebut melambat secara signifikan dan kami berencana menggunakan ElasticSearch sebagai solusinya. Pertanyaan saya terutama berkaitan dengan halaman daftar pengguna yang saya miliki di situs saya di mana fungsi tertentu memerlukan banyak CPU dan kami ingin mengindeks fungsi itu.

Jadi, inilah hasil tangkapannya. Fungsi ini memiliki argumen yang tidak dapat kami hindari dan saya belum menemukan contoh apa pun yang dapat menyarankan cara meneruskan argumen ke fungsi yang diindeks.

Inilah pertanyaan yang menurut saya berguna: Indeks hasil sebuah metode di ElasticSearch (Tire + ActiveRecord)


person VoodooChild92    schedule 18.09.2014    source sumber


Jawaban (1)


Anda dapat mencoba menulis sesuatu seperti:

def to_indexed_json
  { field: method(args) }.to_json
end

atau bahkan tanpa to_indexed_json Anda dapat menulis:

mapping do
  indexes :field_name
end

def field_name
  your_method(args)
end
person Igor Guzak    schedule 18.09.2014