Sunday, October 26, 2008

Livecache Architecture




􀂄 ABAP Programs and the APO optimizers use native SQL for communicating through the standard SAP DB interface to liveCache. liveCache has an SQL interface that is used to
communicate with the SAP instances. With native SQL, ABAP programs call stored procedures in the liveCache that point to (LCA) routines written in C++. An SQL class provides SQL methods to access the SQL data through the LCA routines.

􀂄 The LCA routines are part of a dynamic link library that runs in the process context of the
liveCache instance. In the Windows NT implementation of liveCache, LCA routines and their
interface are registered in the Windows NT Registry. For the Unix implementation, a registry
file is provided by liveCache. A persistent C++ class provides the LCA routines with access to
the corresponding Object Management System (OMS) data that is stored in the liveCache.

􀂄 LCA Routines in APO are delivered in DLL libraries as SAPXXX.DLL and SAPXXX.LST on NT or as shared libraries SAPXXX.ISO and SAPXXX.LST on UNIX . The application specific
knowledge is built into these LCA routines based on the concept of object orientation.

􀂄 liveCache is a hybrid of a relational and object-oriented database
􀂄 The relational part of the liveCache is available as the open source data base SAP DB (see http://www.sapdb.org/)

􀂄 The SQL part as well as the OMS part of the liveCache are based on the same DBMS basis
functionality which supplies services as for instance transaction management, logging, device handling and caching mechanisms

􀂄 Object and SQL data are stored on common devices
􀂄 All liveCache data is stored in the caches as well as on disks in 8 KB blocks called pages.

􀂄 liveCache stores the OMS objects in page chains, the pages in the chain being linked by
pointers. SQL table data are stored in the B*trees. SQL and OMS data reside together in the data cache and the data devices of the liveCache.

􀂄 liveCache, similar to the standard SAP RDBMS, can be administered within the SAP system.
The SAP transaction LC10 makes it possible to monitor, configure and administer liveCache.

􀂄 The LC10 applies the Database Manager CLI (DBMCLI) to administer the liveCache. Therefore, it is obvious that all functionalities of an SAP System are still available without the LC10 and could also be performed with the „native“ data base administration tool DBMCLI.

􀂄 In addition to the DBMCLI the administration tool DBMGUI is available, which is a graphical
user interface to the liveCache management client tool DBMCLI.

􀂄 While the DBMGUI works only on Windows NT/2000, running the WEB DBM requires only an internet browser and the DBM Web Server which can be installed anywhere in the net.

􀂄 DBMCLI, DBMGUI and WEB DBM should not be used for starting or stopping the liveCache,
even if LC10 itself calls DBMCLI for starting or stopping the liveCache. They should only be used for changing liveCache parameters, defining backup media and for liveCache monitoring. That is because the LC10 runs in addition to starting, stopping and initializing application specific reports. Moreover, it registers the LCA routines each time the liveCache is started.

The liveCache can be administered by
􀂄 Transaction LC10 in the SAPGUI
􀂄 Database Manager CLI (DBMCLI) command line interface
􀂄 Database Manager GUI (DBMGUI) graphical user interface for Windows NT/2000 only
􀂄 Web Database Manager (WEB DBM)

What is Livecache ? (LC10)




Why the Livecache has been developed ?


􀂄 For the development of the Advanced Planning and Optimization (APO) component a database system was needed which allows fast access to data organized in a complex network.

􀂄 Applying conventional relational database management systems as data sources for the APO showed a poor performance since disk I/O and the non-appropriate data description in the relational schema limited the performance.



􀂄 To read data from an application buffer which is in the same address space as the application
takes about 0.1ms. Reading data from a database takes about 1ms if the corresponding record
is already in the database buffer and even 10 ms if the record must be read from a hard disk
before.

􀂄 Working with an application having a too small buffer to accommodate all required data causes a huge data traffic between application and database server.

􀂄 An additional problem of the traditional buffering is that after reading data into the application buffer they are still organized in a relational schema which is not appropriate to describe complex networks.

􀂄 To achieve a good performance for applications which require access to a large amount of data (i.e. APO) it is necessary to bring the application logic and the application data together in one address space. One possible solution could be to shift the application logic from the application server to the database server via stored procedures. However, this impairs the scalability of R/3. On the other hand one could shift all required data to the application server.
But this requires that each server is equipped with very large main memory. Furthermore, the
synchronization of the data changed on each server with the data stored in the database server is rather complicated.

􀂄 To overcome performance problems the liveCache was introduced which is a dedicated server tier for the main memory-based temporary storage of volatile shared data.

Tuesday, October 7, 2008

Starting the CCMS Agent


Under Microsoft Windows NT the CCMS agent is automatically started, as the system starts the
associated service. If you have registered the CCMS agent under UNIX, the agent has not yet
been started. Start it using the appropriate command:


Agent Start Command
SAPCCMSR sapccmsr –DCCMS [pf=]
SAPCCM4X sapccm4x –DCCMS pf=
SAPCM3X sapcm3x –DCCMS [pf=]


Under UNIX, you must also ensure yourself that the CCMS agent is automatically started after a
restart of the server (for example, by entering the start command in INITTAB).

Creating the CSMREG User

As of SAP Web AS 6.40 SP 1 and as of 6.20 SP 42, you can have the CSMREG automatically created in CEN. To do this, start transaction RZ21 and choose Technical Infrastructure -> Configure Central System -> Create CSMREG User.

In earlier releases, you must create the user manually using the following procedure:
1. Choose Tools -> Administration -> Administration -> User Maintenance -> Users, or call
transaction SU01.
2. Create the CSMREG user.
3. Create authorizations and a profile for CSMREG and assign the profile to CSMREG. Ensure that the user type Communication (as of SAP Basis 4.6C) or CPIC (up to SAP Basis 4.6B) is selected on the Logon Data tab page.

The profile should contain the following authorizations (the specified authorization object S_CCM_RECV is only relevant in connection with the CCMS System Component Repository, which is delivered as of SAP Basis 4.6C):

Authorization Object
Field -> Value
1) S_RFC
RFC_FUGR -> FUGR
RFC_NAME -> SALC SALF SALH SALP SALS SAL_CACHE_RECEIVE SYST SCSM* RFC1
ACTVT -> 16

2) S_CCM_RECV
ACTVT -> P0-P2
TABLE -> *

Downloading the CCMS Agents

1. You require the file CCMAGENT.SAR. This archive contains all CCMS agents, including SAPCCMSR, SAPCCM4X, and SAPCM3X.

* We recommend that you use the newest version of each agent. You can determine the version of a CCMS agent with the option –v

* The archive also contains the availability agent CCMSPING.



2. You can download CCMAGENT.SAR from the SAP Software Distribution Center of the SAP

Service Marketplace (http://service.sap.com/swdc). Log on with your SAP Service Marketplace ID. Check the following folders in the specified order for this file and download it:

In the navigation bar, choose Download -> Support Packages and Patches -> Entry by Application Group -> SAP NetWeaver -> SAP NETWEAVER -> SAP NETWEAVER

2004S -> Entry by Component -> Application Server ABAP -> SAP KERNEL 7.00 32/64-BIT -> Database Independent
.



Only if the desired archive does not exist in the above folder, choose Download -> Support Packages and Patches -> Entry by Application Group -> SAP NetWeaver -> SAP NetWeaver components -> SAP WEB AS -> SAP WEB AS 6.20 ->

SAP WEB AS ABAP -> SAP KERNEL 6.20 32/64-BIT -> Database Independent.




Only if the desired archive is not in either of the above folders, choose Download -> Support Packages and Patches -> Archive for Support Packages and Patches -> Entry by Application Group -> SAP Application Components -> SAP R/3 -> SAP R/3 4.6A -> SAP KERNEL 4.6D 32/64-BIT -> Database Independent.



The reason for specifying multiple folders is that CCMS agents are partly dependent on the operating system release. Agents for a current SAP release may no longer cover all available operating system releases (for example, agents for SAP Web Application Server 6.20 are supported only on HP-UX 11.x; however, there are still application servers to be monitored that are running on HP-UX 10.x).



* You can determine the version of the CCMS agents in CCMAGENT.SAR by displaying the associated Info File.



* If you require an agent for an older operating system release that is not in the folders above, SAP also provides the newest CCMS agent functions in patches to older SAP Basis releases (especially SAP Basis 4.6D), as far as possible.



3. Decompress the CCMAGENT.SAR archive with the SAPCAR tool. Take account of SAP Note 212876 (The new archiving tool SAPCAR). For decompressing the archive, use the following instruction:

sapcar –xvf ccmagent.sar



Up to SAP NetWeaver 04 CCMS agents were freely backward compatible, so you could – independent of the monitored system release – always use the latest release of the CCMS agent. As of SAP NetWeaver 2004s, this has changed:

* To monitor a SAP instance up to release NW04 (6.40), always use an agent with release NW04 (6.40).

* To monitor a SAP instance with release NW2004s (7.00) or a host without SAP instance, use an agent with release NW2004s (7.00).