Cómo eliminar el índice y realizar búsquedas de texto con GroupDocs.Search para Java
En el mundo actual impulsado por los datos, cómo eliminar el índice rápidamente mientras se siguen ofreciendo capacidades de búsqueda de texto completo en Java ultrarrápidas es una ventaja competitiva. Ya sea que estés construyendo una base de conocimiento interna, un repositorio de casos legales o un catálogo de productos de comercio electrónico, una red de búsqueda bien afinada puede mejorar drásticamente la satisfacción del usuario. En esta guía aprenderás a configurar una search network, crear un searchable index, optimizar el rendimiento de búsqueda y eliminar documentos del índice cuando sea necesario, todo usando GroupDocs.Search para Java.
Respuestas rápidas
- ¿Cuál es el propósito principal de GroupDocs.Search para Java? Proporciona búsqueda de texto completo en más de 50 formatos de documento, permitiendo una recuperación rápida de palabras clave.
- ¿Cómo realizo búsquedas de texto en un entorno distribuido? Despliega una search network, indexa documentos en un nodo maestro y luego consulta cualquier nodo.
- ¿Puedo eliminar documentos del índice sin reconstruirlo? Sí, usa la API Delete para eliminar archivos seleccionados, efectivamente cómo eliminar el índice sin una reindexación completa.
- ¿Qué versión de Java se requiere? JDK 8 o superior.
- ¿Se necesita una licencia para producción? Se requiere una licencia válida de GroupDocs.Search; hay una prueba gratuita disponible.
Qué es “perform text search”?
Realizar una búsqueda de texto significa consultar un índice de texto completo para recuperar documentos que contengan las palabras clave o frases especificadas. GroupDocs.Search construye un índice invertido que hace que estas búsquedas sean extremadamente rápidas, incluso entre miles de archivos.
Por qué configurar una search network?
Una search network distribuye las cargas de trabajo de indexación y consultas entre varios nodos, permitiéndote optimizar el rendimiento de búsqueda, escalar horizontalmente y mantener alta disponibilidad. Esta arquitectura es ideal para repositorios de documentos a nivel empresarial donde la latencia y el rendimiento son importantes.
Cómo implementar y optimizar una Search Network con GroupDocs.Search para Java
Carga tu configuración, inicia un nodo maestro y luego agrega nodos worker que compartan la misma ruta base y puerto. Desplegar la red de esta manera permite que cualquier nodo maneje solicitudes de indexación o consulta, ofreciendo tiempos de respuesta consistentes incluso cuando la cantidad de documentos crece a cientos de miles.
Visión general paso a paso
- Definir una configuración base que incluya un directorio compartido y un puerto TCP.
- Iniciar el nodo maestro para gestionar el índice y coordinar los nodos worker.
- Agregar nodos worker que se conecten al maestro, habilitando indexación y búsqueda paralelas.
- Monitorear el uso de recursos y ajustar la configuración del heap de JVM para mantener baja la latencia.
Cómo eliminar el índice en GroupDocs.Search para Java
SearchNode representa un nodo en la red de GroupDocs.Search que gestiona operaciones de indexación y consulta. El método delete elimina los documentos especificados del índice.
Pasos de eliminación directa
- Llama al método
deleteen la instanciaSearchNode. - Proporciona una matriz de rutas de archivo relativas.
- Confirma los cambios; el índice se actualiza instantáneamente y las búsquedas posteriores ya no devuelven los archivos eliminados.
Qué es una Search Network?
Una search network es un clúster de nodos interconectados que comparten un repositorio de índice común, permitiendo la indexación distribuida y la ejecución de consultas. Facilita el escalado horizontal y la tolerancia a fallos para colecciones de documentos a gran escala.
Cómo crear un Searchable Index (index documents java)
El método add indexa un documento en el índice de búsqueda. Agrega documentos al nodo maestro usando el método add; la red propaga los cambios a todos los nodos worker. Este enfoque garantiza que cada nodo pueda atender consultas contra el índice más reciente sin pasos de sincronización adicionales.
Acciones clave
- Apunta el nodo maestro a la carpeta que contiene los archivos fuente.
- Invoca la rutina de indexación; la red procesa cada archivo y actualiza el índice invertido.
- Verifica que los archivos de índice aparezcan en el directorio de almacenamiento designado.
Cómo eliminar archivos indexados (remove indexed files)
Cuando un documento queda obsoleto, llama a la API delete con su ruta. El sistema elimina las entradas del archivo del índice invertido, liberando espacio de almacenamiento y evitando resultados obsoletos.
Configuración de GroupDocs.Search para Java
Para comenzar, integra GroupDocs.Search en tu proyecto Java usando la siguiente configuración:
Configuración Maven
Agrega el repositorio y la dependencia a tu archivo pom.xml:
<repositories>
<repository>
<id>repository.groupdocs.com</id>
<name>GroupDocs Repository</name>
<url>https://releases.groupdocs.com/search/java/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-search</artifactId>
<version>25.4</version>
</dependency>
</dependencies>
Descarga directa
Alternativamente, puedes descargar la última versión directamente desde GroupDocs.
Obtención de licencia
GroupDocs ofrece una prueba gratuita, que te permite evaluar sus funciones antes de comprar. Puedes obtener una licencia temporal siguiendo los pasos en su página de compra. Esto habilitará la funcionalidad completa durante tu fase de pruebas.
Inicialización y configuración básica
Inicializa GroupDocs.Search en tu aplicación Java con:
import com.groupdocs.search.*;
class SearchNetworkSetup {
public static void main(String[] args) {
Index index = new Index("path/to/index/directory");
// Additional configuration can be set here.
}
}
Guía de implementación
Configuración de la Search Network
Visión general: Establece una ruta base y un puerto para tu search network, permitiendo que los nodos se comuniquen eficazmente.
Paso 1: Definir configuración base
import com.groupdocs.search.options.*;
import com.groupdocs.search.scaling.configuring.*;
String basePath = "YOUR_DOCUMENT_DIRECTORY/output/AdvancedUsage/Scaling/DeletingDocuments/";
int basePort = 49104; // Change if necessary.
Configuration configuration = ConfiguringSearchNetwork.configure(basePath, basePort);
- Parámetros:
basePath: Ruta del directorio para operaciones de red.basePort: Número de puerto usado por la search network.
Paso 2: Solución de problemas
Asegúrate de que el puerto especificado no esté bloqueado por la configuración del firewall o en uso por otra aplicación. Ajusta según sea necesario para evitar conflictos.
Despliegue de nodos de Search Network
Visión general: Usando tu configuración, despliega nodos a través de tu red para indexación y búsqueda distribuidas.
import com.groupdocs.search.scaling.*;
String basePath = "YOUR_DOCUMENT_DIRECTORY/output/AdvancedUsage/Scaling/DeletingDocuments/";
int basePort = 49104;
Configuration configuration = ConfiguringSearchNetwork.configure(basePath, basePort);
SearchNetworkNode[] nodes = SearchNetworkDeployment.deploy(basePath, basePort, configuration);
// Nodes are now deployed and ready for further operations.
- Opciones clave de configuración:
- Base Path & Port: Estos valores deben coincidir con los usados en tu configuración inicial para garantizar consistencia.
Indexación de documentos (create searchable index)
Visión general: Agrega documentos al índice de búsqueda de manera eficiente usando un nodo maestro.
import com.groupdocs.search.scaling.*;
String documentsPath = "YOUR_DOCUMENT_DIRECTORY/path/to/documents";
SearchNetworkNode masterNode = nodes[0];
IndexingDocuments.addDirectories(masterNode, documentsPath);
- Propósito:
masterNode: El nodo principal que gestiona la indexación de documentos.documentsPath: Ruta al directorio que contiene los documentos.
Consejos de solución de problemas
Verifica que las rutas de tus documentos sean correctas y accesibles. Asegúrate de que los permisos permitan la lectura de estos directorios.
Búsqueda de texto en la red (perform text search)
Visión general: Realiza búsquedas de texto exhaustivas a través de tu red indexada.
import com.groupdocs.search.scaling.*;
String query = "nulla";
SearchNetworkNode masterNode = nodes[0];
TextSearchInNetwork.searchAll(masterNode, query, false);
- Parámetros:
query: El texto que estás buscando.masterNode: Nodo que realiza la búsqueda.
Eliminación de documentos del índice (delete documents index)
Visión general: Elimina documentos específicos de tu índice usando sus rutas de archivo.
import com.groupdocs.search.scaling.*;
SearchNetworkNode node = nodes[0];
String[] filePaths = {
"YOUR_DOCUMENT_DIRECTORY/Lorem ipsum.pdf",
"YOUR_DOCUMENT_DIRECTORY/Lorem ipsum.docx"
};
deleteDocuments(node, filePaths);
void deleteDocuments(SearchNetworkNode node, String... filePaths) {
Indexer indexer = node.getIndexer();
DeleteOptions options = new DeleteOptions();
indexer.delete(filePaths, options);
}
- Propósito del método:
node: El nodo objetivo para operaciones de eliminación.filePaths: Rutas de los documentos a eliminar del índice.
Solución de problemas
Asegúrate de que las rutas de archivo sean precisas y de que los archivos existan en tu directorio. Si los problemas persisten, verifica los permisos de red y la conectividad.
Aplicaciones prácticas
- Gestión de documentos empresariales: Optimiza la recuperación de conocimiento interno.
- Análisis de casos legales: Localiza rápidamente archivos de casos relevantes en múltiples repositorios.
- Plataformas de comercio electrónico: Mejora la velocidad de búsqueda de productos indexando descripciones y reseñas.
- Investigación académica: Busca eficientemente en grandes bibliotecas digitales de artículos y tesis.
- Sistemas de soporte al cliente: Reduce el tiempo de respuesta permitiendo a los agentes buscar tickets anteriores al instante.
Consideraciones de rendimiento
- Optimizar la velocidad de indexación: Añade documentos nuevos de forma incremental durante horas de baja actividad para mantener baja la latencia.
- Directrices de uso de recursos: Monitorea CPU y memoria, especialmente al escalar el número de nodos.
- Gestión de memoria en Java: Ajusta la configuración del heap de JVM según tu carga de trabajo (p. ej.,
-Xmx2gpara índices de tamaño medio).
Conclusión
Al seguir esta guía, has aprendido a configurar una search network, crear un searchable index, realizar búsquedas de texto y eliminar documentos del índice usando GroupDocs.Search para Java. Estas capacidades permiten una recuperación de documentos rápida y fiable en entornos distribuidos.
Próximos pasos
- Experimenta con diferentes configuraciones de nodos para encontrar el equilibrio óptimo para tu carga de trabajo.
- Profundiza en opciones avanzadas de indexación como analizadores personalizados y ajuste de relevancia.
- Explora la integración con otros productos de GroupDocs para el procesamiento de documentos de extremo a extremo.
Preguntas frecuentes
P: ¿Cuál es el caso de uso principal de GroupDocs.Search para Java?
A: Proporciona búsqueda de texto completo en muchos formatos de documento, permitiéndote realizar búsquedas de texto en grandes repositorios.
P: ¿Cómo puedo mejorar la velocidad de búsqueda en una red grande?
A: Despliega nodos adicionales, ajusta el heap de JVM y programa la indexación durante períodos de bajo tráfico para optimizar el rendimiento de búsqueda.
P: ¿Es posible eliminar un solo documento sin reindexar toda la colección?
A: Sí, usa la API delete documents index como se muestra en el ejemplo de código para eliminar archivos específicos.
P: ¿Necesito una licencia para desarrollo?
A: Una licencia de prueba gratuita es suficiente para pruebas; se requiere una licencia comercial para despliegues en producción.
P: ¿Puedo indexar PDFs, archivos Word y correos electrónicos juntos?
A: Por supuesto—GroupDocs.Search soporta una amplia gama de formatos de forma nativa.
Última actualización: 2026-07-07
Probado con: GroupDocs.Search for Java 25.4
Autor: GroupDocs