Sí, las mesas planas siguen siendo una cosa. Puede habilitar tablas planas para productos y categorías desde tiendas-> configuración-> catálogo-> escaparate.
¿Por qué necesitamos mesas planas?
Ofrecen un aumento significativo del rendimiento para grandes datos de catálogo. Uno de nuestros clientes tiene solo 5 categorías y alrededor de 250 productos, por lo que realmente no importa si tiene un encendido o apagado. Realmente importaba cuando lo encendimos para otra tienda que tenía 800 categorías y 17000 productos y 5 tiendas múltiples. El aumento del rendimiento se hace evidente cuando comienzas a notar lo que sucede en la base de datos. Así es como se ve la base de datos cuando tiene varios sitios web.
El punto es que las uniones se vuelven muy caras con el aumento del tamaño de la tabla incluso con índices. Mesas planas REDUCIR (no eliminar) UNIR.
¿Cuándo se crean o actualizan?
Las tablas planas se regeneran cuando reindexas por completo bin/magento indexer:reindex
. Se actualizan en la actualización de producto o categoría. Solo se actualizan las filas relevantes.
Las tablas planas no se generan en setup:di:compile
** ¿Qué atributos van en tablas planas? (y algunas limitaciones) **
La respuesta corta es todos los atributos que se utilizarán en el listado de productos (listado + navegación en capas). La configuración del frente de una tienda de atributos decide si el atributo debe incluirse o no en las tablas planas.
Todos los atributos no se aplanan debido a las limitaciones que menciono a continuación.
Limitación de mesa plana
Finalmente, hay una limitación para estas tablas planas impuesta por mysql. Hay límites de tamaño de fila y tamaño de columna en la tabla. Puede leer más sobre esto en los límites de la tabla mysql
Encontrará este <max_index_count>64</max_index_count>
nodo interesante en config.xml del módulo-catálogo.
Espero que ayude.