tutorial - elasticsearch download



Riguardo l'uso della memoria di ricerca elastica (1)

Per riassumere la risposta sul thread della mailing list: il problema era che il client Ruby non era in grado di limitare i suoi inserimenti e l'utilizzo della memoria di Lucene aumenta con l'aggiunta di un numero elevato di documenti. Penso che ci possa essere anche un problema con la frequenza dei commit: è importante impegnarsi di volta in volta per scaricare nuovi documenti sul disco. L'OP ha ancora il problema? In caso contrario, potresti pubblicare la soluzione?

https://ffff65535.com

Attualmente sto usando elasticsearch 0.9.19. La macchina che sto usando ha circa 300 GB di spazio su disco e la RAM su di essa è di circa 23 GB. Ho assegnato circa 10 GB di RAM alla ricerca elastica. Le mie operazioni sono ad alta intensità di scrittura. Sono circa 1000docs/s . Sto eseguendo solo ricerche elastiche sulla macchina e nessun altro processo. La dimensione del documento non è grande. Sono piccoli solo con non più di 10 campi. La ricerca elastica viene eseguita solo su una macchina con 1 frammento e 0 repliche.

La memoria utilizzata inizia ad aumentare molto rapidamente quando invio 1000 docs/s . Anche se ho assegnato 10 GB di RAM solo alla ricerca elastica, ma quasi 21 GB di RAM vengono consumati e alla fine il processo di ricerca elastico risulta in uno spazio vuoto. Più tardi ho bisogno di cancellare la cache del sistema operativo per liberare tutta la memoria. Anche quando smetto di inviare la ricerca elastica, 1000docs/s anche la memoria non viene automaticamente cancellata.

Quindi, per esempio, se sto eseguendo la ricerca elastica con operazioni di scrittura di circa 1000doc/s , ho scoperto che è andato a 18 GB di utilizzo Ram molto rapidamente e più tardi quando ho ridotto le operazioni di scrittura a solo 10 documenti / s quindi anche la memoria utilizzata ancora mostra circa 18 GB. Quale penso dovrebbe scendere con diminuzione del numero di operazioni di scrittura. Sto usando API Bulk per eseguire le mie operazioni di scrittura con una dimensione di 100 documenti per query. I dati provengono da 4 macchine quando le operazioni di scrittura sono intorno a 1000docs / sec

Queste sono le cifre che ottengo dopo aver fatto il massimo

Mem: 24731664k totali, 18252700k usati, 6478964k gratuiti, 322492k buffer

Swap: 4194296k totali, 0k utilizzati, 4194296k gratuiti, 8749780k memorizzati nella cache

PID USER PR NI VIRT RES SHR S% CPU% MEM TIME + COMMAND

1004 elastici 20 0 10,7 g 8,3 g 10 m S 1 35,3 806: 28,69 java

Si prega di dire se qualcuno ha qualche idea, quale potrebbe essere la ragione per questo. Devo interrompere la mia domanda a causa di questo problema. Penso che mi manca qualsiasi configurazione. Ho già letto tutte le documentazioni relative alla cache per la ricerca elastica qui http://www.elasticsearch.org/guide/reference/index-modules/cache.html

Ho anche provato a svuotare la cache usando l'API cache trasparente e ho provato anche api flush. Ma non ha avuto alcun miglioramento.

Grazie in anticipo.