Chcę wiedzieć, jak zdobyć/wyszukać ostatni indeks w Apache Solr ..?Jak zdobyć ostatnio indeksowany rekord w Solr?
Po zaktualizowaniu istniejącego rekordu następuje koniec wszystkich rekordów ... dlatego chcę uzyskać ostatni indeks.
Dzięki ..
Chcę wiedzieć, jak zdobyć/wyszukać ostatni indeks w Apache Solr ..?Jak zdobyć ostatnio indeksowany rekord w Solr?
Po zaktualizowaniu istniejącego rekordu następuje koniec wszystkich rekordów ... dlatego chcę uzyskać ostatni indeks.
Dzięki ..
Można dodać pole „timestamp” do schematu SOLR które stawia aktualną datę/czas do rekordu, gdy jest on dodawany.
<field name="timestamp" type="date" indexed="true" stored="true" default="NOW" multiValued="false"/>
Następnie wykonuje sortowanie w porządku malejącym według tej dziedzinie, a pierwsza płyta będzie ostatni z nich. Zapytanie jak to powinno zrobić: -
http://localhost:8080/solr/core-name/select/q=*%3A*&start=0&rows=1&sort=timestamp+desc
można sortować dokumenty według kolejności indeksowane przy użyciu następującego zapytania.
http://localhost:8983/solr/select?q=*:*&sort=_docid_ asc
or
http://localhost:8983/solr/select?q=*:*&sort=_docid_ desc
Dzięki, tego właśnie potrzebowałem. – Oyeme
Czy można bezpiecznie liczyć na stwardnienie krzyżowe? zobacz http://osdir.com/ml/solr-user.lucene.apache.org/2011-12/msg01178.html –
nie używaj _docid_, ponieważ zmienia się, zobacz tę odpowiedź, aby zrozumieć http: //lucene.472066.n3. nabble.com/Get-DocID-after-Document-insert-td556278.html – aName
Czy nie ma innej drogi ...? ponieważ muszę dodać pole w indeksowaniu Solr, a następnie ... dzięki za odpowiedź ... –
Wierzę, że jest to najbardziej niezawodny sposób, aby to zrobić, ponieważ pole znacznika czasu zostanie dodane przez Solr i jest gwarantowane, że będzie dokładne. Możesz iść z odpowiedzią @ parvin, ale to by zakładało, że twoje pole docid jest sekwencyjne i może być posortowane. –