2016-04-14 20 views
1

Elasticsearch'te bir dizideki belgeleri yuva veya curl komutuyla silemedim.Bir dizindeki bir türdeki tüm belgeleri silemiyorum

Endeksi: testndx Tür: ürün

Bunları denedim:

Nest:
esconn.DeleteByQuery ("testndx", "ürün", del => del. Sorgu (q => q.QueryString (qs => qs.Query ("*"))));

Kıvrım:
bukle -X http://192.168.3.2:9200/testndx/product/_query?q= *
veya
bukle -X Ben .Net 4.6.1, Nest 2.1.1, ElasticSearch 2.3.0 kullanıyorum http://192.168.3.2:9200/testndx/product/_query

SİL.

Yardımlarınız için şimdiden teşekkür ederiz. Elasticsearch 2.0'da kaldırıldı.

+0

Belgeler elastik sitede mevcuttur: https://www.elastic.co/guide/en/elasticsearch/client/net -api/2.x/index.html –

cevap

1

DeleteByQuery kaldırıldı.

Elasticsearch 2.x'te, tüm belgelerin toplu bir istekle silinmesi ve gerçekten silinmesi için bir Scroll isteği yapmalısınız.

Nest Kaydırma Api: https://nest.azurewebsites.net/nest/search/scroll.html

Nest Toplu silin: ANDAE için https://nest.azurewebsites.net/nest/core/bulk.html

+1

Michael Cevabınız için teşekkür ederiz. Örnek kod verebilir misiniz? Elasticsearch hakkında, özellikle yuva istemcisi hakkında uygun belgeler bulamadım. Eğer yapabilirsen, eğitim için bazı linkler önerebilir misin? Teşekkür ederim. – zokkan

+0

Yuva istemci belgesine bağlantılar ekledim. Umarım, yardımcı olur. ;) –

+0

Tamam. Şimdi belgeleri silebilirim. Şimdi bir türdeki tüm belgeleri bir sorguda almam gerekiyor. Bu arama komutunun küçük sorgular için optimize edildiğini okudum ve insanlar olması gereken rakamın üzerinde bir sayı yazmayı öneririm. Benim durumumda hayal edebileceğim bir sınır yok. Bu yüzden, büyük sonuç sorgularının kaydırma komutuyla sorulması gerektiğini de okudum. Tüm belgelerin kaydırma komutuyla alınabileceğini bile okudum ama nasıl olduğunu bulamıyorum. Yani sıradaki soru Nest ile bir türdeki tüm belgeleri nasıl alabilirim? Teşekkür ederim. – zokkan

İlgili konular