ElasticSearch, instala este servidor de búsqueda en Ubuntu
En el siguiente artículo vamos a echar un vistazo a ElasticSearch. Se trata de un servidor de búsqueda full-text basado en Lucene. En esta publicación rápida, veremos cómo podemos instalar una de las plataformas de indexación y búsqueda de texto más populares en Ubuntu, y comenzar a usarla.
Este servidor de búsqueda nos provee de un motor de búsqueda de texto completo, distribuido, con con una interfaz web RESTful y con documentos JSON. Elasticsearch está desarrollado en Java y está publicado como código abierto bajo las condiciones de la licencia Apache.
Base de datos ElasticSearch
Elasticsearch nos da la posibilidad de utilizar una de las bases de datos NoSQL más populares que vamos a poder utilizar para almacenar y buscar datos basados en texto. Se basa en la tecnología de indexación de Lucene y permite la recuperación de búsquedas en milisegundos en función de los datos indexados. Es compatible con consultas de bases de datos a través de API REST. Esto significa que podemos usar llamadas HTTP simples y usar métodos HTTP como GET, POST, PUT, DELETE, etc. para acceder a los datos.
Para instalar Elasticsearch en Ubuntu, primero debemos instalar Java en nuestro sistema operativo. Podremos verificar si tenemos Java instalado utilizando el siguiente comando en la terminal (Ctrl+Alt+T):
java -version
Cuando ejecutamos este comando, si obtenemos el resultado que se muestra en la siguiente captura, será por que no está instalado Java en nuestro equipo:
Si este es nuestro caso, podremos instalar Java siguiendo el artículo que dejó un compañero en su día en este blog o utilizando los siguientes comandos en nuestra terminal (Ctrl+Alt+T):
sudo add-apt-repository ppa:webupd8team/java sudo apt-get update && sudo apt-get install oracle-java8-installer
Una vez que se ejecutan estos comandos, podemos verificar nuevamente que Java ahora está instalado utilizando el mismo comando que probamos anteriormente.
Instalando ElasticSearch
Ahora, la instalación de ElasticSearch es solo una cuestión de unos pocos comandos. Para comenzar vamos a descargar el paquete .deb de ElasticSearch desde su página web. En la terminal (Ctrl+Alt+T) solo tendremos que escribir el siguiente comando:
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.2.2.deb
Cuando ejecutamos el comando anterior, veremos un resultado como este:
Una vez terminada la descarga ya podremos instalar el archivo utilizando el comando dpkg:
sudo dpkg -i elasticsearch-1.7.2.deb
Los archivos de configuración para ElasticSearch se almacenarán en la ruta /etc/elasticsearch. Para asegurarse de que se inicia y detiene con la máquina, ejecuta el siguiente comando:
sudo update-rc.d elasticsearch defaults
Configurando ElasticSearch
Llegados a este punto ya tenemos una instalación activa de Elasticsearch. Para usarlo de manera efectiva, podemos hacer algunos cambios importantes en la configuración. Ejecuta el siguiente comando para abrir el archivo de configuración correspondiente:
sudo nano /etc/elasticsearch/elasticsearch.yml
En el archivo vamos a modificar node.name y cluster.name en el archivo elasticsearch.yml. Recuerda eliminar el # antes de cada línea que queremos editar para desmarcarlo como comentario.
Una vez que terminemos las modificaciones guardaremos el archivos y volveremos a la terminal. Ahora es el momento de iniciar el servidor ElasticSearch por primera vez. Para ello escribimos en la terminal:
sudo service elasticsearch start
Cuando ya esté iniciado el servidor verificaremos el estado del servicio escribiendo en la terminal:
Usando ElasticSearch
Ahora que ElasticSearch ha comenzado a funcionar en nuestro equipo, podemos empezar a utilizarlo. Para ver los detalles de la instancia y la información del clúster, ejecuta el siguiente comando:
curl -X GET 'http://localhost:9200'
Puede que tengas que instalar curl. Para hacerlo, usa el siguiente comando:
sudo apt install curl
Ahora, podemos intentar insertar algunos datos en ElasticSearch utilizando el siguiente comando:
curl -X POST 'http://localhost:9200/entreunosyceros/hola/1' -H 'Content-Type: application/json' -d '{ "name" : "entreunosyceros" }'
Cuando ejecutamos este comando, obtenemos el siguiente resultado:
Insertados datos, vamos a probar a obtener los que acabamos de insertar:
curl -X GET 'http://localhost:9200/entreunosyceros/hola/1'
Cuando ejecutamos este comando, obtenemos el siguiente resultado:
En esta publicación solo intento mostrar cómo podemos instalar ElasticSearch y ejecutar consultas básicas en él, pero tiene un montón más de posibilidades que podremos descubrir por nuestra cuenta o en la documentación oficial.
El artículo ElasticSearch, instala este servidor de búsqueda en Ubuntu ha sido originalmente publicado en Ubunlog.