Perbedaan antara katalog EAV dan katalog Flat adalah sebagai berikut:
1. Katalog Eav
EAV adalah model basis data nilai atribut entitas, di mana data sepenuhnya dalam bentuk normal. Setiap nilai data kolom disimpan dalam tabel tipe data masing-masing. Contoh, untuk suatu produk,
ID produk disimpan dalam catalog_product_entity_int
tabel,
nama produk dalam catalog_product_entity_varchar
tabel,
harga produk dalam catalog_product_entity_decimal
tabel,
produk yang dibuat tanggal dalam catalog_product_entity_datetime
tabel,
deskripsi produk dalam catalog_product_entity_text
tabel.
EAV rumit karena menggabungkan 5-6 tabel bahkan jika Anda ingin mendapatkan hanya satu detail produk.
Kolom disebut atribut dalam EAV.
2. Katalog Rata
Flat model hanya menggunakan satu tabel, sehingga tidak dinormalisasi dan menggunakan lebih banyak ruang basis data. Itu membersihkan overhead EAV,
Ada baiknya ketika datang ke kinerja, karena hanya akan membutuhkan satu permintaan untuk memuat seluruh produk, bukan bergabung dengan 5-6 tabel untuk mendapatkan hanya satu detail produk.
Kolom disebut bidang dalam model datar.
Magento menerapkan pengindeks yang secara berkala akan meminta koleksi standar dan mengisi tabel database datar dalam format berikut. Di mana * adalah id toko.
catalog_category_flat_store_*
catalog_product_flat_*
Tabel ini memiliki data produk dan kategori non-normal yang dimaksudkan untuk dibaca saja. Ini memungkinkan Magento untuk mengambil kategori dan data produk dalam satu permintaan.
Anda dapat mengaktifkan katalog flat dengan menavigasi ke System > Configuration > Catalog > Frontend > Use Flat Catalog Category | Use Flat Catalog Product
. Setel ini menjadi ya.
Jika Anda menambahkan atribut baru di tabel EAV untuk katalog. Maka jangan lupa untuk menjalankan pengindeksan ulang (System > Configuration > Index Management)
. Pengindeksan ulang menyegarkan tabel katalog flat Anda.
Untuk informasi lebih lanjut, silakan periksa "EAV" & "Katalog Rata" di Magento
Magento menggunakan model Entity-Attribute-Value (EAV) untuk menyimpan data pelanggan, produk, dan kategori dalam database-nya. Meskipun model EAV memungkinkan Anda untuk memiliki atribut yang benar-benar dapat diperluas untuk objek-objek tersebut, atribut objek disimpan dalam beberapa tabel daripada satu tabel yang sangat besar.
Karena atribut disimpan dalam banyak tabel — dan itu termasuk salinan dari beberapa atribut yang sama — query SQL bisa panjang dan kompleks. Fitur katalog datar membuat tabel baru dengan cepat, di mana setiap baris berisi semua data yang diperlukan tentang suatu produk atau kategori.
Dalam versi Magento sebelumnya, perlu untuk membangun kembali katalog flat setiap kali Anda membuat perubahan pada atribut produk atau asosiasi kategori produk. Dalam rilis ini, katalog flat diperbarui untuk Anda — baik setiap menit, atau sesuai dengan tugas cron Magento Anda.
Opsi katalog datar tidak hanya memungkinkan katalog datar dan pengindeksan produk datar, tetapi juga memungkinkan pengindeksan untuk aturan harga katalog dan keranjang belanja. Jika Anda memiliki sejumlah besar SKU (500.000 atau lebih), Magento dapat mengindeks aturan harga katalog dan keranjang belanja dengan cepat jika Anda mengaktifkan opsi produk katalog datar.
sumber
Kategori datar tidak ditingkatkan secara otomatis bahkan di Magento 1.9.2. Saya belum memeriksa 1.9.3, karena saya selalu secara manual membangun kembali indeks setelah pembaruan massal (mis. Tingkat stok).
sumber