Sharing Data
Reading data from the database into an ABAP program affects the performance of the central database and, as with any other database access, there is a certain amount of effort involved. Furthermore, accessing the database via the network also requires time. In other words, database accesses are performance-intensive in many respects. Therefore, it would be a more attractive option to load the data into a common memory area a single time, for it then to be centrally available to several programs or users.
Up to Release 6.40 of the SAP NW Application Server, data exchange within and outwith the boundaries of internal sessions was carried out by means of imports into or exports out of the cross-transaction application buffer of the shared memory.
The disadvantage of the classic import/export solution is that the data must first be loaded from the database into an internal session and exported into the cross-transaction application buffer of the shared memory. If any other internal sessions want to work with this data, they have to import it from the shared memory and then process it in their internal sessions. This is extremely copy- and memory-intensive.
As of Release 6.40, there is a better solution to the problem of how to make the same data available to multiple internal sessions within the SAP NW Application Server efficiently: shared objects. This enables you to load the data directly from a data source – for example, the database or RFC – into the shared objects memory and aggregate it there at a central location. The data can then be used by different users without them first having to load and aggregate it or copy it from the cross-transaction application buffer of the shared memory into their internal sessions.
Detailed
information is available under
ABAP - Shared
Objects.