Canalizaciones de índice de URL de Ingest
Se muestran las correlaciones de datos completas de especificación, base de datos y esquema para la categoría URL.
Especificación de datos de URL
_id | Serie | UUID | SEOURL.SEOURL_ID | |
---|---|---|---|---|
identifier | Serie | URL de SEO relativa e identificador exclusivo para este registro | shop/womens/bottomsunique identifier (sin barra diagonal) | SEOURLKEYWORD.URLKEYWORD |
estado |
entero | Estado actual de URL | 0 - Inactiva SEOURL1 - Activa SEOURL2 - Caducada SEOURL | SEOURLKEYWORD.STATUS |
storeId | entero | ID de tienda para esta URL de SEO | | |
languageId | entero | ID de idioma para esta URL | -1 | |
TokenName | Serie | Nombre para representar el tipo de página | StaticPagesToken, ProductToken, CategoryToken | SEOURL.TOKENNAME |
tokenValue | Serie | Identificador de la página o identificador de objeto que representa la página | p.ej., 10001 | SEOURL.TOKENVALUE que se puede correlacionar con CATGROUP.CATGROUP_IDCATENTRY.CATENTRY_ID o un identificador de página estática |
tokenExternalValue | Serie | Identificador del identificador de objeto externo para el objeto identificado en tokenValue | Por ejemplo: Baño, es decir, BR-ACCE-0001 | El identificador externo para TOKENVALUE y TOKENNAME especificados. Si TOKENNAME es CategoryToken, este campo se correlaciona con CATGROUP.IDENTIFIER y si TOKENNAME es ProductToken, este campo se correlaciona con CATENTRY.PARTNUMBER |
redirectURL | Serie | URL para redirigir si seoURL está inactivo | /shop/womens/modern/bottoms (URL a la que redirigirse si es aplicable con barra diagonal o totalmente calificada si va a ser externa) | SEOURLKEYWORD.URLKEYWORD para SEOREDIRECT.SEOURLKEYWD_NEW de registro relacionado |
page.name | Serie | Nombre de página | CategoryPage, ProductPage, HomePage | SEOPAGEDEF.PAGENAME |
PageType | Serie | Tipo de página para calificar el tipo de página | Se utiliza con pageName para calificar la página. CategoryPage, ProductListingPage, ProductPage, ItemPage ,BundlePage, KitPage, DynamicKitPage | Campo derivado |
page.layoutName | Serie | Identificador de diseño opcional para anular la página | Para 9.1: se utiliza para anular una página de visualización de categoría o producto | Campo derivado |
page.title | Serie | Metadatos de título de página para SEO | Parte inferior para mujer | Jjill | SEOPAGEDEFDESC.TITLE |
page.metaDescription | Serie | Descripción meta de página para SEO | SEOPAGEDEFDESC.META_DESC | |
page.metaKeyword | Serie | Etiquetas/palabras clave meta de página para SEO | SEOPAGEDEFDESC.META_KEYWORD | |
page.imageAlternateDescription | Serie | Descripciones alternativas de imagen de página | SEOPAGEDEFDESC.IMAGE_ALT_DESC |
Correlación de campos de índice de URL de la base de datos
- Crear documento de URL de categoría
- Crear el documento de URL de producto
- Actualizar tipo de página para documento de URL de categoría
- Actualizar URL de categoría para el lenguaje de reserva
- Actualizar URL de producto para el lenguaje de reserva
- Actualizar URL de SEO al documento de categoría
- Actualizar URL de SEO al documento de producto
Paso 1 Crear documento de URL de categoría
(SELECT A.SEOURL_ID, B.SEOURLKEYWORD_ID, B.URLKEYWORD, B.MOBILEURLKEYWORD, B.STOREENT_ID, B.STATUS,
B.LANGUAGE_ID, C.SEOURLKWD_ID_NEW, D.URLKEYWORD URLKEYWORD_NEW, A.TOKENNAME, A.TOKENVALUE, L.LOCALENAME,
P.DISPLAYNAME, P.DESCRIPTION, P.CATGROUP_ID, P.NAME, P.SHORTDESCRIPTION, P.KEYWORD,
P.SITE_SEOPAGEDEF_ID, P.SITE_PAGENAME, P.SITE_TITLE, P.SITE_META_DESC, P.SITE_META_KEYWORD,
P.SITE_IMAGE_ALT_DESC, P.SITE_OBJECT_ID, P.SITE_STOREENT_ID, P.IDENTIFIER,
P.OVERRIDE_SEOPAGEDEF_ID, P.OVERRIDE_PAGENAME, P.OVERRIDE_TITLE, P.OVERRIDE_META_DESC,
P.OVERRIDE_META_KEYWORD, P.OVERRIDE_IMAGE_ALT_DESC, P.OVERRIDE_OBJECT_ID, TO_CHAR(P.OVERRIDE_STOREENT_ID) OVERRIDE_STOREENT_ID
FROM SEOURL A, SEOURLKEYWORD B
LEFT OUTER JOIN SEOREDIRECT C ON B.SEOURLKEYWORD_ID=C.SEOURLKWD_ID_ORIG
LEFT OUTER JOIN SEOURLKEYWORD D ON C.SEOURLKWD_ID_NEW=D.SEOURLKEYWORD_ID
LEFT OUTER JOIN LANGUAGE L ON B.LANGUAGE_ID = L.LANGUAGE_ID
LEFT OUTER JOIN (
SELECT COALESCE(S.DISPLAYNAME, SD.DISPLAYNAME) DISPLAYNAME,
COALESCE(S.DESCRIPTION, SD.DESCRIPTION) DESCRIPTION,
CG.IDENTIFIER, CD.CATGROUP_ID, CD.NAME, CD.KEYWORD, CD.SHORTDESCRIPTION,
E.SEOPAGEDEF_ID SITE_SEOPAGEDEF_ID,
E.PAGENAME SITE_PAGENAME,
E.TITLE SITE_TITLE,
E.META_DESC SITE_META_DESC,
E.META_KEYWORD SITE_META_KEYWORD,
E.IMAGE_ALT_DESC SITE_IMAGE_ALT_DESC,
E.OBJECT_ID SITE_OBJECT_ID,
E.STOREENT_ID SITE_STOREENT_ID,
F.SEOPAGEDEF_ID OVERRIDE_SEOPAGEDEF_ID,
F.PAGENAME OVERRIDE_PAGENAME,
F.TITLE OVERRIDE_TITLE,
F.META_DESC OVERRIDE_META_DESC,
F.META_KEYWORD OVERRIDE_META_KEYWORD,
F.IMAGE_ALT_DESC OVERRIDE_IMAGE_ALT_DESC,
F.OBJECT_ID OVERRIDE_OBJECT_ID,
F.STOREENT_ID OVERRIDE_STOREENT_ID
FROM STOREENTDS S
INNER JOIN STORE ST ON S.STOREENT_ID=ST.STORE_ID
INNER JOIN CATGRPDESC CD ON S.LANGUAGE_ID=CD.LANGUAGE_ID ${extCatgroupAndSQL1b}
INNER JOIN CATGROUP CG ON CG.CATGROUP_ID=CD.CATGROUP_ID
${TI_DELTA_CG_URL_JOIN_QUERY}
INNER JOIN STOREENTDS SD ON ST.STORE_ID=SD.STOREENT_ID
LEFT OUTER JOIN (
SELECT SC.OBJECT_ID OBJECT_ID,
SA.SEOPAGEDEF_ID SEOPAGEDEF_ID,
SA.PAGENAME PAGENAME,
SB.TITLE TITLE,
SB.META_DESC META_DESC,
SB.META_KEYWORD META_KEYWORD,
SB.IMAGE_ALT_DESC IMAGE_ALT_DESC,
SA.STOREENT_ID STOREENT_ID
FROM SEOPAGEDEF SA, SEOPAGEDEFDESC SB, SEOPAGEDEFOVR SC
WHERE SA.SEOPAGEDEF_ID=SB.SEOPAGEDEF_ID AND SA.SEOPAGEDEF_ID=SC.SEOPAGEDEF_ID
AND SA.STOREENT_ID IN (SELECT RELATEDSTORE_ID FROM STOREREL
WHERE STORE_ID=${param.storeId} AND STRELTYP_ID=-4)
AND SB.LANGUAGE_ID=${param.langId}
AND SC.OBJECTTYPE = 'CatalogGroup') E ON E.OBJECT_ID = 0
LEFT OUTER JOIN (
SELECT SC.OBJECT_ID OBJECT_ID,
SA.SEOPAGEDEF_ID SEOPAGEDEF_ID,
SA.PAGENAME PAGENAME,
SB.TITLE TITLE,
SB.META_DESC META_DESC,
SB.META_KEYWORD META_KEYWORD,
SB.IMAGE_ALT_DESC IMAGE_ALT_DESC,
SA.STOREENT_ID STOREENT_ID
FROM SEOPAGEDEF SA, SEOPAGEDEFDESC SB, SEOPAGEDEFOVR SC
WHERE SA.SEOPAGEDEF_ID=SB.SEOPAGEDEF_ID AND SA.SEOPAGEDEF_ID=SC.SEOPAGEDEF_ID
AND SA.STOREENT_ID IN (SELECT RELATEDSTORE_ID FROM STOREREL
WHERE STORE_ID=${param.storeId} AND STRELTYP_ID=-4)
AND SB.LANGUAGE_ID=${param.langId}
AND SC.OBJECTTYPE = 'CatalogGroup') F ON F.OBJECT_ID = CD.CATGROUP_ID
WHERE ST.STORE_ID=${param.storeId}
AND (( S.STOREENT_ID=ST.STORE_ID AND S.LANGUAGE_ID=${param.langId} )
OR ( SD.LANGUAGE_ID=ST.LANGUAGE_ID ))
) P ON P.CATGROUP_ID IN (
SELECT C.CATGROUP_ID
FROM CATGRPREL R, CATGROUP C
WHERE R.CATALOG_ID = ${param.catalogId}
AND R.CATALOG_ID IN (SELECT CATALOG_ID FROM STORECAT WHERE STOREENT_ID IN
(SELECT RELATEDSTORE_ID FROM STOREREL WHERE STATE = 1 AND STRELTYP_ID = -4 AND STORE_ID = ${param.storeId}))
AND R.CATGROUP_ID_CHILD = C.CATGROUP_ID AND C.MARKFORDELETE = 0
UNION
SELECT C.CATGROUP_ID
FROM CATTOGRP R, CATGROUP C
WHERE R.CATALOG_ID = ${param.catalogId}
AND R.CATALOG_ID IN (SELECT CATALOG_ID FROM STORECAT WHERE STOREENT_ID IN
(SELECT RELATEDSTORE_ID FROM STOREREL WHERE STATE = 1 AND STRELTYP_ID = -4 AND STORE_ID = ${param.storeId}))
AND R.CATGROUP_ID = C.CATGROUP_ID AND C.MARKFORDELETE = 0)
WHERE B.STOREENT_ID IN
(SELECT RELATEDSTORE_ID FROM STOREREL E WHERE E.STORE_ID=${param.storeId} AND E.STRELTYP_ID=-4)
AND A.SEOURL_ID=B.SEOURL_ID AND B.LANGUAGE_ID=${param.langId} AND A.TOKENNAME IN ('CategoryToken')
AND A.TOKENVALUE = P.CATGROUP_ID) ORDER BY SEOURL_ID
OFFSET ${param.offset} ROWS FETCH NEXT ${param.pageSize} ROWS ONLY
Campo de índice Nombre | Tipo de campo de índice y opciones | Descripción: |
---|---|---|
Metadatos internos | ||
_id | internal | id/store + id/url |
__meta/version/min | entero | Versión mínima compatible del tiempo de ejecución para trabajar con este documento |
__meta/version/max | entero | Última versión compatible del tiempo de ejecución que funciona con este documento |
__meta/created | fecha | Fecha y hora de creación de este documento |
__meta/modified | fecha | Fecha y hora de la última modificación de este documento |
Identificador del documento | ||
id/tienda | id_string | ID interno de la tienda propietaria |
ID/idioma | id_string | El identificador del idioma actual |
id/catalog | id_string | El identificador del catálogo de ventas actual |
id/url | id_string | El UUID interno de esta URL de SEO; se correlaciona con SEOURL.SEOURL_ID |
identifier/specification | id_string | Establecer en "URL" |
identifier/store | id_string | Una cadena que identifica de forma exclusiva a la tienda propietaria |
identifier/language | id_string | El idioma local de esta URL |
identifier/url | id_string | URL de SEO relativa e identificador exclusivo para este registro - el identificador externo para TOKENVALUE y TOKENNAME especificados. Nota: no incluir la barra diagonal en esta URL de SEO |
Propiedades | ||
token/name | id_string | Nombre para representar el tipo de página: StaticPagesToken, ProductToken, CategoryTokenMapped a SEOURL.TOKENNAME |
token/id | id_string | Identificador para el identificador de objeto o página que representa la página; se correlaciona con SEOURL.TOKENVALUE |
token/identifier | id_string | Identificador del identificador de objeto externo para el objeto identificado en tokenValue |
estado | entero | Estado actual de URL: 0 - Inactiva SEOURL1 - Activa SEOURL2 - Caducada SEOURL Se correlaciona con SEOURLKEYWORD.STATUS |
redirect | RAW() | Una URL parcial o completa a la que redirigirse si esta URL está inactiva; se correlaciona con SEOURLKEYWORD.URLKEYWORD para SEOREDIRECT.SEOURLKEYWD_NEW de registro relacionado |
Metadatos de página | ||
page/name | raw | El nombre de la página; se correlaciona con SEOPAGEDEF.PAGENAME |
page/type | raw | Este campo se utiliza para calificar el tipo de página y se utiliza junto con pageName para calificar la página: CategoryPage, ProductListPage, ProductPage, ItemPage, BundlePage, KitPage, DynamicKitPage, VariantPage |
page/layout | raw | Identificador de diseño opcional para anular la página |
page/title | raw | Metadatos de título de página para SEO; se correlaciona con SEOPAGEDEFDESC.TITLE |
page/meta/description | raw | Meta descripción de página para SEO; se correlaciona con SEOPAGEDEFDESC.META_DESC |
page/meta/keyword | raw | Etiquetas/palabras clave meta de página para SEO; se correlaciona con SEOPAGEDEFDESC.META_KEYWORD |
page/meta/image | raw | Descripciones alternativas de imagen de página; se correlaciona con SEOPAGEDEFDESC.IMAGE_ALT_DESC |
template/name | raw | Plantilla SEO para generar este nombre de página |
template/title | raw | Plantilla SEO para generar metadatos de título de página; se correlaciona con SEOPAGEDEFDESC.TITLE |
template/meta/description | raw | Plantilla SEO para generar esta descripción meta de página; se correlaciona con SEOPAGEDEFDESC.META_DESC |
template/meta/keyword | raw | Plantilla SEO para generar estas etiquetas/palabra clave meta de página; se correlaciona con SEOPAGEDEFDESC.META_KEYWORD |
template/meta/image | raw | Plantilla SEO para generar estas descripciones alternativas de imagen de página; se correlaciona con SEOPAGEDEFDESC.IMAGE_ALT_DESC |
Etapa 2: Crear el documento de URL de producto
Esta etapa describe cómo los datos de URL de SEO de Producto se pueden transformar y cargar en el índice de la URL.
(SELECT A.SEOURL_ID, B.SEOURLKEYWORD_ID, B.URLKEYWORD, B.MOBILEURLKEYWORD, B.STOREENT_ID, B.STATUS,
B.LANGUAGE_ID, C.SEOURLKWD_ID_NEW, D.URLKEYWORD URLKEYWORD_NEW, A.TOKENNAME, A.TOKENVALUE, L.LOCALENAME,
P.DISPLAYNAME, P.DESCRIPTION, P.CATENTRY_ID, P.NAME, P.SHORTDESCRIPTION,
P.KEYWORD, P.PARTNUMBER, P.MFNAME, P.MFPARTNUMBER, P.CATENTTYPE_ID,
P.SITE_SEOPAGEDEF_ID, P.SITE_PAGENAME, P.SITE_TITLE, P.SITE_META_DESC, P.SITE_META_KEYWORD,
P.SITE_IMAGE_ALT_DESC, P.SITE_OBJECT_ID, P.SITE_STOREENT_ID,
P.OVERRIDE_SEOPAGEDEF_ID, P.OVERRIDE_PAGENAME, P.OVERRIDE_TITLE, P.OVERRIDE_META_DESC,
P.OVERRIDE_META_KEYWORD, P.OVERRIDE_IMAGE_ALT_DESC, P.OVERRIDE_OBJECT_ID, P.OVERRIDE_STOREENT_ID
FROM SEOURL A, SEOURLKEYWORD B
LEFT OUTER JOIN SEOREDIRECT C ON B.SEOURLKEYWORD_ID=C.SEOURLKWD_ID_ORIG
LEFT OUTER JOIN SEOURLKEYWORD D ON C.SEOURLKWD_ID_NEW=D.SEOURLKEYWORD_ID
LEFT OUTER JOIN LANGUAGE L ON B.LANGUAGE_ID = L.LANGUAGE_ID
LEFT OUTER JOIN (
SELECT COALESCE(S.DISPLAYNAME, SD.DISPLAYNAME) DISPLAYNAME,
COALESCE(S.DESCRIPTION, SD.DESCRIPTION) DESCRIPTION,
CE.CATENTRY_ID, CD.NAME, CD.SHORTDESCRIPTION, CE.CATENTTYPE_ID,
CD.KEYWORD, CE.PARTNUMBER, CE.MFNAME, CE.MFPARTNUMBER,
E.SEOPAGEDEF_ID SITE_SEOPAGEDEF_ID,
E.PAGENAME SITE_PAGENAME,
E.TITLE SITE_TITLE,
E.META_DESC SITE_META_DESC,
E.META_KEYWORD SITE_META_KEYWORD,
E.IMAGE_ALT_DESC SITE_IMAGE_ALT_DESC,
E.OBJECT_ID SITE_OBJECT_ID,
E.STOREENT_ID SITE_STOREENT_ID,
F.SEOPAGEDEF_ID OVERRIDE_SEOPAGEDEF_ID,
F.PAGENAME OVERRIDE_PAGENAME,
F.TITLE OVERRIDE_TITLE,
F.META_DESC OVERRIDE_META_DESC,
F.META_KEYWORD OVERRIDE_META_KEYWORD,
F.IMAGE_ALT_DESC OVERRIDE_IMAGE_ALT_DESC,
F.OBJECT_ID OVERRIDE_OBJECT_ID,
F.STOREENT_ID OVERRIDE_STOREENT_ID
FROM STOREENTDS S
INNER JOIN STORE ST ON S.STOREENT_ID=ST.STORE_ID
INNER JOIN CATENTDESC CD ON S.LANGUAGE_ID=CD.LANGUAGE_ID ${extCatentryAndSQL1b}
INNER JOIN CATENTRY CE ON CD.CATENTRY_ID=CE.CATENTRY_ID
${TI_DELTA_JOIN_QUERY_ATTCH}
INNER JOIN STOREENTDS SD ON ST.STORE_ID=SD.STOREENT_ID
LEFT OUTER JOIN (
SELECT SC.OBJECT_ID OBJECT_ID,
SA.SEOPAGEDEF_ID SEOPAGEDEF_ID,
SA.PAGENAME PAGENAME,
SB.TITLE TITLE,
SB.META_DESC META_DESC,
SB.META_KEYWORD META_KEYWORD,
SB.IMAGE_ALT_DESC IMAGE_ALT_DESC,
SA.STOREENT_ID STOREENT_ID
FROM SEOPAGEDEF SA, SEOPAGEDEFDESC SB, SEOPAGEDEFOVR SC
WHERE SA.SEOPAGEDEF_ID=SB.SEOPAGEDEF_ID AND SA.SEOPAGEDEF_ID=SC.SEOPAGEDEF_ID
AND SA.STOREENT_ID IN (SELECT RELATEDSTORE_ID FROM STOREREL
WHERE STORE_ID=${param.storeId} AND STRELTYP_ID=-4)
AND SB.LANGUAGE_ID=${param.langId}
AND SC.OBJECTTYPE = 'CatalogEntry') E ON E.OBJECT_ID = 0
LEFT OUTER JOIN (
SELECT SC.OBJECT_ID OBJECT_ID,
SA.SEOPAGEDEF_ID SEOPAGEDEF_ID,
SA.PAGENAME PAGENAME,
SB.TITLE TITLE,
SB.META_DESC META_DESC,
SB.META_KEYWORD META_KEYWORD,
SB.IMAGE_ALT_DESC IMAGE_ALT_DESC,
SA.STOREENT_ID STOREENT_ID
FROM SEOPAGEDEF SA, SEOPAGEDEFDESC SB, SEOPAGEDEFOVR SC
WHERE SA.SEOPAGEDEF_ID=SB.SEOPAGEDEF_ID AND SA.SEOPAGEDEF_ID=SC.SEOPAGEDEF_ID
AND SA.STOREENT_ID IN (SELECT RELATEDSTORE_ID FROM STOREREL
WHERE STORE_ID=${param.storeId} AND STRELTYP_ID=-4)
AND SB.LANGUAGE_ID=${param.langId}
AND SC.OBJECTTYPE = 'CatalogEntry') F ON F.OBJECT_ID = CE.CATENTRY_ID
WHERE ST.STORE_ID=${param.storeId}
AND (( S.STOREENT_ID=ST.STORE_ID AND S.LANGUAGE_ID=${param.langId} )
OR ( SD.LANGUAGE_ID=ST.LANGUAGE_ID ))
) P ON P.CATENTRY_ID IN (
SELECT C.CATENTRY_ID
FROM CATGPENREL R, CATENTRY C
WHERE R.CATALOG_ID = ${param.catalogId} AND R.CATALOG_ID IN (SELECT CATALOG_ID FROM STORECAT WHERE STOREENT_ID IN
(SELECT RELATEDSTORE_ID FROM STOREREL WHERE STATE = 1 AND STRELTYP_ID = -4 AND STORE_ID = ${param.storeId}))
AND R.CATENTRY_ID = C.CATENTRY_ID AND C.MARKFORDELETE = 0
AND C.CATENTTYPE_ID IN ('ProductBean', 'ItemBean', 'VariantBean'))
WHERE B.STOREENT_ID IN
(SELECT RELATEDSTORE_ID FROM STOREREL E WHERE E.STORE_ID=${param.storeId} AND E.STRELTYP_ID=-4)
AND A.SEOURL_ID=B.SEOURL_ID AND B.LANGUAGE_ID=${param.langId} AND A.TOKENNAME IN ('ProductToken')
AND A.TOKENVALUE = P.CATENTRY_ID) ORDER BY SEOURL_ID
OFFSET ${param.offset} ROWS FETCH NEXT ${param.pageSize} ROWS ONLY
A continuación, el conjunto de resultados se pasa al procesador CreateProductURLDocumentFromDatabase para su transformación, utilizando la misma tabla para correlacionar el campo de base de datos devuelto desde el SQL anterior con un campo de índice en el índice de URL. Por ejemplo, consulte los ejemplos de la etapa 2.
Etapa 3: Actualizar tipo de página para documento de URL de categoría
Esta etapa describe cómo el tipo de página para el documento de URL de categoría puede combinarse con el tipo de página adecuado y almacenarse de nuevo en el índice de URL.
SELECT B.SEOURLKEYWORD_ID
FROM SEOURL A, SEOURLKEYWORD B
WHERE B.STOREENT_ID IN
(SELECT RELATEDSTORE_ID FROM STOREREL E WHERE E.STORE_ID=${param.storeId} AND E.STRELTYP_ID=-4)
AND A.SEOURL_ID=B.SEOURL_ID AND B.LANGUAGE_ID=${param.langId} AND A.TOKENNAME IN ('CategoryToken')
AND A.TOKENVALUE IN (
SELECT P.CATGROUP_ID
FROM CATGPENREL P,
(SELECT G.CATGROUP_ID, R.CATALOG_ID
FROM CATGRPREL R, CATGROUP G
WHERE R.CATALOG_ID = ${param.catalogId}
AND R.CATALOG_ID IN (SELECT CATALOG_ID FROM STORECAT WHERE STOREENT_ID IN
(SELECT RELATEDSTORE_ID FROM STOREREL WHERE STATE = 1 AND STRELTYP_ID = -4 AND STORE_ID = ${param.storeId}))
AND R.CATGROUP_ID_CHILD = G.CATGROUP_ID AND G.MARKFORDELETE = 0
UNION
SELECT G.CATGROUP_ID, R.CATALOG_ID
FROM CATTOGRP R, CATGROUP G
WHERE R.CATALOG_ID = ${param.catalogId}
AND R.CATALOG_ID IN (SELECT CATALOG_ID FROM STORECAT WHERE STOREENT_ID IN
(SELECT RELATEDSTORE_ID FROM STOREREL WHERE STATE = 1 AND STRELTYP_ID = -4 AND STORE_ID = ${param.storeId}))
AND R.CATGROUP_ID = G.CATGROUP_ID AND G.MARKFORDELETE = 0) H
${TI_DELTA_CG_URL_1C_JOIN_QUERY}
WHERE P.CATALOG_ID = H.CATALOG_ID AND P.CATGROUP_ID = H.CATGROUP_ID ${extCatgroupAndSQL1a}
UNION
SELECT C.CATGROUP_ID
FROM CATGRPREL R, CATGROUP C
${TI_DELTA_CG_JOIN_QUERY}
WHERE R.CATALOG_ID = ${param.catalogId} ${extCatgroupAndSQL}
AND R.CATALOG_ID IN (SELECT CATALOG_ID FROM STORECAT WHERE STOREENT_ID IN
(SELECT RELATEDSTORE_ID FROM STOREREL WHERE STATE = 1 AND STRELTYP_ID = -4 AND STORE_ID = ${param.storeId}))
AND R.CATGROUP_ID_CHILD = C.CATGROUP_ID AND C.MARKFORDELETE = 0 AND C.DYNAMIC = 1)
ORDER BY B.SEOURLKEYWORD_ID
OFFSET ${param.offset} ROWS FETCH NEXT ${param.pageSize} ROWS ONLY
Campo de índice Nombre | Tipo de campo de índice | Descripción: |
---|---|---|
page/type | raw | Este campo se utiliza para calificar el tipo de página y se utiliza junto con pageName para calificar la página: CategoryPage, ProductListPage, ProductPage, ItemPage, BundlePage, KitPage, DynamicKitPage, VariantPage |
Etapa 4: Actualizar URL de categoría para el lenguaje de reserva
SELECT S.TOKENVALUE, SD.URLKEYWORD FROM SEOURL S, SEOURLKEYWORD SD
where S.SEOURL_ID IN(SELECT A.SEOURL_ID FROM SEOURL A
LEFT OUTER JOIN SEOURLKEYWORD B ON (A.SEOURL_ID=B.SEOURL_ID AND B.LANGUAGE_ID=${param.langId}
AND B.STOREENT_ID IN
(SELECT RELATEDSTORE_ID FROM STOREREL E WHERE E.STORE_ID=${param.storeId} AND E.STRELTYP_ID=-4))
LEFT OUTER JOIN SEOREDIRECT C ON B.SEOURLKEYWORD_ID=C.SEOURLKWD_ID_ORIG
LEFT OUTER JOIN SEOURLKEYWORD D ON C.SEOURLKWD_ID_NEW=D.SEOURLKEYWORD_ID
LEFT OUTER JOIN LANGUAGE L ON B.LANGUAGE_ID = L.LANGUAGE_ID
LEFT OUTER JOIN (
SELECT COALESCE(S.DISPLAYNAME, SD.DISPLAYNAME) DISPLAYNAME,
COALESCE(S.DESCRIPTION, SD.DESCRIPTION) DESCRIPTION,
CG.IDENTIFIER, CD.CATGROUP_ID, CD.NAME, CD.KEYWORD, CD.SHORTDESCRIPTION,
E.SEOPAGEDEF_ID SITE_SEOPAGEDEF_ID,
E.PAGENAME SITE_PAGENAME,
E.TITLE SITE_TITLE,
E.META_DESC SITE_META_DESC,
E.META_KEYWORD SITE_META_KEYWORD,
E.IMAGE_ALT_DESC SITE_IMAGE_ALT_DESC,
E.OBJECT_ID SITE_OBJECT_ID,
E.STOREENT_ID SITE_STOREENT_ID,
F.SEOPAGEDEF_ID OVERRIDE_SEOPAGEDEF_ID,
F.PAGENAME OVERRIDE_PAGENAME,
F.TITLE OVERRIDE_TITLE,
F.META_DESC OVERRIDE_META_DESC,
F.META_KEYWORD OVERRIDE_META_KEYWORD,
F.IMAGE_ALT_DESC OVERRIDE_IMAGE_ALT_DESC,
F.OBJECT_ID OVERRIDE_OBJECT_ID,
F.STOREENT_ID OVERRIDE_STOREENT_ID
FROM STOREENTDS S
INNER JOIN STORE ST ON S.STOREENT_ID=ST.STORE_ID
INNER JOIN CATGRPDESC CD ON S.LANGUAGE_ID=CD.LANGUAGE_ID ${extCatgroupAndSQL1b}
INNER JOIN CATGROUP CG ON CG.CATGROUP_ID=CD.CATGROUP_ID
${TI_DELTA_CG_URL_JOIN_QUERY}
INNER JOIN STOREENTDS SD ON ST.STORE_ID=SD.STOREENT_ID
LEFT OUTER JOIN (
SELECT SC.OBJECT_ID OBJECT_ID,
SA.SEOPAGEDEF_ID SEOPAGEDEF_ID,
SA.PAGENAME PAGENAME,
SB.TITLE TITLE,
SB.META_DESC META_DESC,
SB.META_KEYWORD META_KEYWORD,
SB.IMAGE_ALT_DESC IMAGE_ALT_DESC,
SA.STOREENT_ID STOREENT_ID
FROM SEOPAGEDEF SA, SEOPAGEDEFDESC SB, SEOPAGEDEFOVR SC
WHERE SA.SEOPAGEDEF_ID=SB.SEOPAGEDEF_ID AND SA.SEOPAGEDEF_ID=SC.SEOPAGEDEF_ID
AND SA.STOREENT_ID IN (SELECT RELATEDSTORE_ID FROM STOREREL
WHERE STORE_ID=${param.storeId} AND STRELTYP_ID=-4)
AND SB.LANGUAGE_ID=${param.langId}
AND SC.OBJECTTYPE = 'CatalogGroup') E ON E.OBJECT_ID = 0
LEFT OUTER JOIN (
SELECT SC.OBJECT_ID OBJECT_ID,
SA.SEOPAGEDEF_ID SEOPAGEDEF_ID,
SA.PAGENAME PAGENAME,
SB.TITLE TITLE,
SB.META_DESC META_DESC,
SB.META_KEYWORD META_KEYWORD,
SB.IMAGE_ALT_DESC IMAGE_ALT_DESC,
SA.STOREENT_ID STOREENT_ID
FROM SEOPAGEDEF SA, SEOPAGEDEFDESC SB, SEOPAGEDEFOVR SC
WHERE SA.SEOPAGEDEF_ID=SB.SEOPAGEDEF_ID AND SA.SEOPAGEDEF_ID=SC.SEOPAGEDEF_ID
AND SA.STOREENT_ID IN (SELECT RELATEDSTORE_ID FROM STOREREL
WHERE STORE_ID=${param.storeId} AND STRELTYP_ID=-4)
AND SB.LANGUAGE_ID=${param.langId}
AND SC.OBJECTTYPE = 'CatalogGroup') F ON F.OBJECT_ID = CD.CATGROUP_ID
WHERE ST.STORE_ID=${param.storeId}
AND (( S.STOREENT_ID=ST.STORE_ID AND S.LANGUAGE_ID=${param.langId} )
OR ( SD.LANGUAGE_ID=ST.LANGUAGE_ID ))
) P ON P.CATGROUP_ID IN (
SELECT C.CATGROUP_ID
FROM CATGRPREL R, CATGROUP C
WHERE R.CATALOG_ID = ${param.catalogId}
AND R.CATALOG_ID IN (SELECT CATALOG_ID FROM STORECAT WHERE STOREENT_ID IN
(SELECT RELATEDSTORE_ID FROM STOREREL WHERE STATE = 1 AND STRELTYP_ID = -4 AND STORE_ID = ${param.storeId}))
AND R.CATGROUP_ID_CHILD = C.CATGROUP_ID AND C.MARKFORDELETE = 0
UNION
SELECT C.CATGROUP_ID
FROM CATTOGRP R, CATGROUP C
WHERE R.CATALOG_ID = ${param.catalogId}
AND R.CATALOG_ID IN (SELECT CATALOG_ID FROM STORECAT WHERE STOREENT_ID IN
(SELECT RELATEDSTORE_ID FROM STOREREL WHERE STATE = 1 AND STRELTYP_ID = -4 AND STORE_ID = ${param.storeId}))
AND R.CATGROUP_ID = C.CATGROUP_ID AND C.MARKFORDELETE = 0)
WHERE A.TOKENNAME IN ('CategoryToken')
AND A.TOKENVALUE = P.CATGROUP_ID AND B.SEOURLKEYWORD_ID IS NULL)
AND S.SEOURL_ID = SD.SEOURL_ID AND SD.LANGUAGE_ID = ${default.language} ORDER BY S.SEOURL_ID
OFFSET ${param.offset} ROWS FETCH NEXT ${param.pageSize} ROWS ONLY
A continuación, el conjunto de resultados se pasa al procesador UpdateCategoryURLFallbackFromDatabase para su transformación, utilizando la tabla en la etapa 1 para correlacionar el campo de base de datos devuelto desde el SQL anterior con un campo de índice en el índice de URL.
Stage5: Actualizar URL de producto para el lenguaje de reserva
SELECT S.TOKENVALUE, SD.URLKEYWORD FROM SEOURL S, SEOURLKEYWORD SD
where S.SEOURL_ID IN(SELECT A.SEOURL_ID FROM SEOURL A
LEFT OUTER JOIN SEOURLKEYWORD B ON (A.SEOURL_ID=B.SEOURL_ID AND B.LANGUAGE_ID=${param.langId}
AND B.STOREENT_ID IN
(SELECT RELATEDSTORE_ID FROM STOREREL E WHERE E.STORE_ID=${param.storeId} AND E.STRELTYP_ID=-4))
LEFT OUTER JOIN SEOREDIRECT C ON B.SEOURLKEYWORD_ID=C.SEOURLKWD_ID_ORIG
LEFT OUTER JOIN SEOURLKEYWORD D ON C.SEOURLKWD_ID_NEW=D.SEOURLKEYWORD_ID
LEFT OUTER JOIN LANGUAGE L ON B.LANGUAGE_ID = L.LANGUAGE_ID
LEFT OUTER JOIN (
SELECT COALESCE(S.DISPLAYNAME, SD.DISPLAYNAME) DISPLAYNAME,
COALESCE(S.DESCRIPTION, SD.DESCRIPTION) DESCRIPTION,
CE.CATENTRY_ID, CD.NAME, CD.SHORTDESCRIPTION, CE.CATENTTYPE_ID,
CD.KEYWORD, CE.PARTNUMBER, CE.MFNAME, CE.MFPARTNUMBER,
E.SEOPAGEDEF_ID SITE_SEOPAGEDEF_ID,
E.PAGENAME SITE_PAGENAME,
E.TITLE SITE_TITLE,
E.META_DESC SITE_META_DESC,
E.META_KEYWORD SITE_META_KEYWORD,
E.IMAGE_ALT_DESC SITE_IMAGE_ALT_DESC,
E.OBJECT_ID SITE_OBJECT_ID,
E.STOREENT_ID SITE_STOREENT_ID,
F.SEOPAGEDEF_ID OVERRIDE_SEOPAGEDEF_ID,
F.PAGENAME OVERRIDE_PAGENAME,
F.TITLE OVERRIDE_TITLE,
F.META_DESC OVERRIDE_META_DESC,
F.META_KEYWORD OVERRIDE_META_KEYWORD,
F.IMAGE_ALT_DESC OVERRIDE_IMAGE_ALT_DESC,
F.OBJECT_ID OVERRIDE_OBJECT_ID,
F.STOREENT_ID OVERRIDE_STOREENT_ID
FROM STOREENTDS S
INNER JOIN STORE ST ON S.STOREENT_ID=ST.STORE_ID
INNER JOIN CATENTDESC CD ON S.LANGUAGE_ID=CD.LANGUAGE_ID ${extCatentryAndSQL1b}
INNER JOIN CATENTRY CE ON CD.CATENTRY_ID=CE.CATENTRY_ID
${TI_DELTA_JOIN_QUERY_ATTCH}
INNER JOIN STOREENTDS SD ON ST.STORE_ID=SD.STOREENT_ID
LEFT OUTER JOIN (
SELECT SC.OBJECT_ID OBJECT_ID,
SA.SEOPAGEDEF_ID SEOPAGEDEF_ID,
SA.PAGENAME PAGENAME,
SB.TITLE TITLE,
SB.META_DESC META_DESC,
SB.META_KEYWORD META_KEYWORD,
SB.IMAGE_ALT_DESC IMAGE_ALT_DESC,
SA.STOREENT_ID STOREENT_ID
FROM SEOPAGEDEF SA, SEOPAGEDEFDESC SB, SEOPAGEDEFOVR SC
WHERE SA.SEOPAGEDEF_ID=SB.SEOPAGEDEF_ID AND SA.SEOPAGEDEF_ID=SC.SEOPAGEDEF_ID
AND SA.STOREENT_ID IN (SELECT RELATEDSTORE_ID FROM STOREREL
WHERE STORE_ID=${param.storeId} AND STRELTYP_ID=-4)
AND SB.LANGUAGE_ID=${param.langId}
AND SC.OBJECTTYPE = 'CatalogEntry') E ON E.OBJECT_ID = 0
LEFT OUTER JOIN (
SELECT SC.OBJECT_ID OBJECT_ID,
SA.SEOPAGEDEF_ID SEOPAGEDEF_ID,
SA.PAGENAME PAGENAME,
SB.TITLE TITLE,
SB.META_DESC META_DESC,
SB.META_KEYWORD META_KEYWORD,
SB.IMAGE_ALT_DESC IMAGE_ALT_DESC,
SA.STOREENT_ID STOREENT_ID
FROM SEOPAGEDEF SA, SEOPAGEDEFDESC SB, SEOPAGEDEFOVR SC
WHERE SA.SEOPAGEDEF_ID=SB.SEOPAGEDEF_ID AND SA.SEOPAGEDEF_ID=SC.SEOPAGEDEF_ID
AND SA.STOREENT_ID IN (SELECT RELATEDSTORE_ID FROM STOREREL
WHERE STORE_ID=${param.storeId} AND STRELTYP_ID=-4)
AND SB.LANGUAGE_ID=${param.langId}
AND SC.OBJECTTYPE = 'CatalogEntry') F ON F.OBJECT_ID = CE.CATENTRY_ID
WHERE ST.STORE_ID=${param.storeId}
AND (( S.STOREENT_ID=ST.STORE_ID AND S.LANGUAGE_ID=${param.langId} )
OR ( SD.LANGUAGE_ID=ST.LANGUAGE_ID ))
) P ON P.CATENTRY_ID IN (
SELECT C.CATENTRY_ID
FROM CATGPENREL R, CATENTRY C
WHERE R.CATALOG_ID = ${param.catalogId} AND R.CATALOG_ID IN (SELECT CATALOG_ID FROM STORECAT WHERE STOREENT_ID IN
(SELECT RELATEDSTORE_ID FROM STOREREL WHERE STATE = 1 AND STRELTYP_ID = -4 AND STORE_ID = ${param.storeId}))
AND R.CATENTRY_ID = C.CATENTRY_ID AND C.MARKFORDELETE = 0
AND C.CATENTTYPE_ID IN ('ProductBean', 'ItemBean', 'VariantBean'))
WHERE A.TOKENNAME IN ('ProductToken')
AND A.TOKENVALUE = P.CATENTRY_ID AND B.SEOURLKEYWORD_ID IS NULL)
AND S.SEOURL_ID = SD.SEOURL_ID AND SD.LANGUAGE_ID = ${default.language} ORDER BY S.SEOURL_ID
OFFSET ${param.offset} ROWS FETCH NEXT ${param.pageSize} ROWS ONLY
A continuación, el conjunto de resultados se pasa al procesador UpdateProductURLFallbackFromDatabase para su transformación, utilizando la tabla anterior en la etapa 1 para correlacionar el campo de base de datos devuelto desde el SQL anterior con un campo de índice en el índice de URL.
Etapa 6: Actualizar URL de SEO al documento de categoría
{
"stored_fields": [
"identifier.url",
"token.id"
],
"size": 10000,
"_source": false,
"query": {
"bool": {
"must_not": [
{
"exists": {
"field": "redirect"
}
}
],
"must": [
{
"terms": {
"token.name": [ "CategoryToken" ]
}
},
{
"term": {
"id.language": ${param.langId}
}
},
{
"term": {
"id.store": ${param.storeId}
}
}
]
}
}
}
Campo de índice Nombre | Tipo de campo de índice | Descripción: |
---|---|---|
url/seo | raw | La URL de SEO de esta entrada de categoría; asignada desde el campo identifier.url en la consulta de búsqueda anterior |
Etapa 7: Actualizar URL de SEO al documento de producto
{
"stored_fields": [
"identifier.url",
"token.id"
],
"size": 10000,
"_source": false,
"query": {
"bool": {
"must_not": [
{
"exists": {
"field": "redirect"
}
}
],
"must": [
{
"terms": {
"token.name": [ "ProductToken" ]
}
},
{
"term": {
"id.language": ${param.langId}
}
},
{
"term": {
"id.store": ${param.storeId}
}
}
]
}
}
}
Campo de índice Nombre | Tipo de campo de índice | Descripción: |
---|---|---|
url/seo | raw | La URL de SEO de esta entrada de catálogo; asignada desde el campo identifier.url en la consulta de búsqueda anterior |
Ejemplos de la etapa 1
El código siguiente es un ejemplo de los datos de entrada para el procesador CreateCategoryURLDocumentFromDatabase.
{
"SEOURL_ID" : 12050,
"SEOURLKEYWORD_ID" : 12050,
"URLKEYWORD" : "newsletters",
"MOBILEURLKEYWORD" : null,
"STOREENT_ID" : 10501,
"STATUS" : 1,
"LANGUAGE_ID" : -1,
"SEOURLKWD_ID_NEW" : null,
"URLKEYWORD_NEW" : null,
"TOKENNAME" : "CategoryToken",
"TOKENVALUE" : "10040",
"LOCALENAME" : "en_US ",
"DISPLAYNAME" : "AuroraESite",
"DESCRIPTION" : "Commerce Model Store entity",
"CATGROUP_ID" : 10040,
"NAME" : "Newsletters",
"SHORTDESCRIPTION" : "Newsletters",
"KEYWORD" : "Newsletters",
"SITE_SEOPAGEDEF_ID" : 10001,
"SITE_PAGENAME" : "CATEGORY_PAGE",
"SITE_TITLE" : "<seo: CategoryName/> | <seo: StoreName/>",
"SITE_META_DESC" : "<seo: CategoryShortDescription/>",
"SITE_META_KEYWORD" : "<seo: CategoryKeyword/>",
"SITE_IMAGE_ALT_DESC" : "Image for <seo: CategoryName/> from <seo: StoreName/>",
"SITE_OBJECT_ID" : "0",
"SITE_STOREENT_ID" : 10501,
"IDENTIFIER" : "Newsletters",
"OVERRIDE_SEOPAGEDEF_ID" : null,
"OVERRIDE_PAGENAME" : null,
"OVERRIDE_TITLE" : null,
"OVERRIDE_META_DESC" : null,
"OVERRIDE_META_KEYWORD" : null,
"OVERRIDE_IMAGE_ALT_DESC" : null,
"OVERRIDE_OBJECT_ID" : null,
"OVERRIDE_STOREENT_ID" : null
}
El procesador CreateCategoryURLDocumentFromDatabase transforma los datos de entrada con el store id
pasado de la clase NiFi FlowFile como atributo en los siguientes datos de salida de muestra:
{ "update": { "_id": "1-12050", "_index": ".auth.1.url.202006160325", "retry_on_conflict": 5, "_source": false } }
{
"doc": {
"template": {
"name": "CATEGORY_PAGE",
"title": "<seo: CategoryName/> | <seo: StoreName/>",
"meta": {
"image": "Image for <seo: CategoryName/> from <seo: StoreName/>",
"description": "<seo: CategoryShortDescription/>",
"keyword": "<seo: CategoryKeyword/>"
}
},
"identifier": {
"specification": "url",
"language": "en_US",
"url": "newsletters"
},
"id": {
"catalog": null,
"language": "-1",
"store": "1",
"url": "12050"
},
"page": {
"meta": {
"image": "Image for Newsletters from AuroraESite",
"description": "Newsletters",
"keyword": "Newsletters"
},
"name": "CATEGORY_PAGE",
"title": "Newsletters | AuroraESite",
"type": "CategoryPage"
},
"__meta": {
"created": "2020-08-04T19:36:35.884Z",
"modified": "2020-08-04T19:36:35.910Z",
"version": {
"min": 0,
"max": 0
}
},
"status": 1,
"token": {
"identifier": "Newsletters",
"name": "CategoryToken",
"id": "10040"
}
},
"doc_as_upsert": true
}
Ejemplos de la etapa 2
El código siguiente es un ejemplo de los datos de entrada para el procesador CreateProductURLDocumentFromDatabase:
{
"SEOURL_ID" : 12711,
"SEOURLKEYWORD_ID" : 19712,
"URLKEYWORD" : "versatil-empire-waist-sundress-aurorawmdrs-022",
"MOBILEURLKEYWORD" : null,
"STOREENT_ID" : 10501,
"STATUS" : 1,
"LANGUAGE_ID" : -1,
"SEOURLKWD_ID_NEW" : null,
"URLKEYWORD_NEW" : null,
"TOKENNAME" : "ProductToken",
"TOKENVALUE" : "10061",
"LOCALENAME" : "en_US ",
"DISPLAYNAME" : "AuroraESite",
"DESCRIPTION" : "Commerce Model Store entity",
"CATENTRY_ID" : 10061,
"NAME" : "Versatil Empire Waist Sundress ",
"SHORTDESCRIPTION" : "Empire waist sundress with flower print and frilly sleeves",
"KEYWORD" : null,
"PARTNUMBER" : "AuroraWMDRS-022",
"MFNAME" : "Versatil",
"MFPARTNUMBER" : null,
"CATENTTYPE_ID" : "ItemBean ",
"SITE_SEOPAGEDEF_ID" : 10002,
"SITE_PAGENAME" : "PRODUCT_PAGE",
"SITE_TITLE" : "<seo: ProductName/> | <seo: StoreName/>",
"SITE_META_DESC" : "<seo: ProductShortDescription/>",
"SITE_META_KEYWORD" : "<seo: ProductKeyword/> <seo: ProductManufacturerName/>",
"SITE_IMAGE_ALT_DESC" : "Image for <seo: ProductName/> from <seo: StoreName/>",
"SITE_OBJECT_ID" : "0",
"SITE_STOREENT_ID" : 10501,
"OVERRIDE_SEOPAGEDEF_ID" : null,
"OVERRIDE_PAGENAME" : null,
"OVERRIDE_TITLE" : null,
"OVERRIDE_META_DESC" : null,
"OVERRIDE_META_KEYWORD" : null,
"OVERRIDE_IMAGE_ALT_DESC" : null,
"OVERRIDE_OBJECT_ID" : null,
"OVERRIDE_STOREENT_ID" : null
}
El procesador CreateProductURLDocumentFromDatabase transforma los datos de entrada con el store id
pasado de la clase NiFi FlowFile como atributo en los siguientes datos de salida de ejemplo:
{ "update": { "_id": "1-19712", "_index": ".auth.1.url.202006160325", "retry_on_conflict": 5, "_source": false } }
{
"doc": {
"template": {
"name": "PRODUCT_PAGE",
"type": "ItemPage",
"title": "<seo: ProductName/> | <seo: StoreName/>",
"meta": {
"image": "Image for <seo: ProductName/> from <seo: StoreName/>",
"description": "<seo: ProductShortDescription/>",
"keyword": "<seo: ProductKeyword/> <seo: ProductManufacturerName/>"
}
},
"identifier": {
"specification": "url",
"language": "en_US",
"url": "versatil-empire-waist-sundress-aurorawmdrs-022"
},
"id": {
"catalog": null,
"language": "-1",
"store": "1",
"url": "19712"
},
"page": {
"meta": {
"image": "Image for Versatil Empire Waist Sundress from AuroraESite",
"description": "Empire waist sundress with flower print and frilly sleeves",
"keyword": " Versatil"
},
"name": "PRODUCT_PAGE",
"type": "ItemPage",
"title": "Versatil Empire Waist Sundress | AuroraESite"
},
"__meta": {
"created": "2020-08-05T17:32:17.360Z",
"modified": "2020-08-05T17:32:17.379Z",
"version": {
"min": 0,
"max": 0
}
},
"status": 1,
"token": {
"identifier": "AuroraWMDRS-022",
"name": "ProductToken",
"id": "10061"
}
},
"doc_as_upsert": true
Ejemplos de la etapa 3
El código siguiente es un ejemplo de los datos de entrada para el procesador UpdatePageTypeFromDatabase:
{
"SEOURLKEYWORD_ID": 12027
}
El procesador CreateProductURLDocumentFromDatabase transforma los datos de entrada con el store id
pasado de la clase NiFi FlowFile como atributo en los siguientes datos de salida de ejemplo:
{ "update": { "_id": "1-12027", "_index": ".auth.1.category.202006160325", "retry_on_conflict": 5, "_source": false } }
{
"doc": {
"page": {
"type": "ProductListPage"
},
"__meta": {
"created": "2020-08-05T18:10:22.115Z",
"modified": "2020-08-05T18:10:22.133Z",
"version": {
"min": 0,
"max": 0
}
}
},
"doc_as_upsert": true
}
Ejemplos de la etapa 6
Etapa 4:El código siguiente es un ejemplo de los datos de entrada para el procesador UpdateCategoryURL:
{
"_index" : ".auth.1.url.202007052103",
"_type" : "_doc",
"_id" : "1-12045",
"_score" : 1.0004607,
"fields" : {
"token.id" : [ "10036" ],
"identifier.url" : [ "lighting-home" ]
}
}
El procesador UpdateCategoryURL transforma los datos de entrada con el store id
pasado de la clase NiFi FlowFile como atributo en los siguientes datos de salida de muestra:
{ "update": { "_id": "1-null-null-10036", "_index": ".auth.1.category.202006160325", "retry_on_conflict": 5, "_source": false } }
{
"doc": {
"url": {
"seo": "/lighting-home"
},
"__meta": {
"created": "2020-08-05T18:43:04.969Z",
"modified": "2020-08-05T18:43:04.984Z",
"version": {
"min": 0,
"max": 0
}
}
}
}
Ejemplos de la etapa 7
El código siguiente es un ejemplo de los datos de entrada para el procesador UpdateProductURL:
{
"_index" : ".auth.1.url.202007052126",
"_type" : "_doc",
"_id" : "1-19848",
"_score" : 1.0004607,
"fields" : {
"token.id" : [ "10197" ],
"identifier.url" : [ "versatil-strapless-sundress-aurorawmdrs-158" ]
}
}
El procesador UpdateProductURL transforma los datos de entrada con store id
, language id
y catalog id
pasados de la clase NiFi FlowFile como atributo en los siguientes datos de salida:
{ "update": { "_id": "1--1-10001-10197", "_index": ".auth.1.product.202006160325", "retry_on_conflict": 5, "_source": false } }
{
"doc": {
"url": {
"seo": "/versatil-strapless-sundress-aurorawmdrs-158"
},
"__meta": {
"created": "2020-08-05T19:07:48.668Z",
"modified": "2020-08-05T19:07:48.683Z",
"version": {
"min": 0,
"max": 0
}
}
}
}