Hi all,
I wanted to know about the best option for a query in static data on database.
which would be the most optimal performance: "queryRecordType" or "queryEntity"?
Discussion posts and replies are publicly visible
Hi, thanks for response
I was researching after seeing this post https://community.appian.com/discussions/f/data/22641/record-vs-cdt-performance-comparison where finally he said query entity is more fast than "queryRecordType".
I did performance tests with "queryRecordType" and "queryEntity"
My first test was to do a simple query to a table with cases in which I retrieve 100 records.
the test with queryRecordType: in this case I have a synchronize records.
the same test with "queryEntity"
Query entity has better performance than query record for simple query
My question: Is better "query entity" than "query record" for static data in database?
Peter Lewis could you please clarify why it takes less time when querying by DB if I understood that a record when synchronized has the data in cached and this made it faster. That understanding Jesus test was made with the same data, only one table, without relationships.In the other hand I know that records are the future, and with this kind of object I can have easily all my data in one place, the power of actions and all of it, but I need to understand the records' performance in time of response
You can already read Peter's response here: https://community.appian.com/discussions/f/data/22641/record-vs-cdt-performance-comparison
On my part, I just did a bit of testing and it is true that it was slower on 2 occasions:
Thanks for the tag! In general my response on the linked post still stands. Keep in mind that there are a TON of factors that can influence query performance, so it can be hard to do 1:1 comparisons. Things that can influence the performance include things like:
Because of that, I can't give a blanket statement that every query will be faster with a!queryRecordType(). However, in general I think you will see better overall outcomes with a!queryRecordType() for a few reasons:
For what it's worth, we have done performance testing internally across a number of real use cases like reporting dashboards that test queries against synced records and have found better performance in aggregate.
Not only that, as part of our program we plan to continue to release optimizations for performance, so you'll only see the performance continue to get better!