How fast the Turbo Extract DataRaptor Really Is?

Welcome back! Today we’re going to compare the Turbo Extract DataRaptor with its “naturally aspired” counterpart. Managers and Architects are often using harsh language on developers that are not using those on every occasion. And it makes sense, as according to documentation, DataRaptor Turbo Extract has simpler configuration and better runtime performance.

So, let’s take look at the numbers and see how much faster the Turbo Extract really is.

Test Setup

For testing the performance, we’ve created a simple object with 4 custom fields:

The object was loaded with 1K sample generated records.

We’ve then created a regular and a Turbo Extract DataRaptors to extract the data from it:

Regular Extract DataRaptor

Turbo Extract DataRaptor

We will compare them on indexed and non-indexed fields using our sample object.

Now OmniStudio caches the results to improve performance of subsequent queries when parameters are the same, so we will also look at the cached vs un-cached requests in terms of performance.

The following table shows the timings when using an indexed field (ID):

 Without cachingWith cache
DataRaptor ExtractDataRaptor Turbo ExtractDifferenceDataRaptor ExtractDataRaptor Turbo ExtractDifference
Browser Time1209 ms1069 ms13%1020 ms917 ms11%
Server Time465 ms416 ms12%384 ms300 ms28%
Apex CPU348 ms281 ms24%280 ms243 ms15%

Wow! That’s not the kind of difference I was hoping for! The Turbo Extract is faster than its non-turbo counterpart, no surprise there. But the fact that even when we look at the pair of metrics that are the furthest apart – we’re still looking at less than 30% improvement!

Now, let’s modify our DataRaptors to use the non-indexed field for extraction:

Again, the table below shows the timings of running the Turbo and Regular extract DataRaptors – with and without caching on a non-indexed field (Index__c):

 Without cachingWith cache
DataRaptor ExtractDataRaptor Turbo ExtractDifferenceDataRaptor ExtractDataRaptor Turbo ExtractDifference
Browser Time972 ms967 ms0.5%870 ms815 ms7%
Server Time411 ms334 ms23%374 ms296 ms26%
Apex CPU298 ms261 ms14%310 ms252 ms23%

And again, results are about the same – less than 30% improvement across the board!

Testing the DataRaptors from inside an IP produces similar results:

Regular DataRaptor Extract:

Turbo Extract DataRaptor

Taking it further

DataRaptor Turbo Extract supports querying one object at a time. So, if we want to query multiple objects – we would have to use a few Turbo Extracts to do that. And this is exactly what many developers are doing now, in hopes of reaping the benefits of the “turbo-charged” performance.

In the following test, we will compare the performance of two DataRaptor Turbo Extracts run sequentially – against a single traditional DataRaptor Extract running the same queries in a single call.

Let the best Raptor win!

Regular DataRaptor Extract with two queries:

And here’s the timing when measured from the IP:

Turbo Extract DataRaptors 1 and 2, performing the same queries:

Performance when measured from IP:

Turbo Extract DataRaptor 2:

And its performance as seen from the IP:

There’s no surprise there – results are consistent with what we’ve seen before. While each Turbo Extract DataRaptor is a little bit faster, running two queries in two separate Turbo Extract DataRaptors is almost two times slower than running both queries in one non-turbo, traditional DataRaptor.

In this article we have compared the DataRaptor Turbo Extract with regular DataRaptor Extract in terms of performance. We have received specific numbers and now can estimate how much of an improvement we may be able to expect out of using the Turbo Extract DataRaptor instead of the regular Extract. We have also seen that replacing one regular DataRaptor Extract running on multiple objects with two or more separate DataRaptor Turbo Extracts resulted in an inferior performance. This is the valuable information that may come in handy when deciding what kind of DataRaptor we should be using in our specific application scenarios.

As you’ve just seen, applying a best practice may not always bring the performance improvement you expect. You may want to test the performance impact of the best practices in your specific scenario before making changes to your app. We at ECM Solutions have done a lot of testing and can help you narrow down the possible solutions quickly, based on what we ourselves have proven accurate and effective for clients in similar situations. Talk to us to see if we may be a fit to help with your current or future project.

Lastly, if you think this information may benefit your project or your career, be sure to subscribe to my low-traffic notification list in the box in the right column. These OmniStudio best practices and performance tips take time to verify, so they are not released often. And you don’t want to miss them as they may easily take you to the next level just at the right time. Also, we never share your email with anyone, and you can always unsubscribe with one click.

2 thoughts on “How fast the Turbo Extract DataRaptor Really Is?

  1. Fantastic article! I appreciate how clearly you explained the topic. Your insights are both informative and thought-provoking. I’m curious about your thoughts on the future implications of this. How do you see this evolving over time? Looking forward to more discussions and perspectives from others. Thanks for sharing!

  2. Dear @Aqua, thank you for your kind words! The future application of this in my mind is simple. As the OmniStudio will continue to evolve, we need to continue testing the new and updated components in our specific applications scenarios, so we can discover the most efficient, future proof and scalable ways to use them.

Leave a Reply

Your email address will not be published. Required fields are marked *

Proudly powered by WordPress | Theme: Looks Blog by Crimson Themes.