2014-10-08 60 views
2

我正在構建一個Magento電子商務網站,並從舊的導入客戶配置文件。我正在使用CSV導入程序,這個過程比我想象的要慢。只需一個客戶需要4秒。到目前爲止,該流程已運行6個小時以上,並且僅導入了3萬個客戶。 CSV文件被分成幾個〜10M的小文件。Magento使用csv數據流導入客戶(700k)速度太慢

現在,我正在使用Amazon Web服務EC2實例(micro)作爲開發服務器。它有1個vCPU(2.5GHz)和1GiB內存。但我不認爲這可能是一個問題。我增加了php內存限制到1G。

我讀過一篇文章,指出由於Magento的EAV數據庫系統和沉重的PHP API模塊[Speeding up Magento Imports],導入產品的速度問題非常普遍。它說,Magento發送450個MySQL查詢以導入一個單一產品。我還看到了一種解決方法,使用[Magmi],它試圖繞過Magento的API並將數據直接插入到MySQL表中。然而,AFAIK似乎不會導入客戶,而只是產品和類別。我不知道他們(產品和客戶)是否使用相同的機制。

我禁用了緩存管理,並將索引管理選項設置爲「手動更新」。雖然客戶檔案並不真正使用這些流程。

你有什麼建議可以提高CSV導入速度嗎?

[後續]

我已經發現的問題的來源之一,亞馬遜EC2 T2實例。他們使用CPU Credits來控制最大CPU使用率。對於微型實例,基本CPU性能僅限於其容量的10%。我使用了所有的CPU信用,並且服務器不允許我使用完整的CPU。

我剛剛檢查了導入性能,並且它每秒導入大約2條記錄。我認爲這仍然太慢,所以我會等待更多的解決方案。也許優化?

回答

1

忘掉Magmi吧,忘掉Dataflow。做到這一點的最佳實踐Magento的方法...

使用這一個:

https://github.com/avstudnitz/AvS_FastSimpleImport

你可以使用任何陣列導入實體產品和客戶

+0

正是我在找的東西。對Magmi和數據流感到噁心。這在1.9.2中完美運行。謝謝! – 2015-07-28 16:21:52

0

如果您需要通過csv導入來更新現有產品,而不是僅包含您希望用SKU更新的那些列。是的,sku需要列,那麼你可以包含要更新產品屬性的列。 它進口產品如此之快!

+1

你應該添加你正在談論的鏈接。 – iMortalitySX 2017-07-26 18:25:59