2012-10-10 17 views
6

Pensé que mergeFactor podría ser el número máximo de segmentos, pero cuando se estableció en 10, obtuve 16 segmentos después del índice, y la fusión ocurrió cuando el número de segmentos supera 15 y 20. Soy realmente confundido acerca de la media de mergeFactor.mergeFactor uso en solr 4.0

Aquí es mi config

<ramBufferSizeMB>32</ramBufferSizeMB> 
<maxBufferedDocs>100000</maxBufferedDocs> 
<mergeFactor>10</mergeFactor> 

Respuesta

10

Desde el Solr Wiki - SolrPerformanceFactors - Merge Factor documentation

El mergeFactor más o menos determina el número de segmentos. El valor mergeFactor le dice a Lucene cuántos segmentos del mismo tamaño construir antes de fusionarlos en un solo segmento. Se puede considerar como la base de un sistema numérico.

No es un número exacto, sino una guía sobre cómo se gestiona el índice en el disco. Aquí es una buena orientación adicional sobre cómo lo que los diferentes ajustes de este valor medio para el rendimiento de su índice:

mergeFactor soluciones de compromiso en

alto valor del factor de combinación (por ejemplo, 25):

  • Pro: Mejora generalmente la velocidad de indexación
  • Con: fusiones menos frecuentes, lo que resulta en una colección con más archivos de índice que pueden ralentizar la búsqueda

bajo valor del factor de combinación (por ejemplo, 2):

  • Pro: Más pequeño número de archivos de índice, lo que acelera la búsqueda.
  • Con: Más fusiones de segmentos ralentizan la indexación.

También puede hacer referencia a la mergeFactor documentation on the Lucidworks site de algunos detalles más sobre cómo funciona el mergeFcator y puede afectar el rendimiento de su índice. Pero creo que la clave aquí es este párrafo:

Si la creación de un nuevo segmento haría que el número de más bajo nivel segmentos a superar el valor mergeFactor, entonces todos esos segmentos se se fusionaron para formar un solo gran segmento. Por lo tanto, si el factor de fusión es diez, cada fusión resulta en la creación de un segmento único que es aproximadamente diez veces mayor que cada uno de sus diez componentes. Cuando hay configuraciones mergeFactor para estos segmentos más grandes, entonces se fusionan a su vez en un segmento individual aún más grande. Este proceso puede continuar indefinidamente.

+1

Hay un blog impresionante sobre merge de segmentos.http: //blog.mikemccandless.com/2011/02/visualizing-lucenes-segment-merges.html – bata