哪些表格與的重新索引的索引的過程連接在magento中。 請分享相同的任何文件。因爲它是從原始帖子在採取Magento索引數據庫表名重新索引?
回答
不能採取信貸這樣的:Can someone explain Magentos Indexing feature in detail?
Magento的索引僅僅是類似於數據庫級別的索引的精神。正如安東所言,這是一個非正規化的過程,可以讓網站的運行速度更快。讓我試着解釋一下Magento數據庫結構背後的一些想法,以及爲什麼它需要索引來快速運行。
在一個更「典型」的MySQL數據庫,用於存儲目錄的產品表將結構是這樣的:
PRODUCT:
product_id INT
sku VARCHAR
name VARCHAR
size VARCHAR
longdesc VARCHAR
shortdesc VARCHAR
... etc ...
這是快速檢索,但它留下一個根本性的問題換了一塊電子商務的軟件:當你想添加更多屬性時你會做什麼?如果你賣玩具,而不是大小欄,你需要age_range?那麼,你可以添加另一列,但應該清楚,在一個大型商店(比如沃爾瑪),這會導致90%的空行,並試圖維護新的屬性幾乎是不可能的。
爲了解決這個問題,Magento將表分成更小的單位。我不想重新創建整個EAV系統在這個答案,因此,請接受這個簡化的模型:
PRODUCT:
product_id INT
sku VARCHAR
PRODUCT_ATTRIBUTE_VALUES
product_id INT
attribute_id INT
value MISC
PRODUCT_ATTRIBUTES
attribute_id
name
現在,可以通過輸入新值到product_attributes,然後把相鄰記錄到product_attribute_values添加隨意屬性。這基本上是Magento所做的(對數據類型的尊重比我在這裏展示的要多一點)。事實上,現在沒有理由讓兩種產品具有完全相同的字段,因此我們可以使用不同的屬性集創建完整的產品類型!
但是,這種靈活性需要付出代價。如果我想找到我的系統(一個簡單的例子),襯衫的顏色,我需要找到:
- 項目的PRODUCT_ID(產品表)
- 顏色的attribute_id(以屬性表)
- 最後,實際值(在ATTRIBUTE_VALUES表)
Magento的使用這樣的工作,但它是死的慢。所以,爲了更好的表現,他們做出了妥協:一旦店主確定了他們想要的屬性,就從頭開始生成大表。當一些東西發生變化時,將它從空間中取出並重新生成。這樣,數據主要以我們良好的靈活格式存儲,但是從單個表中查詢。
這些生成的查找表是Magento的「索引」。當您重新編制索引時,您將炸燬舊桌子並重新生成。
- 1. 索爾(重新)索引數據庫
- 2. Magento無法重新索引數據
- 3. Magento:「不能重新索引。」
- 4. 搜索索引與數據庫索引
- 5. 索引在索引數據庫中搜索索引數據庫時出錯
- 6. Magento索引鎖表
- 7. 索引SQLite數據庫:空索引?
- 8. Magento索引問題 - 無法重新索引
- 9. 數據庫索引?
- 10. 數據庫索引
- 11. 數據框中重塑/重新索引
- 12. Magento重新編制索引問題
- 13. Magento的2種產品重新索引
- 14. Magento 2.1.8重新索引錯誤
- 15. 涵蓋索引與集羣索引(數據庫索引)
- 16. 熊貓:數據框索引的重新索引面板
- 17. Python數據幀索引 - 不能重新索引?
- 18. 重新索引表;從
- 19. sqlite3 - 將數據庫添加到索引數據庫和索引新行
- 20. 表名'索引'
- 21. 刪除lucene索引並重新索引
- 22. 重新索引多索引問題
- 23. 無法使用shell命令重新索引Magento目錄搜索索引
- 24. 不能在Magento Admin和Shell中重新索引數據
- 25. 創建數據庫索引Vs用戶爲表創建索引
- 26. 加入索引(不是數據庫索引)的右表
- 27. PHP重新索引數組?
- 28. noSQL數據庫中的雙重索引
- 29. Elasticsearch - 重新索引到相同的索引名稱
- 30. 重新索引數據幀;從多列