Clase IndexWriterConfig
Contiene toda la configuración que se utiliza para crear un Escritor de índices. Una vez Escritor de índices ha sido creado con este objeto, los cambios a este objeto no afectarán el Escritor de índices instancia. Para eso, usa LiveIndexWriterConfig que se devuelve de Config.
NOTA DE LUCENENET: A diferencia de Lucene, usamos establecedores de propiedades en lugar de métodos de establecimiento. En C#, esto le permite inicializar el Configuración de IndexWriter utilizando las funciones de lenguaje de C#, por ejemplo:
IndexWriterConfig conf = new IndexWriterConfig(analyzer)
{
Codec = Lucene46Codec(),
OpenMode = OpenMode.CREATE
};
Sin embargo, si prefiere hacer coincidir la sintaxis de Lucene utilizando métodos de establecimiento encadenados, existen métodos de extensión en el espacio de nombres Lucene.Net.Support. Ejemplo de uso:
using Lucene.Net.Support;
..
IndexWriterConfig conf = new IndexWriterConfig(analyzer)
.SetCodec(new Lucene46Codec())
.SetOpenMode(OpenMode.CREATE);
@desde 3.1
Miembros heredados
Asamblea: DistribuidoLucene.Net.dll
Sintaxis
public sealed class IndexWriterConfig : LiveIndexWriterConfig
Constructores
Nombre | Descripción |
---|---|
IndexWriterConfig(Versión de Lucene, Analizador) | Crea una nueva configuración con valores predeterminados que coinciden con los especificados
LuceneVersión así como el predeterminado
Analizador. Si |
Terrenos
Nombre | Descripción |
---|---|
DEFAULT_CHECK_INTEGRITY_AT_MERGE | Valor predeterminado para llamar Comprobar integridad () antes de fusionar segmentos (establecido en |
DEFAULT_MAX_BUFFERED_DELETE_TERMS | Deshabilitado de forma predeterminada (porque IndexWriter se vacía por el uso de RAM de forma predeterminada). |
DEFAULT_MAX_BUFFERED_DOCS | Deshabilitado de forma predeterminada (porque IndexWriter se vacía por el uso de RAM de forma predeterminada). |
DEFAULT_MAX_THREAD_STATES | El número máximo de subprocesos simultáneos que pueden estar indexando documentos a la vez en Escritor de índices; si llegan más hilos, esperarán a que terminen otros. El valor predeterminado es 8. |
DEFAULT_RAM_BUFFER_SIZE_MB | El valor predeterminado es 16 MB (lo que significa vaciar cuando los documentos almacenados en búfer consumen aproximadamente 16 MB de RAM). |
DEFAULT_RAM_PER_THREAD_HARD_LIMIT_MB | El valor predeterminado es 1945. cambiar usando RAMPerThreadHardLimitMB setter. |
DEFAULT_READER_POOLING | Configuración predeterminada para UsarReaderPooling. |
DEFAULT_READER_TERMS_INDEX_DIVISOR | El valor predeterminado es 1. cambiar usando ReaderTermsIndexDivisor setter. |
DEFAULT_TERM_INDEX_INTERVAL | El valor predeterminado es 32. cambiar usando TérminoÍndiceIntervalo setter. |
DEFAULT_USE_COMPOUND_FILE_SYSTEM | Valor predeterminado para el sistema de archivos compuesto para segmentos recién escritos (establecido en |
DESHABILITAR_AUTO_FLUSH | Indica que un activador de descarga está deshabilitado. |
ESCRIBIR_LOCK_TIMEOUT | Valor predeterminado para el tiempo de espera de bloqueo de escritura (1,000 ms). |
Propiedades
Nombre | Descripción |
---|---|
Códec | Obtiene o establece el Códec. Sólo tiene efecto cuando Escritor de índices se crea primero. |
Tiempo de espera de bloqueo de escritura predeterminado | Obtiene o establece el tiempo máximo predeterminado (para cualquier instancia) para esperar un bloqueo de escritura (en milisegundos). |
ÍndiceCommit | Experto: permite abrir un determinado punto de compromiso. El valor predeterminado es Sólo tiene efecto cuando Escritor de índices se crea primero. |
IndexDeletionPolicyIndexDeletionPolicy | Experto: permite una opción IndexDeletionPolicyIndexDeletionPolicy implementación a especificar. Puede usar esto para controlar cuándo se eliminan las confirmaciones anteriores del índice. La política predeterminada es KeepOnlyLastCommitDeletionPolicy que elimina todas las confirmaciones anteriores tan pronto como se realiza una nueva confirmación (esto coincide con el comportamiento anterior a 2.2). La creación de su propia política puede permitirle mantener activas explícitamente las confirmaciones de "punto en el tiempo" anteriores en el índice durante algún tiempo, para permitir que los lectores se actualicen a la nueva confirmación sin que se elimine la confirmación anterior. Esto es necesario en sistemas de archivos como NFS que no admiten la semántica "eliminar en el último cierre", en la que normalmente se basa la búsqueda de "punto en el tiempo" de Lucene.
NOTA: la política de borrado no puede ser Solo tiene efecto cuando se crea IndexWriter por primera vez. |
Estados MaxThread | Obtiene o establece el número máximo de subprocesos simultáneos que pueden estar indexando documentos a la vez en Escritor de índices. Los valores < 1 no son válidos y si se pasan
Sólo tiene efecto cuando Escritor de índices se crea primero. |
Política de fusión | Experto: Política de fusión se invoca cada vez que hay cambios en los segmentos del índice. Su función es seleccionar qué fusiones hacer, si las hay, y devolver un MergePolicy.MergeSpecification describiendo las fusiones. También selecciona fusiones para hacer por Forzar fusión (Int32). Sólo tiene efecto cuando Escritor de índices se crea primero. |
Programador de fusión | Experto: Obtiene o establece el programador de combinación utilizado por este editor. El valor predeterminado es ConcurrentMergeSchedulerConcurrentMergeScheduler.
NOTA: el programador de fusión no puede ser Sólo tiene efecto cuando Escritor de índices se crea primero. |
modo abierto | Especifica modo abierto del índice Sólo tiene efecto cuando Escritor de índices se crea primero. |
RAMPerThreadHardLimitMB | Experto: Obtiene o establece el consumo máximo de memoria por subproceso que activa un vaciado forzado si se supera. UN Lucene.Net.Index.DocumentsWriterPerThread se enjuaga con fuerza una vez que excede este límite incluso si el RAMTamaño del búferMB no se ha superado. Este es un límite de seguridad para evitar una Lucene.Net.Index.DocumentsWriterPerThread del agotamiento del espacio de direcciones debido a su direccionamiento de memoria interno basado en enteros con signo de 32 bits. El valor dado debe ser inferior a 2 GB (2048 MB). |
Similitud | Experto: establecer el Similitud implementación utilizada por este Escritor de índices.
NOTA: la semejanza no puede ser Sólo tiene efecto cuando Escritor de índices se crea primero. |
UsarReaderPooling | De forma predeterminada, Escritor de índices no agrupa el
Lector de segmentoss debe abrirse para supresiones y fusiones, a menos que se haya obtenido un lector casi en tiempo real llamando Abierto (IndexWriter, Booleano). esta configuración le permite habilitar la agrupación sin obtener un lector casi en tiempo real. NOTA: si establece esto en
Sólo tiene efecto cuando Escritor de índices se crea primero. |
Tiempo de espera de bloqueo de escritura | Obtiene o establece el tiempo máximo de espera para un bloqueo de escritura (en milisegundos) para esta instancia. Puede cambiar el valor predeterminado para todas las instancias llamando al Tiempo de espera de bloqueo de escritura predeterminado setter. Sólo tiene efecto cuando Escritor de índices se crea primero. |
Métodos
Nombre | Descripción |
---|---|
Clon() | |
Establecer flujo de información (flujo de información) | Se imprimirá información sobre fusiones, eliminaciones y un mensaje cuando se alcance maxFieldLength. No debe ser |
SetInfoStream(Escritor de texto) | método de conveniencia que utiliza TextoWriterInfoStream escribir al pasado en |
Tostring () |