Reducing Network Traffic (Magic xpa 4.x)
Reducing network traffic is the best way to improve performance.
Follow these guidelines to reduce traffic on the network:
- 
Select only the fields you really need from the record. Only those fields will be received from the database.
 - 
Use ranges that can be sent to the database instead of a Task Range.
 - 
Use Link Inner Join/Left Outer Join instead of Link Query.
 - 
Use Database Views instead of links, when possible.
 
Using RDBMS views instead of simple tables can improve performance when joining tables. Magic xpa’s Link operation is implemented by issuing a separate SELECT statement to the database for every linked table. Batch tasks can be performed more efficiently by using a view that joins the main file and the linked files or by using Magic xpa’s Link Inner Join/Left Outer Join operation instead of Link Query. Let the database do the join.
| 
 Note: 
 | 
 There are differences in how Magic xpa and RDBMSs use the term view. 
 | 
| 
   
 | 
- 
Magic xpa uses the term view to describe the fields selected from the main file together with fields selected from the linked files and virtual fields. 
 - 
SQL databases use the term view to describe a pre-defined SELECT statement saved in the internal Data Dictionary and used as a table. The view definition can join several tables, use statistical functions, and use a WHERE clause to select part of the records in the table. 
  
 | 
| 
   
 | 
 Updates on views are sometimes restricted by database limitations. 
 | 
| 
 Example:   
 | 
 There is a task with a main file containing 10,000 records and three linked files. If performed in the usual way (using Link Query), the number of SELECT cursors opened by the task would be: 1 + 3* 10,000 = 30,001. 
If you use Magic xpa’s Link Inner Join/Left Outer Join operations instead of Link Query, the number of SELECT statements executed by the task would be: 1. 
If you define a DB view in the database, the number of SELECT statements executed by the task would be: 1. 
 |