
Aarto
Reputable Poster
Hi guys! This is not really my area of expertise but i am helping out in investigating performance issues.
The customer is testing E1 9.1 tools 9.2 on Oracle cloud. They have migrated from AS/400 / I-series and db2 database to Oracle Enterprise edition 12c database
Some of the batch jobs are taking dramatically longer to complete on Oracle vs. AS/400. Mostly custom jobs that handle very large number of records and do a lot of table I/O such as looking up UDC codes in F0005 for each record etc, and then write records to custom tables or write to a flatfile
The job execution times are like 2-3 times longer than on AS/400 and, in some cases, 5-6 times longer for the affected UBES
In general (with some exepctions) the UBEs (standard and custom) run 2-3 times slower
Some jobs actually run faster on Oracle cloud (not many though)
- Enterprise server is not on same physical server as the database.
- System seems to be "idling" (CPU, memory, network traffic, database metrics) so the constraint is not in processing power
- Number of database cursors is set to 1.000 or higher and is not a bottleneck
- Interactive performance (JAS server, applications) is Excellent, it is only the UBEs where we see performance issues
- P98613 database caching table is populated in same way Old vs. new environment (AS/400 vs. Oracle cloud)
To me, it seems that the difference is due to AS/400 having SQL packages so the tables/results like UDC table records being accessed heavily get "cached" in DB/2 but not on Oracle cloud. Looking at the logs, i can see that the jobs on AS/400 take same time to complete as on Oracle cloud if run for a small number of records and the time to fetch the first F0005 record is same as on oracle cloud for the first few records but much faster for each subsequent records. While the time to get results from F0005 is always the same on Oracle cloud (Just an example, other table lookups demonstrate similar behaviour)
I have been reading about "hints" that can be assigned to SQL statements on Oracle database like "RESULT_CACHE". Is there anything in that could be configured in this area in E1 so these hints would be added to the SQL statement?
Also, the logging/journalling is turned ON for the database but many of these jobs use a worktable that is always cleared when the job is started. Apparently, the logging can be turned off for selected tables but the SQL statement also must have the "hint" to not write to the re-do log. So, again, is there a way to get this "hint" to be added or anything else that could be done to turn off logging for selected tables in the business data
Any tips appreciated
Aarto
The customer is testing E1 9.1 tools 9.2 on Oracle cloud. They have migrated from AS/400 / I-series and db2 database to Oracle Enterprise edition 12c database
Some of the batch jobs are taking dramatically longer to complete on Oracle vs. AS/400. Mostly custom jobs that handle very large number of records and do a lot of table I/O such as looking up UDC codes in F0005 for each record etc, and then write records to custom tables or write to a flatfile
The job execution times are like 2-3 times longer than on AS/400 and, in some cases, 5-6 times longer for the affected UBES
In general (with some exepctions) the UBEs (standard and custom) run 2-3 times slower
Some jobs actually run faster on Oracle cloud (not many though)
- Enterprise server is not on same physical server as the database.
- System seems to be "idling" (CPU, memory, network traffic, database metrics) so the constraint is not in processing power
- Number of database cursors is set to 1.000 or higher and is not a bottleneck
- Interactive performance (JAS server, applications) is Excellent, it is only the UBEs where we see performance issues
- P98613 database caching table is populated in same way Old vs. new environment (AS/400 vs. Oracle cloud)
To me, it seems that the difference is due to AS/400 having SQL packages so the tables/results like UDC table records being accessed heavily get "cached" in DB/2 but not on Oracle cloud. Looking at the logs, i can see that the jobs on AS/400 take same time to complete as on Oracle cloud if run for a small number of records and the time to fetch the first F0005 record is same as on oracle cloud for the first few records but much faster for each subsequent records. While the time to get results from F0005 is always the same on Oracle cloud (Just an example, other table lookups demonstrate similar behaviour)
I have been reading about "hints" that can be assigned to SQL statements on Oracle database like "RESULT_CACHE". Is there anything in that could be configured in this area in E1 so these hints would be added to the SQL statement?
Also, the logging/journalling is turned ON for the database but many of these jobs use a worktable that is always cleared when the job is started. Apparently, the logging can be turned off for selected tables but the SQL statement also must have the "hint" to not write to the re-do log. So, again, is there a way to get this "hint" to be added or anything else that could be done to turn off logging for selected tables in the business data
Any tips appreciated
Aarto
Last edited: