Migrar la búsqueda basada en REST a HCL Commerce Version 9
Migre las configuraciones y el índice de búsqueda basado en REST de una versión previa de HCL Commerce a HCL Commerce versión 9.0.0.3+.
HCL Commerce versión 9.0.0.3+ utiliza Solr 5.4.4, de forma que Solr 5.4.4 no admite datos de índice de versiones anteriores de Solr.
- El servidor de HCL Commerce Search tiene su propio contenedor en el entorno de producción. Despliegue el servidor de HCL Commerce Search como parte del conducto CI/CD.
- El modelo de programación para HCL Commerce Search ha cambiado para coincidir con la nueva compilación y el proceso de despliegue en HCL Commerce versión 9.0.0.3+. La base del nuevo modelo de programación es separar elementos de HCL Commerce Search personalizados del código de producto, que reduce el coste de recursos de mantenimiento y funcionamiento. Las personalizaciones siguientes se deben actualizar para el nuevo modelo de programación:
- El tiempo de ejecución de Solr se actualiza a 5.5.4, de modo que las personalizaciones en Solr se deben actualizar para seguir el nuevo modelo de programación.
- Los programas de utilidad de HCL Commerce Search se sustituyen por el servicio del programa de utilidad del contenedor, que incluye di-preprocess, di-buildindex, di-calculateprice y indexprop. El programa de utilidad SetupSearchIndex se deja de mantener. El directorio principal del índice se sincroniza automáticamente con la tabla SRCHCONF y la tabla SRCHCONFEXT cuando se ha iniciado el servidor HCL Commerce Search. Esto le permite crear un nuevo núcleo maestro, núcleo de extensión o lenguaje para mantener las tablas SRCHCONF y SRCHCONFEXT. El núcleo del espacio de trabajo se crea automáticamente si el servidor de HCL Commerce Search detecta el esquema del espacio de trabajo en un entorno de creación.
- En HCL Commerce versión 9.0.0.3+, la vista de la tabla se utiliza para realizar el preproceso y la creación del índice, por consiguiente las personalizaciones en la creación del preproceso y del índice se deben reconfigurar según la nueva guía de programación.
- En HCL Commerce versión 9.0.0.3+, el planificador común basado en la fundación está habilitado en el servidor de HCL Commerce Search. Los entornos de creación utilizan el planificador para replicar el índice de los entornos de creación al repetidor de HCL Commerce Search.
- HCL Commerce versión 9.0.0.3+ se ha movido a JAX-RS 2.0 (JSR-339). Además, la API de la documentación es Swagger 2.0.
- Versiones anteriores a HCL Commerce utilizaban llamadas JDBC directas, que atravesaban DSL (data service layer) a la base de datos. En HCL Commerce versión 9.0.0.3+, se utiliza la consulta nativa JPA 2.1 (EclipseLink). Las consultas personalizadas de versiones anteriores se transfieren al nuevo servicio de consulta. No se requiere ninguna configuración adicional.
- En HCL Commerce versión 9.0.0.3+, cuando Price o Inventary funcionan como núcleo ampliado,
SolrJoin
conserva la relación de documento entre el núcleo principal deCatalogEntry
y el subnúcleo de Price/Inventory.MultipleQueryComponent
yMultipleFacetComponent
, que se han utilizado para unir o filtrar los subnúcleos de versiones anteriores de HCL Commerce, ahora se han dejado de mantener. Para gestionar los campos de facetas y resultados de índices de extensión, un nuevoSearchCatalogEntryExtensionIndexPostprocessor
realiza una subconsulta en cada uno de los índices, a continuación se une con el índice principal. También se ha introducido un nuevo parámetro de unión en wc-search.xml, de forma que cualquier personalización de la versión 8.0 a un índice de extensión se debe implementar para utilizarSolrJoin
.
Antes de empezar
- Descarte todas las tablas temporales, incluidas las tablas temporales personalizadas, pero excluya las siguientes tablas temporales:
TI_DELTA_CATENTRY
TI_DELTA_CATGROUP
TI_DELTA_INVENTORY
Sus tablas temporales usan un prefijo
TI_
. Mientras que sus tablas temporales personalizadas usan un prefijoXI_
.Los cambios realizados en las tablas temporales entre las versiones anteriores de HCL Commerce y HCL Commerce Version 9. Si no se logran descartar las tablas temporales pueden producirse errores de preproceso, por ejemplo, SQLSTAE=56098. Para obtener más información sobre las tablas de búsqueda temporales HCL Commerce, consulte definición de esquema de tabla temporal.
Procedimiento
-
Migre los núcleos de índice. En HCL Commerce versión 9.0.0.3+, el programa de utilidad setupSearchIndex se ha dejado de mantener. Ahora debe mantener la tabla SRCHCONF y la tabla SRCHCONFEXT para configurar la distribución del índice.
- Migre las personalizaciones de esquema de índice. En HCL Commerce versión 9.0.0.3+, las definiciones de la entrada del catálogo
fieldType
utilizan dos plantillas:- Una plantilla no personalizable: search-config/src/main/resources/managed-solr/config/v3/common/schema-field-types.xml.Nota: Cuando se crea el primer índice, este archivo XML se copia en el directorio resources/search/index/managed-solr/config/v3/common. Tras la creación del índice, otros índices comparten esta definición .Tras la creación del índice, otros índices comparten esta definición fieldType.
- Una plantilla personalizable: search-config-ext/src/main/resources/index/managed-solr/config/v3/common/x-schema-field-types.xml. Nota: Cuando se crea el primer índice, este archivo XML se copia en el directorio resources/search/index/managed-solr/config/v3-index-ext/common. Tras la creación del índice, otros índices comparten esta definición fieldType personalizable.
- Una plantilla no personalizable: search-config/src/main/resources/managed-solr/config/v3/common/schema-field-types.xml.
-
Migre los elementos de archivo admitidos de Solr.
-
Migre la configuración de tiempo de ejecución de búsqueda de HCL Commerce.
- En versiones anteriores de HCL Commerce, podría crear una consulta SQL en el archivo Search_eardir/xml/config/com.ibm.commerce.catalog/wc-query-utilities.tpl y basarse en
JDBCQueryService
que recuperara datos del servidor de HCL Commerce Search. En HCL Commerce versión 9.0.0.3+, debe actualizar el archivo workspace_dir/search-config-ext/runtime.config/com.ibm.commerce.search/wc-query.tpl. Más adelante, cuando despliegue las personalizaciones, el archivo. tpl se despliega en el directorio Liberty_installdir/resources/search/runtime/config/com.ibm.commerce.search-ext. - En versiones anteriores, es posible que haya creado proveedores de expresión, preprocesadores o posprocesadores personalizados en el proyecto WebSphereCommerceServerExtensionsLogic. En HCL Commerce versión 9.0.0.3+, debe crear estas personalizaciones en el directorio workspace_dir/search-logic-ext.