When I was reading the What’s New with Batch Processing in PeopleSoft Enterprise Oracle OpenWorld presentation some time ago, the following slide caught my attention:
What are the Problems with AppEngine
- These programs can be complicated â€“ and for a programmer theyâ€™re different
- Same logic can be used Batch and Online â€“ Really?
- Different transactional model
- Temp table behavior is very different
- No restartability
- Easy to write a poor performing App Engine Program
- Since the introduction of PeopleCode, poor performing programs are the norm
Admittedly, I don’t have a lot of experience writing batch programs on Application Engine. But I believe the primary reason it is so easy to write poor-performing AE programs is that AE batch programs are better suited to be programmed using set processing. Set processing requires a different mind set to what procedural programmers are used to. I am new to it as well, so I find that this discussion in ITToolbox, and this followup provides valuable insights on how to perform set processing. Steve’s technique of what he calls partial cartesian joins is quite useful as well, especially for those not running an Oracle database.