Magento 1.9: ตารางราคาผลิตภัณฑ์ - พวกเขาทำงานอย่างไร


9

Magento มีตารางมากมายสำหรับจัดการราคา

ดูเหมือนว่าฉัน:

  • ในหน้าผลิตภัณฑ์ / หมวดหมู่ราคาสินค้าจะถูกโหลดจากตาราง catalog_product_flat
  • ในหน้าการค้นหาจะใช้ตาราง _idx (ฉันคิดว่าสำหรับตัวกรองช่วงราคา)

ตารางที่มีข้อมูล

| ตาราง | หมายเหตุ |
| --------------------------------------------- | --- --------------------- |
| catalog_product_index_price | มีข้อมูล - ตารางหลัก |
| catalog_product_index_price_idx | มีข้อมูล
| catalog_product_index_price_tmp | มีข้อมูล

ตารางที่ไม่มีข้อมูล

| ตาราง | หมายเหตุ |
| --------------------------------------------- | --- --------------------- |
| catalog_product_index_price_bundle_idx | ไม่มีข้อมูล |
| catalog_product_index_price_bundle_opt_idx | ไม่มีข้อมูล |
| catalog_product_index_price_bundle_opt_tmp | ไม่มีข้อมูล |
| catalog_product_index_price_bundle_sel_idx | ไม่มีข้อมูล |
| catalog_product_index_price_bundle_sel_tmp | ไม่มีข้อมูล |
| catalog_product_index_price_bundle_tmp | ไม่มีข้อมูล |
| catalog_product_index_price_cfg_opt_agr_idx | ไม่มีข้อมูล |
| catalog_product_index_price_cfg_opt_agr_tmp | ไม่มีข้อมูล |
| catalog_product_index_price_cfg_opt_idx | ไม่มีข้อมูล |
| catalog_product_index_price_cfg_opt_tmp | ไม่มีข้อมูล |
| catalog_product_index_price_downlod_idx | ไม่มีข้อมูล |
| catalog_product_index_price_downlod_tmp | ไม่มีข้อมูล |
| catalog_product_index_price_final_idx | ไม่มีข้อมูล |
| catalog_product_index_price_final_tmp | ไม่มีข้อมูล |
| catalog_product_index_price_opt_agr_idx | ไม่มีข้อมูล |
| catalog_product_index_price_opt_agr_tmp | ไม่มีข้อมูล |
| catalog_product_index_price_opt_idx | ไม่มีข้อมูล |
| catalog_product_index_price_opt_tmp | ไม่มีข้อมูล |

ดังนั้นดูเหมือนว่ามีเพียง 3 ตารางที่มีข้อมูล:

  • catalog_product_index_price
  • catalog_product_index_price_idx
  • catalog_product_index_price_tmp

ตารางที่ใช้จริงเท่านั้นคือcatalog_product_index_priceการนำทางเลเยอร์ใช้เพื่อกรองผลิตภัณฑ์ตามราคา (ดูMage_Catalog_Model_Resource_Layer_Filter_Price -> _ getPrice Expression ( )

ตาราง: catalog_product_index_price

| นิติบุคคล | customer_group_id | website_id | tax_class_id | ราคา | final_price | min_price | max_price | Tier_price | group_price |

มันโฮสต์ชุดค่าผสมทั้งหมดของเว็บไซต์ / กลุ่มลูกค้าคณิตศาสตร์การเปลี่ยนแปลงของฉันไม่ดีมากสมมติว่าคุณมี:

  • ผลิตภัณฑ์ 100.000
  • 2 เว็บไซต์ (ขอบเขตราคาที่กำหนดเป็นเว็บไซต์)
  • 10 กลุ่มลูกค้า

=> 100.000 * 2 * 10 = 2.000.000 แถว

หากคุณไม่ได้ใช้ราคาที่แตกต่างกันสำหรับกลุ่มลูกค้าที่แตกต่างกันคุณจะได้รับพื้นที่มากมายบนฐานข้อมูลและการสร้างดัชนีราคาจะช้ามาก (เพราะโดยทั่วไปแล้ว 20 แถวสำหรับแต่ละผลิตภัณฑ์จะมีค่าเหมือนกัน)

คำถาม:

  1. จะปลอดภัยไหมที่จะลบตารางที่ว่างเปล่าข้างต้นทั้งหมด?
  2. ทำไมมีแคตตาล็อกตารางที่3_product_index_priceพร้อมข้อมูล แต่มีเพียง 1 รายการเท่านั้นที่ใช้จริง

การเพิ่มประสิทธิภาพ:

  1. เป็นไปได้ไหมที่จะลดจำนวนแถวในตารางดัชนีในกรณีที่ราคาสินค้าเหมือนกันสำหรับชุดค่าผสมทั้งหมด

1
สำหรับตารางทั้งหมดฉันไม่สามารถตอบได้ แต่บางรายการเช่น catalog_product_index_price_bundle_x, catalog_product_index_price_cfg_x และ catalog_product_index_price_downlod_x จะมีข้อมูลเฉพาะในเว็บไซต์เท่านั้น คนอื่น ๆ อาจถูกนำไปใช้ในการจัดเก็บราคาสุดท้ายด้วยสกุลเงินสำรองเป็นต้น แต่ฉันไม่ได้คิดในแง่บวก
Eirik

คำตอบ:


2

ปลอดภัยไหมที่จะลบตารางที่ว่างเปล่าข้างต้นทั้งหมด?

ตารางที่ว่างเปล่าเหล่านั้นจะถูกเติมข้อมูลเมื่อ Magento ทำดัชนีซ้ำและแคตตาล็อกมีผลิตภัณฑ์สำหรับประเภทผลิตภัณฑ์ที่ระบุ
ควรลบตาราง _idx Magento อย่างปลอดภัยแล้วจะสร้างใหม่ในระหว่างการทำดัชนีใหม่

เหตุใดจึงมี 3 ตารางพร้อมข้อมูล แต่ใช้เพียง 1 จริงเท่านั้น

ตาราง idx และตาราง tmp ใช้สำหรับการทำดัชนีเท่านั้น:

  • _tmp ว่างเปล่าและจะมีการเติมข้อมูลในระหว่างการทำดัชนีใหม่
  • _idx เป็นตารางดัชนีจริง

ขอโทษคำตอบของคุณกำลังพูดอะไรกับฉัน
รา

คุณช่วยอธิบายเพิ่มเติมเกี่ยวกับสิ่งที่ไม่ชัดเจนได้ไหม?
Quisse

ฉันรู้ว่าตารางเหล่านั้นเป็นดัชนีฉันรู้ว่าคุณสามารถตัดทอนดัชนีได้ (คุณกำลังบอกว่าคุณทำไม่ได้ แต่นั่นไม่เป็นความจริงคุณต้องทำดัชนีใหม่หลังจากนั้น) คุณกำลังพูดอะไรใหม่ .... ถ้าคุณไม่มี คำตอบของคำถามที่คุณควรจะแสดงความคิดเห็นไม่ได้เป็นคำตอบ
Fra

ขออภัยที่พยายามช่วยคุณได้อ่านคำตอบของฉันแล้วหรือยัง? คุณต้องการคำตอบของฉันถัดจากคำถามของคุณ
Quisse

ตอนนี้ฉันทำเพื่อคุณแล้ว ฉันหวังว่าเราจะมีกล่องโต้ตอบที่สร้างสรรค์เพื่อแก้ปัญหา
Quisse
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.