{"id":8912,"date":"2020-07-22T10:27:06","date_gmt":"2020-07-22T17:27:06","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=8912"},"modified":"2020-07-24T08:36:36","modified_gmt":"2020-07-24T15:36:36","slug":"elasticsearch-connector-and-ingest-node-pipeline","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/es\/elasticsearch-connector-and-ingest-node-pipeline\/","title":{"rendered":"Uso de Elasticsearch Connector con Ingest Node Pipeline"},"content":{"rendered":"<p>Recientemente, mientras exploraba nuestra documentaci\u00f3n para familiarizarme con las capacidades de Elasticsearch Connector 4.2, me encontr\u00e9 con una configuraci\u00f3n llamada Pipeline. Ten\u00eda curiosidad por explorar y entender qu\u00e9 significa y qu\u00e9 prop\u00f3sito resuelve. Mientras lo hac\u00eda, experiment\u00e9 con el conector y su configuraci\u00f3n y quer\u00eda compartir mi experiencia a trav\u00e9s de este post.<\/p>\n<hr \/>\n<h4><b>Visi\u00f3n general<\/b><\/h4>\n<p><span style=\"font-weight: 400\">In this post, we are going to cover replicating and transforming `travel-sample\u2019s` landmark dataset from Couchbase to Elasticsearch using Elasticsearch connector and an Elasticsearch Ingest node pipeline.<\/span><\/p>\n<p><span style=\"font-weight: 400\">Echemos un vistazo r\u00e1pido a los diferentes componentes que utilizaremos a lo largo de esta entrada de blog.<\/span><\/p>\n<p style=\"padding-left: 40px\"><a href=\"https:\/\/docs.couchbase.com\/home\/server.html\"><b>Couchbase<\/b><\/a><span style=\"font-weight: 400\">\u00a0 es una base de datos de documentos JSON distribuida y de c\u00f3digo abierto. Ofrece un almac\u00e9n de claves y valores escalable con cach\u00e9 gestionada para operaciones de datos por debajo del milisegundo, indexadores espec\u00edficos para consultas eficientes y un potente motor de consulta para ejecutar consultas de tipo SQL.<\/span><\/p>\n<p style=\"padding-left: 40px\"><a href=\"https:\/\/www.elastic.co\/\"><b>Elasticsearch<\/b><\/a><span style=\"font-weight: 400\"> es una base de datos NoSQL distribuida de texto completo con un potente motor de b\u00fasqueda y an\u00e1lisis en el coraz\u00f3n de Elastic Stack. Elasticsearch almacena documentos en \u00edndices, que son an\u00e1logos a las tablas del mundo sql.<\/span><\/p>\n<p style=\"padding-left: 40px\"><a href=\"https:\/\/www.elastic.co\/guide\/en\/elasticsearch\/reference\/current\/pipeline.html\"><b>Canalizaci\u00f3n de nodos de ingesta<\/b><\/a><span style=\"font-weight: 400\"> es una potente herramienta que Elasticsearch pone a su disposici\u00f3n para preprocesar sus documentos antes de que sean indexados. Una canalizaci\u00f3n de nodo de ingesta consiste en uno o m\u00e1s procesadores que se ejecutan en el orden en que se declaran. Elasticsearch viene con un conjunto de procesadores fuera de la caja, tambi\u00e9n puede construir un procesador personalizado seg\u00fan sea necesario, para obtener una lista de todos los procesadores visite la documentaci\u00f3n <\/span><a href=\"https:\/\/www.elastic.co\/guide\/en\/elasticsearch\/reference\/current\/ingest-processors.html\"><span style=\"font-weight: 400\">aqu\u00ed<\/span><\/a><span style=\"font-weight: 400\">.<\/span><\/p>\n<p style=\"padding-left: 40px\"><a href=\"https:\/\/docs.couchbase.com\/elasticsearch-connector\/4.2\/getting-started.html\"><b>Conector Elasticsearch<\/b><\/a><span style=\"font-weight: 400\"> es una herramienta creada por Couchbase que permite replicar datos de Couchbase a Elasticsearch.<\/span><\/p>\n<p style=\"padding-left: 40px\"><a href=\"https:\/\/www.elastic.co\/kibana\"><b>Kibana<\/b><\/a> <span style=\"font-weight: 400\">es una interfaz de usuario abierta y gratuita que permite visualizar los datos de Elasticsearch y navegar por Elastic Stack. Kibana tambi\u00e9n permite gestionar y evaluar canalizaciones de nodos de ingesta.<\/span><\/p>\n<h4><b>Requisitos previos y supuestos<\/b><\/h4>\n<p><span style=\"font-weight: 400\">Este post asume que usted tiene una comprensi\u00f3n b\u00e1sica de todos los componentes enumerados anteriormente y que est\u00e1 utilizando un equipo que ejecuta macOS para caminar a trav\u00e9s de la ilustraci\u00f3n.<\/span><\/p>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Instale y configure Couchbase Server con un conjunto de datos de muestra de viajes siguiendo las instrucciones <\/span><a href=\"https:\/\/docs.couchbase.com\/server\/current\/install\/install-intro.html\"><span style=\"font-weight: 400\">aqu\u00ed<\/span><\/a><span style=\"font-weight: 400\">.<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Instale un<\/span> <a href=\"https:\/\/docs.couchbase.com\/elasticsearch-connector\/current\/compatibility.html\"><span style=\"font-weight: 400\">compatible<\/span><\/a><span style=\"font-weight: 400\"> versi\u00f3n de java.<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4><strong>Comenzar<\/strong><\/h4>\n<p><span style=\"font-weight: 400\">Abra una nueva ventana de terminal y navegue hasta su directorio de usuario situado en \/Usuarios\/. Cree un nuevo directorio llamado <em><strong>Conectores<\/strong><\/em>. <\/span><span style=\"font-weight: 400\">Lo denominaremos <\/span>\"<span style=\"color: #3366ff\">BASE_DIR<\/span>\"<span style=\"font-weight: 400\"> para el resto del post.<\/span><\/p>\n<pre class=\"width-set:true width:650 h-align:2 lang:default decode:true\" title=\"Crear BASE_DIR\">mkdir Connectors<\/pre>\n<p>&nbsp;<\/p>\n<h4><b>Instalar e iniciar Elasticsearch y Kibana<\/b><\/h4>\n<ol>\n<li style=\"list-style-type: none\">\n<ol>\n<li style=\"font-weight: 400\">\n<h5><a href=\"https:\/\/www.elastic.co\/start\">Descargar<\/a> la \u00faltima versi\u00f3n de Elasticsearch y Kibana y trasladarlos al <span style=\"color: #3366ff\">BASE_DIR<\/span>. Deber\u00eda ver dos archivos Elasticsearch--darwin-x86_64.tar.gz y kibana--darwin-x86_64.tar.tz.<\/h5>\n<\/li>\n<li style=\"font-weight: 400\">\n<h5><span style=\"font-weight: 400\">Descomprima los archivos descargados y cambie el nombre del directorio a <strong>es<\/strong> y <strong>kibana<\/strong><\/span><\/h5>\n<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<p style=\"padding-left: 40px\"><span style=\"font-weight: 400\">\u00a0 Inicie un nuevo terminal y vaya a <span style=\"color: #3366ff\">BASE_DIR<\/span><\/span><span style=\"font-weight: 400\">\u00a0y luego t<\/span><span style=\"font-weight: 400\">ealice los siguientes comandos <span style=\"color: #999999\">(<\/span><\/span><span style=\"color: #999999\">de uno en uno)\u00a0<\/span><\/p>\n<pre class=\"font:verdana height-mode:2 height:250 width-set:true width-mode:2 width:650 h-align:2 show-lang:2 show-plain:1 lang:sh decode:true\" title=\"Descomprimir archivos de descarga \">tar -xzvf elasticsearch-7.8.0-darwin-x86_64.tar.gz &amp;&amp; tar -xzvf kibana-7.8.0-darwin-x86_64.tar.gz<\/pre>\n<pre class=\"font:verdana width-set:true width-mode:2 width:650 h-align:2 lang:sh decode:true\" title=\"Cambie el nombre del directorio a es y kibana\">mv elasticsearch-7.8.0-darwin-x86_64 es &amp;&amp; mv kibana-7.8.0-darwin-x86_64 kibana<\/pre>\n<h5><span style=\"font-weight: 400\">\u00a0 \u00a0 \u00a0 \u00a03. Iniciar Elasticsearch<\/span><\/h5>\n<p style=\"padding-left: 40px\"><span style=\"font-weight: 400\"> Abra una nueva ventana de terminal y navegue hasta el directorio <span style=\"color: #3366ff\">BASE_DIR<\/span><\/span><span style=\"color: #000000\"><strong>\/es<\/strong><\/span> entonces t<span style=\"font-weight: 400\">Escriba el siguiente comando<\/span><\/p>\n<pre class=\"font:verdana width-set:true width-mode:2 width:650 h-align:2 lang:sh decode:true\" title=\"Iniciar Elasticsearch\">bin\/elasticsearch<\/pre>\n<p style=\"text-align: left;padding-left: 40px\"><span style=\"font-weight: 400\">Ahora abra un navegador web y navegue hasta <\/span><a href=\"https:\/\/localhost:9200\"><span style=\"font-weight: 400\">https:\/\/localhost:9200<\/span><\/a><span style=\"font-weight: 400\">Deber\u00eda ver una respuesta como la siguiente, indicando que el servidor Elasticsearch est\u00e1 disponible.<\/span><\/p>\n<p style=\"padding-left: 40px\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8932 size-full\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2020\/07\/es_launch.png\" alt=\"Elasticsearch server status\" width=\"1015\" height=\"647\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/es_launch.png 1015w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/es_launch-300x191.png 300w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/es_launch-768x490.png 768w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/es_launch-20x13.png 20w\" sizes=\"auto, (max-width: 1015px) 100vw, 1015px\" \/><\/p>\n<h5 style=\"padding-left: 40px\"><span style=\"font-weight: 400\">4. Iniciar Kibana<\/span><\/h5>\n<p style=\"padding-left: 40px\"><span style=\"font-weight: 400\">Abra una nueva ventana de terminal y navegue hasta el directorio <span style=\"color: #3366ff\">BASE_DIR<\/span><\/span><b>\/kibana\u00a0 <\/b>entonces t<span style=\"font-weight: 400\">Escriba el siguiente comando<\/span><\/p>\n<pre class=\"font:verdana width-set:true width-mode:2 width:650 h-align:2 lang:sh decode:true\" title=\"Iniciar Kibana\">bin\/kibana<\/pre>\n<p style=\"padding-left: 40px\"><span style=\"font-weight: 400\">Para ver Kibana en acci\u00f3n, abra un navegador web y navegue hasta <\/span><a href=\"https:\/\/localhost:5601\"><span style=\"font-weight: 400\">https:\/\/localhost:5601<\/span><\/a><span style=\"font-weight: 400\"> .<\/span><\/p>\n<h4 style=\"padding-left: 40px\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8920 size-full\" style=\"background-color: initial;color: #333333;font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size: 19px\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2020\/07\/kibana3.png\" alt=\"Kibana status\" width=\"1917\" height=\"962\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/kibana3.png 1917w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/kibana3-300x151.png 300w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/kibana3-1024x514.png 1024w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/kibana3-768x385.png 768w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/kibana3-1536x771.png 1536w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/kibana3-20x10.png 20w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/kibana3-1320x662.png 1320w\" sizes=\"auto, (max-width: 1917px) 100vw, 1917px\" \/><\/h4>\n<h4><b>Instalar el conector Elasticsearch<\/b><\/h4>\n<ol>\n<li style=\"list-style-type: none\">\n<ol>\n<li>\n<h5><a href=\"https:\/\/docs.couchbase.com\/elasticsearch-connector\/current\/release-notes.html\"><span style=\"font-weight: 400\">Descargar<\/span><\/a><span style=\"font-weight: 400\"> la \u00faltima versi\u00f3n del conector de Elasticsearch y moverlo al <span style=\"color: #3366ff\">BASE_DIR<\/span><\/span><i><span style=\"font-weight: 400\">.<\/span><\/i><span style=\"font-weight: 400\"> En el momento de escribir este post, la versi\u00f3n m\u00e1s reciente del conector disponible es la 4.2.2. Deber\u00edas haber descargado un archivo parecido a couchbase-elasticsearch-connector-<\/span><b>&lt;version&gt;<\/b><span style=\"font-weight: 400\">.zip.<\/span><\/h5>\n<\/li>\n<li>\n<h5><span style=\"font-weight: 400\">Descomprima el archivo descargado y cambie el nombre del directorio a <\/span><b>cbes.<\/b><\/h5>\n<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<p style=\"padding-left: 40px\"><span style=\"font-weight: 400\">Inicie un nuevo terminal y vaya a <span style=\"color: #3366ff\">BASE_DIR<\/span><\/span><span style=\"font-weight: 400\">\u00a0 y t<\/span><span style=\"font-weight: 400\">ealice los siguientes comandos <span style=\"color: #999999\">(<\/span><span style=\"color: #999999\">de uno en uno)<\/span><\/span><b>. <\/b><span style=\"font-weight: 400\">Cuando se le solicite, introduzca \"<\/span><b>A\" <\/b><span style=\"font-weight: 400\">para descomprimir los archivos<\/span><\/p>\n<pre class=\"font:verdana height-mode:2 height:250 width-set:true width-mode:2 width:650 h-align:2 show-lang:2 show-plain:1 lang:sh decode:true\" title=\"Descomprimir el archivo de descarga\">unzip couchbase-elasticsearch-connector-4.2.2.zip<\/pre>\n<pre class=\"font:verdana width-set:true width-mode:2 width:650 h-align:2 lang:sh decode:true\" title=\"Cambie el nombre del directorio a cbes\">mv couchbase-elasticsearch-connector-4.2.2 cbes<\/pre>\n<p style=\"padding-left: 40px\"><span style=\"font-weight: 400\">Ahora vamos a explorar algunos de los directorios importantes dentro de <\/span><b>cbes<\/b><\/p>\n<p style=\"padding-left: 40px\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8895 size-full\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2020\/07\/cbes.png\" alt=\"cbes installation\" width=\"320\" height=\"476\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/cbes.png 320w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/cbes-202x300.png 202w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/cbes-300x446.png 300w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/cbes-13x20.png 13w\" sizes=\"auto, (max-width: 320px) 100vw, 320px\" \/><\/p>\n<p style=\"padding-left: 40px\"><b>papelera<\/b><span style=\"font-weight: 400\"> - contiene todas las utilidades de l\u00ednea de comandos necesarias para ayudar a gestionar los conectores.<\/span><\/p>\n<p style=\"padding-left: 40px\"><b>config<\/b><span style=\"font-weight: 400\"> - contiene el archivo de configuraci\u00f3n base que puede utilizarse como referencia.<\/span><\/p>\n<p style=\"padding-left: 40px\"><b>secretos<\/b><span style=\"font-weight: 400\"> - contiene las credenciales para conectarse a los servidores Couchbase y Elasticsearch.<\/span><\/p>\n<h4><b>Construir Elasticsearch Ingest Node Pipeline<\/b><\/h4>\n<p style=\"padding-left: 40px\"><span style=\"font-weight: 400\">Construyamos nuestro oleoducto. La llamaremos \"<\/span><b><i>hito-pipeline\". <\/i><\/b><span style=\"font-weight: 400\">Nuestro gasoducto<\/span><\/p>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Insert a new field `<\/span><b>last_update_time`<\/b><span style=\"font-weight: 400\"> que ser\u00e1 la fecha-hora actual.\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Convert the data to UPPERCASE for field `<\/span><b>name`<\/b><span style=\"font-weight: 400\">.<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p style=\"padding-left: 40px\"><span style=\"font-weight: 400\">Utilizaremos dos de los procesadores existentes para construir nuestro canal de ingesta.<\/span><\/p>\n<p style=\"padding-left: 80px\"><b> Procesador de guiones :<\/b><span style=\"font-weight: 400\"> Ejecuta cualquier script definido por el <\/span><a href=\"https:\/\/www.elastic.co\/guide\/en\/elasticsearch\/reference\/current\/modules-scripting-painless.html\"><span style=\"font-weight: 400\">lenguaje de scripting indoloro<\/span><\/a><span style=\"font-weight: 400\">.<\/span><\/p>\n<p style=\"padding-left: 80px\"><b>Procesador de may\u00fasculas<\/b><span style=\"font-weight: 400\"> : Convierte el valor del campo especificado en MAY\u00daSCULAS <\/span><\/p>\n<h5 style=\"padding-left: 40px\"><span style=\"font-weight: 400\">1. Abra una nueva ventana de terminal y ejecute el siguiente comando<\/span><\/h5>\n<pre class=\"font:verdana width-set:true width-mode:2 width:800 h-align:2 lang:js decode:true\" title=\"Crear canalizaci\u00f3n de nodo de ingesta\">curl -X PUT \"localhost:9200\/_ingest\/pipeline\/landmark-pipeline?pretty\" -H 'Content-Type: application\/json' -d'\r\n{\r\n\"description\" : \"Converts the field name to uppercase and creates new field last_update_time \",\r\n\"processors\" : [ { \"uppercase\": { \"field\": \"name\" }, \"script\": { \"lang\": \"painless\", \"source\": \"ctx.last_update_time = new Date();\" } } ]\r\n}'<\/pre>\n<h6 style=\"padding-left: 40px\"><strong><span style=\"color: #339966\"><i>\u00a0 \u00a0 <span style=\"text-decoration: underline\">El comando curl anterior crea y guarda una definici\u00f3n de canalizaci\u00f3n en la base de datos Elasticsearch.<\/span><\/i><\/span><\/strong><\/h6>\n<h5 style=\"padding-left: 40px\"><span style=\"font-weight: 400\">2.  Abra un navegador web y navegue hasta Kibana en <\/span><a href=\"https:\/\/localhost:5601\"><span style=\"font-weight: 400\">https:\/\/localhost:5601<\/span><\/a><span style=\"font-weight: 400\">. Deber\u00eda poder ver la canalizaci\u00f3n que acaba de crear en Descubrir <strong>-&gt;<\/strong>\u00a0 \u00a0 \u00a0 \u00a0 Ingest Node Pipelines.<\/span><\/h5>\n<p style=\"padding-left: 40px\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8923 size-full\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2020\/07\/pipeline2.png\" alt=\"Ingest Node Pipeline installed\" width=\"1922\" height=\"1045\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/pipeline2.png 1922w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/pipeline2-300x163.png 300w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/pipeline2-1024x557.png 1024w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/pipeline2-768x418.png 768w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/pipeline2-1536x835.png 1536w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/pipeline2-20x11.png 20w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/pipeline2-1320x718.png 1320w\" sizes=\"auto, (max-width: 1922px) 100vw, 1922px\" \/><\/p>\n<h4><b>Configurar el conector Elasticsearch<\/b><\/h4>\n<h5 style=\"padding-left: 40px\"><span style=\"font-weight: 400\">1. Abra una nueva ventana de terminal y vaya a <span style=\"color: #3366ff\">BASE_DIR<\/span><\/span><i><span style=\"font-weight: 400\">\/<\/span><\/i><b>cbes\/config<\/b><\/h5>\n<h5 style=\"padding-left: 40px\"><b><\/b><span style=\"font-weight: 400\">2. Copie el archivo <span style=\"color: #999999\">ejemplo-conector.toml<\/span> y nombrarlo como <strong><span style=\"color: #999999\">conector-por-defecto.toml<\/span><\/strong>\u00a0ejecutando el siguiente comando<\/span><\/h5>\n<pre class=\"font:verdana width-set:true width:650 h-align:2 lang:sh decode:true\" title=\"Copiar y renombrar el archivo de configuraci\u00f3n\" style=\"padding-left: 40px\">cp example-connector.toml default-connector.toml<\/pre>\n<p style=\"padding-left: 40px\"><span style=\"font-weight: 400\">Connector asume la existencia de un archivo de configuraci\u00f3n default-connector.toml y lee este archivo para cualquier configuraci\u00f3n. Sin embargo, tambi\u00e9n se puede especificar la configuraci\u00f3n cuando se despliega el conector utilizando una opci\u00f3n de l\u00ednea de comandos - -config. Para este post usaremos la configuraci\u00f3n por defecto.<\/span><\/p>\n<h5 style=\"padding-left: 40px\"><span style=\"font-weight: 400\">3. Abra default-connector.toml en el editor de su elecci\u00f3n y modifique los siguientes par\u00e1metros de configuraci\u00f3n.Si desea obtener m\u00e1s informaci\u00f3n sobre los par\u00e1metros de configuraci\u00f3n de Elasticsearch Connector, vaya a <\/span><a href=\"https:\/\/docs.couchbase.com\/elasticsearch-connector\/current\/configuration.html\"><span style=\"font-weight: 400\">aqu\u00ed<\/span><\/a><span style=\"font-weight: 400\">.<\/span><\/h5>\n<p style=\"padding-left: 40px\"><span style=\"font-weight: 400\">\u00a0Si desea omitir este paso, puede encontrar un archivo de configuraci\u00f3n completo modificado <\/span><a href=\"https:\/\/gist.github.com\/AV25242\/5d82aca8b00d940729cff5a982bdab08\"><span style=\"font-weight: 400\">aqu\u00ed<\/span><\/a><span style=\"font-weight: 400\">.\u00a0\u00a0<\/span><\/p>\n<h6 style=\"padding-left: 40px;text-align: left\"><strong><span style=\"color: #339966\"><em>Sugerencia: Si es la primera vez que trabaja con el formato de archivo de configuraci\u00f3n TOML, consulte el excelente libro de Nate Finch<a style=\"color: #339966\" href=\"https:\/\/npf.io\/2014\/08\/intro-to-toml\/\"> Introducci\u00f3n a TOML<\/a>o el<a style=\"color: #339966\" href=\"https:\/\/github.com\/toml-lang\/toml\"> especificaci\u00f3n oficial<\/a>.\u00a0<\/em><\/span><\/strong><\/h6>\n<p style=\"padding-left: 80px\"><span style=\"font-weight: 400\">\u00a0a ) En virtud del <em>[<\/em><\/span><em><span style=\"font-weight: 400\">grupo]<\/span><\/em><span style=\"font-weight: 400\"> establece la clave name en \"landmark-example-group\".<\/span><\/p>\n<pre class=\"font:verdana width-set:true width:650 h-align:2 lang:default decode:true\" title=\"Configuraci\u00f3n de Toml\">[group]\r\nname = 'landmark-example-group'<\/pre>\n<p><span style=\"font-weight: 400\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0b) En virtud del <em>[elasticsearch.docStructure] <\/em>establezca la clave documentContentAtTopLevel en \"true\". <\/span><i><span style=\"font-weight: 400\">\u00a0<\/span><\/i><\/p>\n<pre class=\"font:verdana width-set:true width:650 h-align:2 lang:default decode:true\" title=\"Configuraci\u00f3n de Toml\">[elasticsearch.docStructure]\r\ndocumentContentAtTopLevel = true<\/pre>\n<p style=\"padding-left: 80px\"><span style=\"font-weight: 400\">c) Eliminar cualquier <em>[[elasticsearch.type]]<\/em> y sustit\u00fayalo por lo siguiente.<\/span><span style=\"font-weight: 400\">\u00a0 \u00a0\u00a0<\/span><\/p>\n<pre class=\"font:verdana width-set:true width:650 h-align:2 lang:default decode:true\" title=\"Configuraci\u00f3n de Toml\">[[elasticsearch.type]]\r\nprefix = '_sync:'\r\nignore = true\r\n\r\n[[elasticsearch.type]]\r\nprefix = 'landmark_'\r\nindex = 'landmark'\r\npipeline = 'landmark-pipeline'<\/pre>\n<h4 style=\"padding-left: 40px\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8931 size-full\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2020\/07\/config2.gif\" alt=\"Elasticsearch Configuration\" width=\"1891\" height=\"902\" \/><\/h4>\n<h4><\/h4>\n<h4><b>Despliegue del conector Elasticsearch<\/b><\/h4>\n<p style=\"padding-left: 40px\"><span style=\"font-weight: 400\">Ya est\u00e1 todo listo. Ahora es el momento de ver todo esto en acci\u00f3n.<\/span><\/p>\n<p style=\"padding-left: 40px\"><span style=\"font-weight: 400\">Los conectores Elasticsearch pueden desplegarse de tres modos diferentes\u00a0<\/span><\/p>\n<p style=\"padding-left: 40px\"><b>Solo<\/b><span style=\"font-weight: 400\"> :  Este es el modo m\u00e1s sencillo en el que el conector se ejecuta como un proceso independiente. El modo Solo es preferible en un entorno con poco tr\u00e1fico o en un entorno de desarrollo.<\/span><\/p>\n<p style=\"padding-left: 40px\"><b>Distribuido <\/b><span style=\"font-weight: 400\">: En este modo, varios conectores se ejecutan como procesos diferentes. En un escenario en el que el tr\u00e1fico es de moderado a alto, se recomienda este modo. A diferencia del modo solo, en el que un \u00fanico proceso dedicado realiza todo el trabajo, en un modo distribuido hay m\u00e1s de un proceso y cada conector se configura de forma independiente para compartir la carga de trabajo.<\/span><\/p>\n<p style=\"padding-left: 40px\"><b>Modo de funcionamiento aut\u00f3nomo : <\/b><span style=\"font-weight: 400\">Esto puede concebirse como un modo distribuido gestionado por un servicio coordinado. El servicio coordinado se encarga de la detecci\u00f3n de servicios y la gesti\u00f3n de la configuraci\u00f3n. A diferencia del modo distribuido, en el que es necesario detener y reiniciar los procesos antes de a\u00f1adir y eliminar un proceso conector, el servicio coordinado distribuye autom\u00e1ticamente la carga de trabajo cuando se a\u00f1ade o elimina un proceso trabajador, incluso en caso de fallo.<\/span><\/p>\n<p style=\"padding-left: 40px\"><span style=\"font-weight: 400\">Para este post vamos a desplegar el conector en modo Solo. Antes de iniciar el conector vamos a verificar el recuento de documentos en la fuente en Couchbase.<\/span><\/p>\n<h5 style=\"padding-left: 40px\"><span style=\"font-weight: 400\">1. Abra un navegador web y navegue al cluster Couchbase por ejemplo <\/span><a href=\"https:\/\/127.0.0.1:8091\/ui\/index.html\"><span style=\"font-weight: 400\">https:\/\/127.0.0.1:8091\/ui\/index.htm<\/span><\/a><span style=\"font-weight: 400\">l<\/span><\/h5>\n<p style=\"padding-left: 40px\"><span style=\"font-weight: 400\">Vaya al men\u00fa Consulta y ejecute la siguiente consulta<\/span><\/p>\n<pre class=\"font:verdana width-set:true width-mode:2 width:650 h-align:2 lang:tsql decode:true\" title=\"Obtener el recuento de documentos\">SELECT COUNT(*)\r\nFROM `travel-sample`\r\nWHERE META().id LIKE \u2018landmark_%\u2019<\/pre>\n<h6 style=\"padding-left: 40px\"><strong><span style=\"color: #339966\"><em>Esta consulta debe devolver el recuento de documentos del bucket muestra-viaje en los que la clave del documento empiece por \"landmark_\". En nuestro caso, el recuento es de 4.495 documentos.<\/em><\/span><\/strong><\/h6>\n<p style=\"padding-left: 40px\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8938 size-full\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2020\/07\/query.png\" alt=\"Couchbase Querybench Editor\" width=\"1467\" height=\"715\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/query.png 1467w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/query-300x146.png 300w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/query-1024x499.png 1024w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/query-768x374.png 768w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/query-20x10.png 20w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/query-1320x643.png 1320w\" sizes=\"auto, (max-width: 1467px) 100vw, 1467px\" \/><\/p>\n<h5 style=\"padding-left: 40px\"><span style=\"font-weight: 400\">2. Pongamos en marcha nuestro conector. <\/span><\/h5>\n<p style=\"padding-left: 40px\"><span style=\"font-weight: 400\">Abra una nueva ventana de terminal y vaya a <span style=\"color: #3366ff\">BASE_DIR<\/span><strong>\/cbes<\/strong> y t<\/span><span style=\"font-weight: 400\">Escriba el siguiente comando<\/span><\/p>\n<pre class=\"font:verdana width-set:true width:650 h-align:2 lang:sh decode:true\" title=\"Despliegue del conector Elasticsearch\">bin\/cbes<\/pre>\n<p style=\"padding-left: 40px\"><span style=\"font-weight: 400\">El conector deber\u00eda empezar a copiar documentos <span style=\"color: #808080\"><span style=\"color: #000000\">(<\/span><em>donde la clave del documento empieza por \"landmark_\"<\/em><span style=\"color: #000000\">)<\/span><\/span> de Couchbase <\/span><span style=\"font-weight: 400\">viaje-muestra<\/span><span style=\"font-weight: 400\"> en Elasticsearch. Mientras esto ocurre, la canalizaci\u00f3n del nodo Ingest convertir\u00e1 los valores de name a may\u00fasculas y tambi\u00e9n crear\u00e1 un campo last_update_time.<\/span><\/p>\n<h5 style=\"padding-left: 40px\"><span style=\"font-weight: 400\">3. Ahora vamos a comprobar si se aplicaron las transformaciones deseadas al replicar los documentos.<\/span><\/h5>\n<p style=\"padding-left: 80px\"><span style=\"font-weight: 400\">Abra un nuevo navegador y navegue hasta Kibana en <\/span><a href=\"https:\/\/localhost:5601\"><span style=\"font-weight: 400\">https:\/\/localhost:5601<\/span><\/a><\/p>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Vaya a <\/span><span style=\"font-weight: 400\">Descubrir -&gt; Patrones de \u00edndice y Definir un patr\u00f3n de \u00edndice. Deber\u00eda ver la opci\u00f3n landmark.<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">A continuaci\u00f3n, vaya a Gesti\u00f3n de \u00edndices en Descubrir -&gt; Gesti\u00f3n de \u00edndices. Deber\u00eda mostrarle el recuento de documentos deseado (4495).<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Para ver el documento real con la transformaci\u00f3n, abra una nueva ventana del navegador y navegue hasta Kibana en <\/span><a href=\"https:\/\/localhost:5601\"><span style=\"font-weight: 400\">https:\/\/localhost:5601.<\/span><\/a> Vaya a Discover y en la parte derecha, en _source, deber\u00eda ver <b>\"&gt;\" <\/b>s\u00edmbolo. Haga clic en \u00e9l y luego en JSON. Deber\u00eda ver el documento como se indica a continuaci\u00f3n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p style=\"padding-left: 40px\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8930 size-full\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2020\/07\/final2.gif\" alt=\"Results\" width=\"1891\" height=\"822\" \/><\/p>\n<h4><strong>Repita\u00a0<\/strong><\/h4>\n<p style=\"padding-left: 40px\"><span style=\"font-weight: 400\">Si quieres probar el mismo ejemplo con el mismo conjunto de datos pero con un procesador diferente, o si te has encontrado con un error y quieres empezar de nuevo, es muy sencillo. Todo lo que tienes que hacer es\u00a0<\/span><\/p>\n<ol>\n<li style=\"list-style-type: none\">\n<ol>\n<li style=\"list-style-type: none\">\n<ol>\n<li style=\"font-weight: 400\">\n<h5><span style=\"font-weight: 400\">Detener el proceso que ejecuta Kibana <span style=\"color: #999999\">(<\/span><span style=\"color: #999999\">pulse control + C)\u00a0<\/span><\/span><\/h5>\n<\/li>\n<li style=\"font-weight: 400\">\n<h5><span style=\"font-weight: 400\">Borrar todos los datos de Elasticsearch lanzando<\/span> un nuevo terminal y escribiendo el siguiente comando<\/h5>\n<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<pre class=\"font:verdana width-set:true width-mode:2 width:650 h-align:2 lang:sh decode:true\" title=\"Limpiar datos de Elasticsearch\">curl -X DELETE 'https:\/\/localhost:9200\/_all'<\/pre>\n<h5 style=\"padding-left: 40px\"><span style=\"font-weight: 400\">\u00a0 \u00a03.  Detener el proceso que ejecuta el conector Elasticsearch <\/span><span style=\"font-weight: 400\"><span style=\"color: #999999\">(<\/span><span style=\"color: #999999\">pulse control + C)\u00a0<\/span><\/span><\/h5>\n<h5 style=\"padding-left: 40px\"><span style=\"font-weight: 400\">\u00a0 \u00a04. C<\/span><span style=\"font-weight: 400\">lear punto de control del conector lanzando<\/span><span style=\"font-weight: 400\"> un nuevo terminal y escribiendo el siguiente comando<\/span><span style=\"font-weight: 400\">\u00a0 \u00a0<\/span><\/h5>\n<pre class=\"font:verdana width-set:true width-mode:2 width:650 h-align:2 lang:sh decode:true\" title=\"Borrar punto de control del conector\">cbes-checkpoint-clear<\/pre>\n<h5><span style=\"font-weight: 400\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 5. Reinicie Kibana, modifique el pipeline , modifique la configuraci\u00f3n del conector como desee y reinicie el conector.<\/span><\/h5>\n<hr \/>\n<h4><b>Conclusi\u00f3n<\/b><\/h4>\n<p style=\"padding-left: 40px\"><span style=\"font-weight: 400\">Hemos examinado c\u00f3mo utilizar el conector Couchbase Elasticsearch, para replicar un conjunto de datos de Couchbase a Elasticsearch en modo solitario utilizando un pipeline de nodo Ingest. Ahora est\u00e1s listo para explorar diferentes procesadores de Pipeline y ajustes de configuraci\u00f3n dentro del conector Elasticsearch.<\/span><\/p>\n<p style=\"padding-left: 40px\"><span style=\"color: #000000\">Por fin un <\/span><span style=\"color: #000080\">\"MUCHAS GRACIAS\"<\/span> \u00a1a mis colegas Matt Ingenthron, David Nault y Jared Casey por ayudarme a llegar a la meta de este blog !<\/p>\n<p style=\"padding-left: 40px\"><span style=\"font-weight: 400\">Si te ha gustado este post o tienes alguna pregunta, d\u00e9janos tus comentarios.<\/span><\/p>\n<p>&nbsp;<\/p>","protected":false},"excerpt":{"rendered":"<p>Recently, as I was exploring our documentation to acquaint myself with the capabilities of Elasticsearch Connector 4.2, I came across a configuration called Pipeline. I was curious to explore and understand what it means and what purpose does this solve. [&hellip;]<\/p>","protected":false},"author":58641,"featured_media":8936,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[1814,2242,1816,2389,2201],"tags":[1295,1292],"ppma_author":[9111],"class_list":["post-8912","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-application-design","category-connectors","category-couchbase-server","category-solutions","category-tools-sdks","tag-connectors","tag-elasticsearch"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.7.1 (Yoast SEO v25.7) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Using Elasticsearch Connector with Ingest Node Pipeline - The Couchbase Blog<\/title>\n<meta name=\"description\" content=\"Replicating data from Couchbase to Elasticsearch using Elasticsearch Connector and Ingest Node Pipeline\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.couchbase.com\/blog\/es\/elasticsearch-connector-and-ingest-node-pipeline\/\" \/>\n<meta property=\"og:locale\" content=\"es_MX\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Using Elasticsearch Connector with Ingest Node Pipeline\" \/>\n<meta property=\"og:description\" content=\"Replicating data from Couchbase to Elasticsearch using Elasticsearch Connector and Ingest Node Pipeline\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/es\/elasticsearch-connector-and-ingest-node-pipeline\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2020-07-22T17:27:06+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-07-24T15:36:36+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2020\/07\/Elasticity-Blog-Banner.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"900\" \/>\n\t<meta property=\"og:image:height\" content=\"411\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Arun Vijayraghavan\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Arun Vijayraghavan\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/elasticsearch-connector-and-ingest-node-pipeline\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/elasticsearch-connector-and-ingest-node-pipeline\/\"},\"author\":{\"name\":\"Arun Vijayraghavan\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/159f967ae0328d6bd25d6389be35e843\"},\"headline\":\"Using Elasticsearch Connector with Ingest Node Pipeline\",\"datePublished\":\"2020-07-22T17:27:06+00:00\",\"dateModified\":\"2020-07-24T15:36:36+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/elasticsearch-connector-and-ingest-node-pipeline\/\"},\"wordCount\":1613,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/elasticsearch-connector-and-ingest-node-pipeline\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/Elasticity-Blog-Banner.jpg\",\"keywords\":[\"connectors\",\"elasticsearch\"],\"articleSection\":[\"Application Design\",\"Connectors\",\"Couchbase Server\",\"Solutions\",\"Tools &amp; SDKs\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/elasticsearch-connector-and-ingest-node-pipeline\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/elasticsearch-connector-and-ingest-node-pipeline\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/elasticsearch-connector-and-ingest-node-pipeline\/\",\"name\":\"Using Elasticsearch Connector with Ingest Node Pipeline - The Couchbase Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/elasticsearch-connector-and-ingest-node-pipeline\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/elasticsearch-connector-and-ingest-node-pipeline\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/Elasticity-Blog-Banner.jpg\",\"datePublished\":\"2020-07-22T17:27:06+00:00\",\"dateModified\":\"2020-07-24T15:36:36+00:00\",\"description\":\"Replicating data from Couchbase to Elasticsearch using Elasticsearch Connector and Ingest Node Pipeline\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/elasticsearch-connector-and-ingest-node-pipeline\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/elasticsearch-connector-and-ingest-node-pipeline\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/elasticsearch-connector-and-ingest-node-pipeline\/#primaryimage\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/Elasticity-Blog-Banner.jpg\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/Elasticity-Blog-Banner.jpg\",\"width\":900,\"height\":411,\"caption\":\"Elasticsearch Connector in Action\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/elasticsearch-connector-and-ingest-node-pipeline\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Using Elasticsearch Connector with Ingest Node Pipeline\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"name\":\"The Couchbase Blog\",\"description\":\"Couchbase, the NoSQL Database\",\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\",\"name\":\"The Couchbase Blog\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"width\":218,\"height\":34,\"caption\":\"The Couchbase Blog\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/159f967ae0328d6bd25d6389be35e843\",\"name\":\"Arun Vijayraghavan\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/042b27309bc3f10ef696264d6a250a75\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/c4ecf222f7ec7d1f7bb6305543ab979690ed30f98bbc8fa806ffca5bf8cf3dd8?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/c4ecf222f7ec7d1f7bb6305543ab979690ed30f98bbc8fa806ffca5bf8cf3dd8?s=96&d=mm&r=g\",\"caption\":\"Arun Vijayraghavan\"},\"description\":\"Arun Vijayraghavan is the Principal Product Manager for SDK and Connectors at Couchbase. As a customer obsessed product leader, he strives to shape the future of products, making critical decisions between performance, features, and time-to-market. He has a demonstrated ability and an established track record of over 20 years of providing strategic guidance to companies to launch developer platforms and new products in order to pull together the single vision of maximizing business value of the product. Arun holds dual master degree's in Physics and Information Technology.\",\"sameAs\":[\"https:\/\/www.couchbase.com\",\"https:\/\/www.linkedin.com\/in\/avijayraghavan\/\"],\"url\":\"https:\/\/www.couchbase.com\/blog\/es\/author\/arun-vijayraghavan\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Using Elasticsearch Connector with Ingest Node Pipeline - The Couchbase Blog","description":"Replicating data from Couchbase to Elasticsearch using Elasticsearch Connector and Ingest Node Pipeline","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.couchbase.com\/blog\/es\/elasticsearch-connector-and-ingest-node-pipeline\/","og_locale":"es_MX","og_type":"article","og_title":"Using Elasticsearch Connector with Ingest Node Pipeline","og_description":"Replicating data from Couchbase to Elasticsearch using Elasticsearch Connector and Ingest Node Pipeline","og_url":"https:\/\/www.couchbase.com\/blog\/es\/elasticsearch-connector-and-ingest-node-pipeline\/","og_site_name":"The Couchbase Blog","article_published_time":"2020-07-22T17:27:06+00:00","article_modified_time":"2020-07-24T15:36:36+00:00","og_image":[{"width":900,"height":411,"url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2020\/07\/Elasticity-Blog-Banner.jpg","type":"image\/jpeg"}],"author":"Arun Vijayraghavan","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Arun Vijayraghavan","Est. reading time":"9 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/elasticsearch-connector-and-ingest-node-pipeline\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/elasticsearch-connector-and-ingest-node-pipeline\/"},"author":{"name":"Arun Vijayraghavan","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/159f967ae0328d6bd25d6389be35e843"},"headline":"Using Elasticsearch Connector with Ingest Node Pipeline","datePublished":"2020-07-22T17:27:06+00:00","dateModified":"2020-07-24T15:36:36+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/elasticsearch-connector-and-ingest-node-pipeline\/"},"wordCount":1613,"commentCount":0,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/elasticsearch-connector-and-ingest-node-pipeline\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/Elasticity-Blog-Banner.jpg","keywords":["connectors","elasticsearch"],"articleSection":["Application Design","Connectors","Couchbase Server","Solutions","Tools &amp; SDKs"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/elasticsearch-connector-and-ingest-node-pipeline\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/elasticsearch-connector-and-ingest-node-pipeline\/","url":"https:\/\/www.couchbase.com\/blog\/elasticsearch-connector-and-ingest-node-pipeline\/","name":"Using Elasticsearch Connector with Ingest Node Pipeline - The Couchbase Blog","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/elasticsearch-connector-and-ingest-node-pipeline\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/elasticsearch-connector-and-ingest-node-pipeline\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/Elasticity-Blog-Banner.jpg","datePublished":"2020-07-22T17:27:06+00:00","dateModified":"2020-07-24T15:36:36+00:00","description":"Replicating data from Couchbase to Elasticsearch using Elasticsearch Connector and Ingest Node Pipeline","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/elasticsearch-connector-and-ingest-node-pipeline\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/elasticsearch-connector-and-ingest-node-pipeline\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/elasticsearch-connector-and-ingest-node-pipeline\/#primaryimage","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/Elasticity-Blog-Banner.jpg","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2020\/07\/Elasticity-Blog-Banner.jpg","width":900,"height":411,"caption":"Elasticsearch Connector in Action"},{"@type":"BreadcrumbList","@id":"https:\/\/www.couchbase.com\/blog\/elasticsearch-connector-and-ingest-node-pipeline\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Using Elasticsearch Connector with Ingest Node Pipeline"}]},{"@type":"WebSite","@id":"https:\/\/www.couchbase.com\/blog\/#website","url":"https:\/\/www.couchbase.com\/blog\/","name":"El blog de Couchbase","description":"Couchbase, la base de datos NoSQL","publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/www.couchbase.com\/blog\/#organization","name":"El blog de Couchbase","url":"https:\/\/www.couchbase.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","width":218,"height":34,"caption":"The Couchbase Blog"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/159f967ae0328d6bd25d6389be35e843","name":"Arun Vijayraghavan","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/042b27309bc3f10ef696264d6a250a75","url":"https:\/\/secure.gravatar.com\/avatar\/c4ecf222f7ec7d1f7bb6305543ab979690ed30f98bbc8fa806ffca5bf8cf3dd8?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c4ecf222f7ec7d1f7bb6305543ab979690ed30f98bbc8fa806ffca5bf8cf3dd8?s=96&d=mm&r=g","caption":"Arun Vijayraghavan"},"description":"Arun Vijayraghavan es el Director Principal de Producto para SDK y Conectores en Couchbase. Como l\u00edder de producto obsesionado con el cliente, se esfuerza por dar forma al futuro de los productos, tomando decisiones cr\u00edticas entre rendimiento, caracter\u00edsticas y tiempo de comercializaci\u00f3n. Tiene una capacidad demostrada y un historial establecido de m\u00e1s de 20 a\u00f1os proporcionando orientaci\u00f3n estrat\u00e9gica a empresas para lanzar plataformas de desarrolladores y nuevos productos con el fin de aunar la visi\u00f3n \u00fanica de maximizar el valor empresarial del producto. Arun posee un m\u00e1ster doble en F\u00edsica y Tecnolog\u00eda de la Informaci\u00f3n.","sameAs":["https:\/\/www.couchbase.com","https:\/\/www.linkedin.com\/in\/avijayraghavan\/"],"url":"https:\/\/www.couchbase.com\/blog\/es\/author\/arun-vijayraghavan\/"}]}},"authors":[{"term_id":9111,"user_id":58641,"is_guest":0,"slug":"arun-vijayraghavan","display_name":"Arun Vijayraghavan","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/c4ecf222f7ec7d1f7bb6305543ab979690ed30f98bbc8fa806ffca5bf8cf3dd8?s=96&d=mm&r=g","first_name":"Arun","last_name":"Vijayraghavan","user_url":"https:\/\/www.couchbase.com","author_category":"","description":"Arun Vijayraghavan es el Director Principal de Producto para SDK y Conectores en Couchbase. Como l\u00edder de producto obsesionado con el cliente, se esfuerza por dar forma al futuro de los productos, tomando decisiones cr\u00edticas entre rendimiento, caracter\u00edsticas y tiempo de comercializaci\u00f3n. Tiene una capacidad demostrada y un historial establecido de m\u00e1s de 20 a\u00f1os proporcionando orientaci\u00f3n estrat\u00e9gica a empresas para lanzar plataformas de desarrolladores y nuevos productos con el fin de aunar la visi\u00f3n \u00fanica de maximizar el valor empresarial del producto. Arun posee un m\u00e1ster doble en F\u00edsica y Tecnolog\u00eda de la Informaci\u00f3n."}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts\/8912","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/users\/58641"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/comments?post=8912"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts\/8912\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/media\/8936"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/media?parent=8912"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/categories?post=8912"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/tags?post=8912"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/ppma_author?post=8912"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}