Performance Techniques

Home/OpenAccess ORM/Performance Techniques

Telerik's mapping tool has been designed to help, rather than to intervene. It uses just a few megabytes of memory on the client, it is extremely efficient when fetching data even in large data-intensive applications, and comes with many tools and techniques to help you optimize the data access performance for your exact case.


Profiler and Query Tuning Adviser

Telerik OpenAccess ORM comes with a built-in visual data access analysis and profiling tool, which shows what SQL script has been generated by OpenAccess ORM; how much SQL is being generated; and how efficient the SQL is. With support for SQL visualization, performance deficiency analysis and detection, summary values, and in-memory or log analysis, the Telerik OpenAccess Profiler helps you visually understand and optimize the OpenAccess-powered data operations.


Low Level (ADO) API for Fetching Data Efficiently

If you are concerned about performance and comfortable with writing ADO.NET like code, then the OpenAccess ADO API is perfect for you. It gives you fast low-level access to your data and is especially helpful in data-intensive enterprise applications, where performance is key. The benefits of this approach include lightweight data access, which does not include change tracking, full materialization, etc.; easy on resources - it uses less memory footprint and offers faster execution times; it is fast - it offers the maximum possible speed of information retrieval.


Data Caching for Fast Data Retrieval

OpenAccess ORM comes with a caching mechanism (2nd Level or L2 cache), which reduces the calls made to the relational server by storing data and query results in the application process. This gives fast retrieval of the commonly used objects, and increases the efficiency and performance of your application. Caching can be fine-grained on a per class basis, can be implemented in multi-threaded applications, and can be coupled over the network to provide a distributed synchronized cache.


Deferred versus Immediate Data Loading (Fetch Plans)

By using Fetch Plans you can optimally fetch the initial result of your query and later on retrieve data that is not yet in memory. You can easily instruct the tool whether to load the data immediately or to defer it (eager-loading), thus optimizing the query fetching performance. This feature avoids the common performance pitfall that is known as the 'N+1 query problem' where instead of querying for one order and then performing the n order details, a Fetch Plan can be configured for one optimal query.


Lazy Loading during Run-time

OpenAccess uses lazy loading where your application objects are filled with the data upon access. Not all fields will be filled immediately, so collection or picture fields can be deferred in their population. This has the advantage of saving memory and network bandwidth while preserving easy access: when the field’s content is needed, the data is fetched transparently from the database server. Of course, you can optimize which fields are to be fetched when depending on your scenario.


Persistent Classes. ZERO Reflection.

Telerik OpenAccess ORM guarantees speedy access to your data because it does not use reflection. The tool employs a technique called Enhancement, which augments the code that the compiler generates by adding the needed persistence, lazy loading and change tracking capabilities.


Download Now Get Samples Kit or continue to: