哪种方式访问​​SFDC API会最快地返回数据?

时间:2012-11-21 21:25:22

标签: salesforce

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

他们对SFDC的OData API是否很快?

1 个答案:

答案 0 :(得分:2)

您可以使用一些API:

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

      

    “通常,REST API在较少数量的记录上运行。您   可以使用其URL获取单个记录,您也可以运行查询和   带回一组与该查询匹配的记录。“Salesforce APIs – What They Are & When to Use Them

  3. 批量API
    REST启动的批处理过程,输出XML或CSV数据)

  4. 元数据API
    除非您正在执行配置或部署样式任务,否则可能不适用
  5. Apex API
    同样,除非您正在使用Apex类并运行测试用例,否则不适用。
  6. Streaming API
    允许您在查询结果更改时注册查询并获取推送给您的更新。
  7. 他们都有自己的优点和缺点。 the Bulk API introduction中有一个很好的摘要。

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

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

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