Magento 2: Apakah Meja Flat Masih Berarti?

17

Apakah meja datar masih merupakan hal yang perlu kita khawatirkan di Magento 2? Saya tahu ada UI tempat kita dapat mengaktifkan tabel datar, tapi saya tidak yakin seberapa baik mereka telah diuji, dan jika mereka bahkan diperlukan lagi.

Jika tabel datar yang masih hal - mana / kapan atribut untuk tabel datar bisa dihasilkan dan / atau regenerasi. Apakah ini hanya terjadi pada pengindeksan ulang? Atau bisakah tindakan UI lainnya memicu pembuatan tabel datar? Apakah ini terjadi pada php bin/magento setup:di:compile? Tempat lain?

Juga - bagaimana Magento memutuskan apakah perlu membuat atribut atribut datar? Apakah semua atribut EAV diratakan? Atau ada orang lain yang mungkin tidak?

Alan Storm
sumber

Jawaban:

24

Ya, meja datar masih merupakan hal. Anda dapat mengaktifkan tabel datar untuk produk dan kategori dari store-> konfigurasi-> katalog-> etalase. masukkan deskripsi gambar di sini

Mengapa kita membutuhkan meja datar?

Mereka memang menawarkan peningkatan kinerja yang signifikan untuk data katalog besar. Salah satu klien kami hanya memiliki 5 kategori dan sekitar 250 produk sehingga tidak masalah jika Anda memiliki flat atau tidak. Itu sangat penting ketika kami menyalakannya untuk toko lain yang memiliki 800 kategori dan 17000 produk dan 5 multistor. Peningkatan kinerja menjadi jelas ketika Anda mulai memperhatikan apa yang terjadi di database. Inilah yang terlihat seperti basis data ketika Anda memiliki beberapa situs web.

tabel produk datar untuk setiap toko

hal yang sama untuk kategori

Intinya bergabung menjadi sangat mahal dengan peningkatan ukuran tabel bahkan dengan indeks. Meja datar MENGURANGI (tidak menghilangkan) BERGABUNG.

Kapan mereka dibuat atau diperbarui

Tabel datar dibuat ulang ketika Anda melakukan pengindeksan ulang penuh bin/magento indexer:reindex. Mereka diperbarui pada pembaruan produk atau kategori. Hanya baris yang relevan yang diperbarui.

Tabel datar tidak dihasilkan setup:di:compile

** Atribut mana yang masuk ke tabel datar? (dan beberapa batasan) **

Jawaban singkat adalah semua atribut yang akan digunakan dalam daftar produk (daftar + navigasi berlapis). Pengaturan depan atribut store memutuskan apakah atribut harus dimasukkan dalam tabel datar atau tidak

masukkan deskripsi gambar di sini

Semua atribut tidak diratakan karena keterbatasan yang saya sebutkan di bawah ini.

Keterbatasan meja datar

Akhirnya ada satu batasan untuk tabel datar ini yang dikenakan oleh mysql. Ada ukuran baris dan batas ukuran kolom di atas meja. Anda dapat membaca lebih lanjut tentang itu di batas tabel mysql

Anda akan menemukan <max_index_count>64</max_index_count>simpul yang menarik ini di config.xml dari modul-katalog.

Semoga itu bisa membantu.

Abhishek Jakhotiya
sumber
2
bagaimana dengan pesanan tetap? Pilihan untuk melakukan pemesanan tetap tidak di sebelah yang untuk kategori dan produk
ahnbizcad
Apakah mungkin untuk DROPmeja datar dan kemudian biarkan membuat dengan indexer:reindex? misalnya dalam kasus di atas meja jatuh diperbaiki.
fritzmg
@ahnbizcad pesanan sudah datar. tabel sales_order.
vitoriodachef
2

Berdasarkan dokumentasi magento untuk tabel datar yang disebutkan di https://docs.magento.com/m2/ce/user_guide/catalog/catalog-flat.html

Starting with Magento 2.3.0+, the use of a flat catalog is no longer a best practice and is not recommended. Continued use of this feature is known to cause performance degradation and other indexing issues

Sarjan Gautam
sumber
Banyak pertanyaan yang perlu ditulis ulang :(
Rustyjim
0

Tabel datar bukan hal lagi. Itu tidak menambah peningkatan kinerja dan akan usang dalam rilis berikutnya

bxN5
sumber