Mam duży indeks, a podczas procesu indeksacji wystąpił błąd. Aby uniknąć ponownego indeksowania, które trwa kilka dni, chcę po prostu usunąć konkretne pole i ponownie wyświetlić indeks. Czy są jakieś sugestie?Czy możesz usunąć pole z dokumentu w indeksie Solr?
Odpowiedz
Nie możesz. Rozwiązaniem byłoby pobranie dokumentu, tymczasowe zapisanie w pamięci, usunięcie go, zaktualizowanie wymaganego pola (usunięcie, dodanie), a następnie dodanie dokumentu z powrotem do indeksu.
Możesz usunąć indeksowany dokument według jego id. Jeśli chcesz zmienić schemat, usuwając pole, to tak, musisz ponownie wyświetlić.
Można usunąć cały indeks używając polecenia Usuń i kwerendy tak:
java -Ddata=args -Dcommit=yes -jar post.jar "<delete><query>*:*</query></delete>"
Stosując siłę argumentu -Dcommit
zaktualizować indeks, więc należy uważać, aby nie usuwając wszystkie dokumenty, jeśli nie chcesz.
W dokumentacji solr [link] (http://lucene.apache.org/solr/tutorial.html) wyjaśnij, jak usunąć jeden dokument, ale w FAQ solr wyjaśnij usunięcie przez zapytanie [link] (http://wiki.apache.org/solr/FAQ#How_can_I_delete_all_documents_from_my_index.3F) – josegil
Jeśli używasz Solr 4, możesz użyć AtomicUpdate http://wiki.apache.org/solr/Atomic_Updates , aby znacznie łatwiej usunąć pole. Na przykład:
curl http://localhost:8983/solr/update?commit=true -H 'Content-type:application/json' --data-binary '[{"id": "630911fa-711a-3944-b1d2-cda6857f9827", "field_to_be_removed": {"set": null}}]'
Jak mogę usunąć określone pole dla wszystkich "identyfikatorów"? Dla np. to usuwa pewne pole dla id: 630911fa-711a-3944-b1d2-cda6857f9827. Ale chcę tego wszystkiego. – Uttam
Można to zrobić, jeśli reszta pól są przechowywane tj stored="true "
.Jak następuje poprzez ustawienie wartości zerowej.
<add>
<doc>
<field name="employeeId">05991</field> // your unique key field
<field name="skills" update="set" null="true" /> //what ever field you want to delete
</doc>
</add>
Można usuwać indeksowaną wartość w.r.t. pole w Solr, ale nie pole.
Jeśli naprawdę chcesz usunąć określone pole podczas indeksowania, powinieneś skonfigurować pole w pliku schema.xml przed zindeksowaniem dokumentu.
- 1. Jak usunąć pole z dokumentu
- 2. Jak usunąć pole całkowicie z dokumentu MongoDB?
- 3. Zwiększenie wyników w Solr o określone pole?
- 4. Zaktualizuj nowe pole do istniejącego dokumentu
- 5. usunąć rdzeń z Datastax Solr
- 6. solr wyszukaj dokumenty, w których pole nie istnieje
- 7. Vim: Czy możesz usunąć konkretny numer linii z innej linii?
- 8. Usunąć/usunąć konfigurację Solr z ZooKeeper za pomocą zkcli?
- 9. Czy solr ma interfejs API do odczytu pliku solr schema.xml?
- 10. Czy możesz bezpiecznie usunąć stare wpisy w sales_flat_quote?
- 11. Usunąć określony plik z katalogu dokumentu
- 12. MongoDB usunąć dokument podrzędny z dokumentu
- 13. Czy możesz usunąć strukturę folderów podczas kopiowania plików w haśle?
- 14. Zgubiłem moje zatwierdzenie w GIT. Czy możesz przypadkowo usunąć zatwierdzenia?
- 15. Jak usunąć klucz z dokumentu RethinkDB?
- 16. Jak usunąć niepodzielone spacje z dokumentu JSoup?
- 17. Usunąć wszystkie elementy z listy po określonym indeksie
- 18. Usuwanie pola z dokumentu Elasticsearch
- 19. Czy możesz usunąć prefiks pola HTML z mocno wpisanych modeli w MVC 3?
- 20. Czy w MySQL możesz sprawdzić, czy pole ma wartość NULL, czy puste, używając tylko jednego porównania?
- 21. Przechowywanie słów z apostrofem w indeksie Lucene
- 22. Jak mogę usunąć element o indeksie X w tablicy?
- 23. Jak usunąć indeksowane dane SOLR za pomocą zapytania z curl?
- 24. Wymień/usunąć pole używając SQLAlchemy
- 25. Czy możesz mieć # regiony w Androidzie/eclipse
- 26. Wykorzystanie mergeFactor w Solr 4.0
- 27. Jak usunąć pole Nazwa użytkownika z UserCreationForm w Django
- 28. Usunąć przycisk "wyczyść pole" X, gdy Tryb przeglądarki: Tryb dokumentu IE9: IE9 na niektórych wejściach?
- 29. Sprawdź, czy istnieje wartość w indeksie pand z indeksu danych
- 30. Jak ulepszyć dokument SOLR podczas indeksowania za pomocą/solr/update
+1 lub po prostu unikaj zwracania pola w formacie wyjściowym za pomocą parametru fl;) – Karussell