Licencia
Seguridad
Elasticsearch es un motor distribuido de búsqueda y análisis, un almacén de datos escalable y una base de datos vectorial optimizada para brindar velocidad y relevancia en cargas de trabajo a escala de producción. Elasticsearch es la base de la plataforma Stack abierta de Elastic. Busque casi en tiempo real en conjuntos de datos masivos, realice búsquedas vectoriales, integre con aplicaciones de IA generativa y mucho más.
Los casos de uso habilitados por Elasticsearch incluyen:
Recuperación de Generación Aumentada (RAG)
Búsqueda de vectores
Búsqueda de texto completo
Registros
Métrica
Monitoreo del rendimiento de aplicaciones (APM)
Registros de seguridad
... ¡y más!
Para obtener más información sobre las características y capacidades de Elasticsearch, consulte nuestra página de producto.
Para acceder a información sobre innovaciones en aprendizaje automático y las últimas contribuciones de Lucene de Elastic, puede encontrar más información en Search Labs.
La forma más sencilla de configurar Elasticsearch es crear una implementación administrada con Elasticsearch Service en Elastic Cloud.
Si prefiere instalar y administrar Elasticsearch usted mismo, puede descargar la última versión desde elastic.co/downloads/elasticsearch.
Advertencia | NO UTILICE ESTAS INSTRUCCIONES PARA IMPLEMENTACIONES DE PRODUCCIÓN. Esta configuración está destinada únicamente al desarrollo y pruebas locales. |
Configure rápidamente Elasticsearch y Kibana en Docker para desarrollo o pruebas locales, utilizando el script start-local
.
ℹ️ Para obtener información más detallada sobre la configuración start-local
, consulte el archivo README en GitHub.
Si no tiene Docker instalado, descargue e instale Docker Desktop para su sistema operativo.
Si está utilizando Microsoft Windows, instale el Subsistema de Windows para Linux (WSL).
Esta configuración viene con una licencia de prueba de un mes que incluye todas las funciones de Elastic.
Después del período de prueba, la licencia vuelve a ser Gratuita y abierta - Básica . Consulte Suscripciones elásticas para obtener más información.
start-local
Para configurar Elasticsearch y Kibana localmente, ejecute el script start-local
:
curl -fsSL https://elastic.co/start-local | sh
Este script crea una carpeta elastic-start-local
que contiene archivos de configuración e inicia Elasticsearch y Kibana usando Docker.
Después de ejecutar el script, puede acceder a los servicios Elastic en los siguientes puntos finales:
Búsqueda elástica : http://localhost:9200
Kibana :http://localhost:5601
El script genera una contraseña aleatoria para el usuario elastic
, que se muestra al final de la instalación y se almacena en el archivo .env
.
Precaución | Esta configuración es solo para pruebas locales. HTTPS está deshabilitado y se utiliza la autenticación básica para Elasticsearch. Por seguridad, solo se puede acceder a Elasticsearch y Kibana a través de |
Se genera una clave API para Elasticsearch y se almacena en el archivo .env
como ES_LOCAL_API_KEY
. Utilice esta clave para conectarse a Elasticsearch con un cliente de lenguaje de programación o la API REST.
Desde la carpeta elastic-start-local
, verifique la conexión a Elasticsearch usando curl
:
fuente .env curl $ES_LOCAL_URL -H " Autorización: ApiKey ${ES_LOCAL_API_KEY} "
Envía datos y otras solicitudes a Elasticsearch a través de API REST. Puede interactuar con Elasticsearch utilizando cualquier cliente que envíe solicitudes HTTP, como los clientes de lenguaje Elasticsearch y curl.
Aquí hay un comando curl de ejemplo para crear un nuevo índice de Elasticsearch, usando autenticación básica:
curl -u elastic: $ELASTIC_PASSWORD -X PUT http://localhost:9200/my-new-index -H ' Tipo de contenido: aplicación/json '
Para conectarse a su clúster de desarrollo local de Elasticsearch con un cliente de idioma, puede usar la autenticación básica con el nombre de usuario elastic
y la contraseña que estableció en la variable de entorno.
Utilizará los siguientes detalles de conexión:
Punto final de Elasticsearch : http://localhost:9200
Nombre de usuario : elastic
Contraseña : $ELASTIC_PASSWORD
(Valor que establece en la variable de entorno)
Por ejemplo, para conectarse con el cliente elasticsearch
de Python:
importar sistema operativo desde elasticsearch importar nombre de usuario de Elasticsearch = contraseña 'elástica' = sistema operativo . getenv ( 'ELASTIC_PASSWORD' ) # Valor que establece en la variable de entorno cliente = Elasticsearch ( "http://localhost:9200" , basic_auth = ( nombre de usuario , contraseña )) print ( cliente . info ())
La consola de desarrollador de Kibana proporciona una manera sencilla de experimentar y probar solicitudes. Para acceder a la consola, abra Kibana y luego vaya a Administración > Herramientas de desarrollo .
Agregar datos
Los datos se indexan en Elasticsearch enviando objetos JSON (documentos) a través de las API REST. Ya sea que tenga texto estructurado o no estructurado, datos numéricos o datos geoespaciales, Elasticsearch los almacena e indexa de manera eficiente de una manera que admite búsquedas rápidas.
Para datos con marca de tiempo, como registros y métricas, normalmente se agregan documentos a un flujo de datos compuesto por múltiples índices de respaldo generados automáticamente.
Para agregar un solo documento a un índice, envíe una solicitud de publicación HTTP dirigida al índice.
POST /cliente/_doc/1 { "nombre": "Jennifer", "apellido": "Walters" }
Esta solicitud crea automáticamente el índice customer
si no existe, agrega un nuevo documento que tiene un ID de 1 y almacena e indexa los campos firstname
y lastname
.
El nuevo documento está disponible inmediatamente desde cualquier nodo del clúster. Puede recuperarlo con una solicitud GET que especifique su ID de documento:
OBTENER /cliente/_doc/1
Para agregar varios documentos en una sola solicitud, utilice la API _bulk
. Los datos masivos deben ser JSON delimitados por saltos de línea (NDJSON). Cada línea debe terminar con un carácter de nueva línea ( n
), incluida la última línea.
PUT cliente/_bulk { "create": { } } { "firstname": "Monica","lastname":"Rambeau"} { "create": { } } { "firstname": "Carol","lastname": "Danvers"} { "create": { } } { "firstname": "Wanda","lastname":"Maximoff"} { "create": { } } { "firstname": "Jennifer","apellido": "Takeda"}
Buscar
Los documentos indexados están disponibles para búsqueda casi en tiempo real. La siguiente búsqueda coincide con todos los clientes con el nombre Jennifer en el índice customer
.
OBTENER cliente/_búsqueda { "consulta": { "coincidencia": { "nombre": "Jennifer" } } }
Explorar
Puede utilizar Discover en Kibana para buscar y filtrar sus datos de forma interactiva. A partir de ahí, puede comenzar a crear visualizaciones y a crear y compartir paneles.
Para comenzar, cree una vista de datos que se conecte a uno o más índices, flujos de datos o alias de índice de Elasticsearch.
Vaya a Gestión > Gestión de pilas > Kibana > Vistas de datos .
Seleccione Crear vista de datos .
Introduzca un nombre para la vista de datos y un patrón que coincida con uno o más índices, como cliente .
Seleccione Guardar vista de datos en Kibana .
Para comenzar a explorar, vaya a Analytics > Descubrir .
Para actualizar desde una versión anterior de Elasticsearch, consulte la documentación de actualización de Elasticsearch.
Elasticsearch usa Gradle para su sistema de compilación.
Para crear una distribución para su sistema operativo local e imprimir su ubicación de salida al finalizar, ejecute:
./gradlew localDistro
Para crear una distribución para otra plataforma, ejecute el comando relacionado:
./gradlew :distribution:archives:linux-tar:assemble ./gradlew :distribution:archives:darwin-tar:assemble ./gradlew :distribution:archives:windows-zip:assemble
Para crear distribuciones para todas las plataformas compatibles, ejecute:
./gradlew ensamblar
Las distribuciones se envían a distribution/archives
.
Para ejecutar el conjunto de pruebas, consulte PRUEBAS.
Para obtener la documentación completa de Elasticsearch, visite elastic.co.
Para obtener información sobre nuestros procesos de documentación, consulte los documentos README.
El repositorio de elasticsearch-labs
contiene cuadernos ejecutables de Python, aplicaciones de muestra y recursos para probar Elasticsearch para casos de uso de búsqueda vectorial, búsqueda híbrida y IA generativa.
Para conocer las pautas de contribución, consulte CONTRIBUCIÓN.
Para informar un error o solicitar una función, cree un problema de GitHub. Asegúrese de que otra persona no haya creado un problema para el mismo tema.
¿Necesitas ayuda para usar Elasticsearch? Comuníquese con Elastic Forum o Slack. Un compañero miembro de la comunidad o un ingeniero de Elastic estará encantado de ayudarle.