[英]simple-salesforce bulk query takes hours for a simple soql
我的批量查詢今天在生產中花費了幾個小時。 在此之前,只需幾分鍾。 只是想知道可能是什么問題?
這需要 2 小時(這是對生產的測試查詢)
sf.bulk.__getattr__("Account").query("SELECT ID FROM Account limit 1", lazy_operation=True)
這需要 3 秒
sf.query_all("SELECT ID FROM Account limit 1")
有任何想法嗎? 謝謝
Bulk API 在設計上是異步的。 雖然兩個小時是一個非常長的延遲,但根據我的經驗,Bulk API 可能需要相當長的時間來執行查詢並提供結果。 該時間取決於許多因素,包括貴組織的整體負載和托管它的實例。 批量 API 的可取之處在於,即使查詢返回大量記錄,它也可以這樣做。
如果您繼續看到 Bulk API 中的極端性能延遲,請打開支持案例。 您無能為力。
對於小數據量,使用 REST API(通過query_all()
,此處)幾乎 100% 的時間要快得多。 我已經實現了多個集成,這些集成基於數據量動態 select Bulk 或 REST API 以嘗試最大化性能。
旁注:您不需要__getattr__()
調用,只需執行
sf.bulk.Account.query(...)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.