ElasticSearch : จัดทำดัชนีผลลัพธ์ของวิธีการที่มีอาร์กิวเมนต์

ฉันกำลังทำงานกับแอปพลิเคชัน Rails ซึ่งควรจะปรับขนาดได้สำหรับผู้ใช้อย่างน้อย 100,000 คน แต่เมื่อเราเติมข้อมูลใน DB ของเราให้เพียงพอ มันก็ช้าลงอย่างมาก และเราวางแผนที่จะใช้ ElasticSearch เป็นวิธีการรักษา คำถามของฉันส่วนใหญ่เกี่ยวข้องกับหน้ารายการผู้ใช้ที่ฉันอยู่ในไซต์ของฉันซึ่งมีฟังก์ชันเฉพาะที่ใช้ CPU มาก และเราต้องการจัดทำดัชนีฟังก์ชันนั้น

ดังนั้นนี่คือสิ่งที่จับได้ ฟังก์ชันนี้มีอาร์กิวเมนต์ที่เราไม่สามารถหลีกเลี่ยงได้ และฉันไม่พบตัวอย่างใดๆ ที่สามารถแนะนำฉันได้ว่าจะส่งผ่านอาร์กิวเมนต์ไปยังฟังก์ชันที่จัดทำดัชนีได้อย่างไร

นี่เป็นคำถามที่ฉันพบว่ามีประโยชน์: จัดทำดัชนีผลลัพธ์ของ วิธีการใน ElasticSearch (Tire + ActiveRecord)


person VoodooChild92    schedule 18.09.2014    source แหล่งที่มา


คำตอบ (1)


คุณสามารถลองเขียนบางอย่างเช่น:

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

หรือแม้กระทั่งไม่มี to_indexed_json คุณก็เขียนได้:

mapping do
  indexes :field_name
end

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