Ich versuche eine Nachrichtenarchivierung in Riak zu implementieren. Das Schema sieht ungefähr so aus:Riak Yokozuna Solr, wie gespeicherte, aber nicht Indexfeld abrufen?
{
id = <<>> :: binary() | '_',
username_s = <<"">> :: binary() | '_',
timestamp_i = 0 :: integer(),
peer_s = <<"">> :: binary(),
bare_peer_s = <<"">> :: binary(),
packet = #xmlel{} :: xmlel() | '_',
nick_s = <<"">> :: binary(),
type_s = chat :: chat | groupchat
}
ID und Paket müssen nicht indiziert werden, sondern müssen bei jeder Abfrage abgefragt werden.
Sollte ich ein benutzerdefiniertes Schema erstellen und sie in Solr als nicht indizierte Feld speichern?
Sollte ich Application Level Join des Suchergebnisses tun, während jeder Schlüssel einzeln abfragen?
Oder ist MapReduce irgendwie eine Option?
Oder etwas ganz anderes?
Vielen Dank.