0

我们正在使用 DevArt 连接器,它伪装成 SFDC 的 ADO.NET 连接器。它超级慢(某些查询需要 13 分钟)。什么方法可以最快地返回数据?

他们是否有可能是快速的 SFDC 的 OData API?

4

1 回答 1

2

您可以使用一些 API:

  1. SOAP API -
    CRUD 操作和查询 (SOQL) 支持。一些元数据支持。有企业和合作伙伴的变体。可以在 Visual Studio 中添加为 Web 服务引用。
  2. REST API

    “通常,REST API 对较少数量的记录进行操作。您可以使用其 URL 获取单个记录,还可以运行查询并返回一组与该查询匹配的记录。” Salesforce API——它们是什么以及何时使用它们

  3. Bulk API
    REST 启动的批处理输出 XML 或 CSV 数据)

  4. 元数据 API
    可能不适用,除非您正在执行配置或部署风格的任务
  5. Apex API
    同样不适用,除非您使用 Apex 类并运行测试用例。
  6. Streaming API
    允许您注册查询并在查询结果更改时将更新推送给您。

他们都有自己的优点和缺点。Bulk API 介绍中有很好的总结。

我猜想 DevArt 连接器是基于 SOAP API 的。SOAP API 可以很快,但它不是带回大量记录的理想方式,因为结果是分页的,并且 SOAP 响应可能很大。其他因素也可能不必要地减慢它,例如查询从未使用过的字段。

ADO.NET 连接器必须对 SOQL 中的查询进行一些解释。翻译成 SOQL 时可能存在效率低下的连接。

我怀疑最好的解决方案将取决于您尝试查询的记录和字段以及您期望使用的结果。

于 2012-11-22T21:43:58.863 回答