我的批量查询今天已经花费了几个小时的时间。在此之前,只需几分钟。只是想知道有什么问题吗?
这需要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")有什么想法吗?谢谢
发布于 2022-04-22 05:24:25
按设计,大容量API是异步的。虽然两个小时是非常长的延迟,但根据我的经验,执行查询和提供结果可能需要相当长的时间。这个时间取决于许多因素,包括组织上的总体负载以及它所在的实例。大容量API的优点在于,即使查询返回了大量记录,它也可以这样做。
如果继续看到大容量API中的性能严重延迟,请打开一个支持用例。你没什么别的办法了。
对于小数据量,使用REST (这里是通过query_all() )的速度要快得多--几乎是100%。我实现了多个集成,这些集成基于数据卷动态地选择大容量或REST,以最大限度地提高性能。
附带注意:您不需要__getattr__()调用,只需做
sf.bulk.Account.query(...)https://stackoverflow.com/questions/71716548
复制相似问题