Creación del índice de HCL Commerce Search
Puede crear el índice de HCL Commerce Search utilizando la llamada RESTful de creación de índice. Si está utilizando el motor de búsqueda Solr, el índice se crea utilizando el servicio Data Import Handler (DIH). Si está utilizando Elasticsearch, se llama al servicio de introducción. Para obtener más información, consulte Crear el índice de Elasticsearch.
Antes de empezar
Si está utilizando Apache Solr como plataforma de búsqueda, asegúrese de que se hayan cumplido los siguientes requisitos previos.
- Entorno de desarrollo
- Asegúrese de que Transaction server y Search server se inician en Rational Application Developer.
- Asegúrese de que puede visitar Solr a través de HTTP, por ejemplo: http://search_hostname:search_http_port/solr/admin/cores?
- Entorno de ejecución
- Asegúrese que el servidor de transacciones y el servidor de búsqueda están en ejecución.
- Asegúrese de que puede visitar Solr a través de HTTP, por ejemplo http://search_hostname:search_http_port/solr/admin/cores? . Utilizará HTTPS para realizar la llamada de creación de índice real. Puede ejecutar solicitudes HTTPS POST utilizando un complemento de navegador, por ejemplo, HttpRequester para Mozilla Firefox o Postman para Google Chrome.
- En los dos entornos, asegúrese de haber actualizado los certificados para el servidor de transacciones antes de realizar la llamada REST de creación de índice. Añada el certificado a la lista de confianza del navegador accediendo al URL de solicitud directamente con el navegador. Las dos formas de hacerlo son:
- Si está utilizando un plugin de cliente HTTP, como Postman, DHC o HttpRequester, visite el URL de creación de índice mediante el navegador en el que el plugin está instalado y añada una excepción para el certificado autofirmado. A continuación, llame al inicio de sesión spi de REST de creación de índice utilizando el plugin.
- Desde un indicador de mandatos, emita el siguiente mandato:
curl -k -s -X POST -u spiuser:spi_plain_text_password https://ts-server-hostname:ts-https-prt/wcs/resources/admin/index/dataImport/build?masterCatalogId=master-catalog-id
Procedimiento
-
Ejecute el mandato REST de creación de índice. El método es POST y debe incluir autorización básica en la cabecera, es decir, un ID spiuser y su correspondiente password. Haga que la solicitud de publicación HTTPS utilizando un complemento de navegador como, por ejemplo, HttpRequester, para Mozilla Firefox o Postman, para Google Chrome.
La llamada de creación de índice actualiza la información en el índice maestro utilizando el servicio Data Import Handler (DIH) para crear el índice. Crea el índice parcialmente mediante actualizaciones de índice delta o completamente mediante creaciones de índice completas. Cuando existen varios índices, por ejemplo, cada idioma utiliza un índice propio independiente, el índice se crea varias veces. En el entorno de desarrollo, el transaction_server_https_port es el valor predeterminado, de modo que puede especificar 443 o dejarlo en blanco a menos que lo haya cambiado. En el entorno de ejecución, el número de puerto es 5443. Si no está seguro del número de puerto, inicie la sesión en el servidor de transacciones y ejecute el mandato docker ps para encontrar la correlación de puertos del proceso
ts-app
. El mandato para crear el índice es:https://transaction_server_hostname:transaction_server_https_port/wcs/resources/admin/index/dataImport/build?masterCatalogId=masterCatalogId
Donde:- masterCatalogId
- Se necesita: El ID del catálogo maestro (por ejemplo, 10101).Si no conoce el ID del catálogo maestro, ejecute el SQL siguiente:
SQL: select * from catalog where IDENTIFIER='STORE_IDENTIFIER'
Para averiguar el ID de catálogo maestro para una tienda de sitio ampliado:- Busque el ID de tienda:
select * from storeent where IDENTIFIER='STORE_IDENTIFIER'
- Utilice el storeent_id como el store_id en el siguiente SQL para averiguar el ID de tienda con elementos de catálogo de esta tienda de sitio ampliado:
Donde XXXXXX es el storeent_id del SQL del paso 1.a al crear el índice de búsqueda.select * from storerel where store_id=XXXXXX and streltyp_id=-4 and relatedstore_id not in (XXXXXX)
- Obtenga el ID de catálogo maestro:
Donde YYYYYY es el relatedstore_id del paso 1.b al crear el índice de búsqueda.select * from storecat where storeent_id=YYYYYY and mastercatalog='1'
- Busque el ID de tienda:
- indexType
- Opcional: Indica el índice de motor de búsqueda a configurar para un nivel más granular de indexación. Los valores válidos son:
- CatalogEntry: Configura el índice para entradas de catálogo en el catálogo maestro.
- CatalogGroup: Configura el índice para categorías en el catálogo maestro.
Si no utiliza el parámetro indextype, los índices CatalogEntry y CatalogGroup se crean de forma predeterminada.
- indexSubType
- Opcional: Indica los subtipos de índice del motor de búsqueda para configurar. Este parámetro solo acepta un valor a la vez. No acepta valores múltiples. Los valores válidos son:
- Structured
- Configura el índice para el contenido estructurado.
- Unstructured
- Configura el índice para el contenido no estructurado.
- WebContent
- Configura el índice para el contenido de sitio.
- Inventario
- Configura el índice para datos de inventario.
- Precio
- Si el índice de precios está incluido en el núcleo de CatalogEntry, este parámetro solo calcula el precio. Si el índice de precios se encuentra en un núcleo de índice de Solr distinto, este parámetro calcula precios e inicializa el índice para los datos de precios.
Si no utiliza el parámetro indexSubType, los subtipos de índice Structured, Unstructured y WebContent se crean de forma predeterminada. Si establece indexType en CatalogGroup, puede establecer indexSubType en Structured. Puede establecer cualquier valor de indexSubType cuando se establece CatalogEntry para que sea el valor indextype.
- fullBuild
- Opcional: Distintivo que indica si se trata de una compilación de índice completa. Los valores aceptados son true o false. El valor predeterminado es true.
- localeName
- Opcional: El entorno local para el índice.
- All
de_DE
en_US
es_ES
fr_FR
it_IT
ja_JP
ko_KR
pl_PL
pt_BR
ro_RO
ru_RU
zh_CN
zh_TW
Nota: Para indexar un nuevo idioma, este idioma debe añadirse en la tabla SRCHCONF y la tabla SRCHCONFEXT. Para obtener más información, consulte Indexar un nuevo idioma en la HCL Commerce Search.
La respuesta para la llamada RESTFul para la creación de indice es parecida al siguiente ejemplo:
donde 1001 es el ID de trabajo para esta creación de índice.{"jobStatusId":1001}
-
Compruebe el estado de la creación de índice.
Si está comprobando el estado de la creación de un índice, emita la siguiente solicitud de http:
También puede comprobar el estado utilizando el mandato de Linux cURL.https://{ts_server_hostname}:{ts_https_port}/wcs/resources/admin/index/dataImport/status?jobStatusId={jobstatusId} Method: GET header: basic auth for spiuser and its password
curl -k -u spiuser:plain_text_spiuserPassword -X GET https://hostname:3738/search/admin/resources/index/build/status?jobStatusId=jobstatusId