Mechanika nowych tabel zmian (np .: katalog_kategorii_produktu_kata_kl)

15

Właśnie zauważyłem wspomniane tabele w bazie danych. Myślę, że są nowe w Magento EE 1.13 i mogą być związane z nowym indeksowaniem.

+ ---------------------------------------- +
| catalog_category_flat_cl |
| katalog_kategorii_produkt_kat_katalogowy |
| katalog_kategorii_produkt_indeks_kl |
| katalog_produktu_płaskiego_cl |
| katalog_produktu_index_price_cl |
| cataloginventory_stock_status_cl |
| catalogsearch_fulltext_cl |
| enterprise_url_rewrite_category_cl |
| enterprise_url_rewrite_product_cl |
| enterprise_url_rewrite_redirect_cl |
+ ---------------------------------------- +

Jak działają te tabele? Co jest celem?

Czy są automatycznie czyszczone po pewnym czasie?

Czy warto uwzględnić te tabele w kopiach zapasowych?

Alex
źródło

Odpowiedzi:

15

Te _cltabele dzienników zmian (stąd przyrostek) są wypełniane za pomocą wyzwalaczy MySQL za każdym razem, gdy zmieniany jest konkretny byt.
Następnie zadanie cron indeksatora (uruchamiane co minutę) zastosuje te dzienniki zmian jako przyrostowe aktualizacje indeksów Magento.

Zaletą używania wyzwalaczy MySQL do wypełniania tabel dzienników zmian jest to, że działa nawet wtedy, gdy nowe dane są dodawane przy użyciu zwykłego SQL, bez angażowania PHP.
Eliminuje to potrzebę uruchomienia pełnego reindeksu, jeśli używasz niestandardowej metody importu (lub nawet modułu Mage_ImportExport).

Vinai
źródło
Czy od czasu do czasu można bezpiecznie obcinać te tabele? Obecnie na 25 mln rekordów.
Steve Robbins,
Niepewny. Problem polega na tym, że Magento może zależeć od wersji przechowywanej w tej tabeli. Wydaje mi się, że można bezpiecznie usunąć wszystkie oprócz najnowszej wersji, ale rób to na własne ryzyko. Może nawet obcięcie jest bezpieczne - nie wiem.
Vinai
5
Moduł Enterprise_Mview ma już możliwość czyszczenia tych tabel. Pobiera najnowszy identyfikator_wersji dla każdej tabeli enterprise_mview_metadatai usuwa wszystkie wiersze o identyfikatorze_wersji niższym. Możesz włączyć czyszczenie indeksu, przechodząc do opcji System> Konfiguracja> (sekcja ZAAWANSOWANA)> Zarządzanie indeksem i ustawienie Włącz zaplanowane czyszczenie na Tak w opcji Harmonogram czyszczenia indeksu.
Tyler V.