Backup & Recovery in BO 4.0

This post is dedicated to the available means of backup & recovery in SAP BusinessObjects BI 4.0. There are several changes compared to the previous version XI 3.1 including some literally missing functionality.

The recovery scenario: Partial restore of report and universe objects

In my eyes the typical recovery scneario is a partial restore. It happens quite quickly that you either delete a folder with a whole bunch of reports or that you want to revert a change in a report or universe development. Especially if we consider the ad-hoc reporting capabilities of Web Intelligence you probably don’t have a local copy of the corresponding report. In addition people which do any mistake leading to a recovery procedure tend to notice that they did such a mistake only with a certain gap in time, this means they request the recovery e.g. of a given folder not immediately after its deletion but perhaps two weeks later when they realize they deleted some reports too much. In the meanwhile the system might have been used heavily, that’s why a full recovery of the system itself is not really an option. What you need in such a situation is the possibility to recover only selected objects from a backup set to the original system. In this blog I will concentrate on this scenario. I use “original” system as a term to identify the system on which I take the backup and to which I want to recover something back.

The available possibilities in BO 4.0

There are three major approaches in taking a backup of BO 4.0 and recover partial content:

  1. Create some kind of BIAR file (multiple options available, see below) and try to recover selected elements back to the original system.
  2. Do a full backup, restore the full backup to a separate BO “recovery” system and finally use LCM to “promote” selected objects back to the original system.
  3. Use a professional backup & recovery solution like 360Plus from GB and Smith

Let me evaluate the above approaches in the next few sections.

The BIAR approach

The BO Admin Guide states in section 12.1.1.3 (page 466):

It is recommended that you use the Lifecycle management console for SAP BusinessObjects Business Intelligence platform to regularly back up your Business Intelligence content, such as reports, users and groups, and universes. Having current backups of your content makes it possible to restore your Business Intelligence without having to restore your entire system or your server settings.

Whoever wrote this sentence at SAP doesn’t seem to have either any concrete experience with LCM or not a clear idea what a backup & recovery tool should fullfifl in practice. Respectively let’s have a look at just any given freeware to backup your Windows files. Therefore to point this out right at the beginning: Keep your hands off in trusting LCM as your one and only backup solution for BO. LCM is a tool to promote (or in the SAP jargon ‘transport’) objects from one environment to another. LCM was never made to be a backup solution. Let me explain in some more details:

The preferred way to take a backup using LCM is exporting a LCM job into a LCMBIAR file. Finally with FP3 / SP04 you can now schedule the export to such a file. But there are some critical short comings with this (as of SP04 Patch 1; anyone having differing experience with a higher patch level please comment below!):

  • reimporting the LCMBIAR file to the original system on which you created the file will fail as soon as you delete the original LCM job. What real backup solution makes itself depending on the job object creating the backup set?
  • whenever you import a BIAR file you don’t have an option to select / unselect objects to restore. There is only black or white: Either you import all the contents from your (LCM)BIAR file or nothing.
  • LCMBIAR files do not save your successful instances. Only recurring instances are backed up. But by the way you cannot decide whether to restore recurring instances or not, as mentioned before you have to restore everything belonging to the BIAR file.

A next approach in using BIAR files is to use the new Upgrade Management Tool or the “legacy” biarengine.jar. The good news here are that LCM finally is capable to import regular BIAR files which were created by these two means. The following things should be considered:

  • In contrast to LCMBIAR files, regular BIAR files can be imported without any dependancy to any LCM job.
  • The Upgrade Management Tool as well as the biarengine.jar takes a backup of both, recurring as well as successful report instances.
  • Unfortunately SAP was so stupid – sorry to say it like this, but I couldn’t find any other term to express my feelings about this situation – to remove (or just not allow…) the possibility to import a BIAR file of the same software version using the Upgrade Management Tool. In XI 3.1 this became quite standard during a recovery procedure to load the BIAR file using Import Wizard and then select only the objects you need to recover. In combination with the short coming of LCM not to be able to select individual objects this is a real sad thing (#factoryofsadness …). Dear SAP: Just give us back basic functionalities like restoring selectively either using Upgrade Management Tool or LCM!

For those interested in the biarengine.jar – I couldn’t find any hints on it in the BI4 documentation, so I took the admin guide from XI 3.1 and it seems that everything still works as before (for more detailed infos see this blog):

First of all you need a properties file to specify what you want to be backed up:

exportBiarLocation=C:/temp/BiarEngineBackup.biar
action=exportXML
userName=Administrator
password=<your password>
CMS=cloudsrv012:6400
authentication=secEnterprise
exportDependencies=true
exportQuery=select * from ci_infoobjects where si_parent_folder = <your own id or query> OR SI_ID = <your own id or query>

Save these lines of text in a file, e.g. mybackup.properties. After all you can execute the following commands on the command line or in a batch file (replace C:\BOE4 etc. with your own BO install path):

cd “C:\BOE40\SAP BusinessObjects\SAP BusinessObjects Enterprise XI 4.0\win32_x86\jre\bin”
java -jar “C:\BOE40\SAP BusinessObjects\SAP BusinessObjects Enterprise XI 4.0\java\lib\biarengine.jar” C:\Temp\mybackup.properties

You can use either the biarengine or LCM to restore content to the original system. As you can only restore the full BIAR file, I recommend to have a dedicated recovery or sandbox system in place where you can import the BIAR file as such and then use LCM to restore only what you need back to the orginal system. Such a dedicated system you need anyway for the second major approach, restoring objects from a full backup.

The full backup / restore approach

As long as you have a dedicated system available to “mount” the full backup into a running BO system this appraoch is quite straight forward and nothing to be afraid of (as long as you know what you do ;-)). The following high-level steps will guide you through the recovery process:

  1. Take a full backup of your original system on a regular basis. This includes at least a backup of your CMS system / repository database, the FileStore folder(s). As of FP3/SP04 SAP added an official “hot backup” option (see the “Settings” area in CMC), therefore you don’t need to shutdown your BO system to take the backup. Just define a time window in which you create both, first the backup of your system database and then the backup of the FileStore. In addition to system database and FileStore, please note your Cluster Key and Administrator password from the original system!
  2. Prepare the Recovery-System: I assume you have an already installed “recovery” system. This can be a sandbox or as well e.g. a QA system you want to temporarily use as your recovery system. Stop all existing SIA and Tomcat services on the «Recovery» system. Have a look into Task Manager and make sure that all CMS.exe and sia.exe processes have been stopped.
  3. Restore the System-DB: Restore the backup of your «original» system database to a new, empty database / schema. After restore, execute the following SQL statement on this restored DB to remove all server entries: Delete from CMS_INFOOBJECTS7 where ParentID=16
  4. Restore the FileStore: On the «Recovery» system rename the existing FileStore folder to «FileStore_orig». Restore the FileStore from «Orginal» to the «Recovery» system into its original location.
  5. Create ODBC source: In case your recovered system DB is hosted on a SQL server, create a 64bit ODBC source to it on the «Recovery» system.
  6. Create Recovery SIA (1/2): On the «Recovery» system, create a new SIA with a new CMS. Point the CMS to the recovered system database (probably using the ODBC source created in the previous step). Select the «Use a temporary CMS» option.
  7. Create Recovery SIA (2/2): Once the new SIA is added, change the Cluster name from the orginal name to a new name, e.g. «Recovery». Start the newly created SIA and check in Task Manager if CMS starts up and keeps up running. Then stop the SIA again.
    (if you want you can combine step 6 and 7 and add only one additional SIA)
  8. Create second SIA to add regular servers: Add a second SIA including regular servers, you can even add a second CMS. Start this SIA and Tomcat. Login to CMC on the «Recovery» system and check in the Servers area if all expected servers are up and running.
  9. Verify File Repository Servers: Check if the file path indicated in the Properties of the Input and Output File Repository Servers correspond to the location where the FileStore has been recovered.
  10. Run the Repository Diagnostic Tool: Run the Repository Diagnostic Tool in order to remove any inconsistencies between File Repository Servers and (recovered) system database.
    (replace C:\BOE4\ with your own BO install path; more info about the command line parameters you’ll find in the BO admin guide):
    cd “C:\BOE4\SAP BusinessObjects Enterprise XI 4.0\win64_x64”
    reposcan.exe -dbdriver sqlserverdatabasesubsystem -connect “UID=sa;PWD=<password>;DSN=<ODBC_Name>” -dbkey <cluster key> -inputfrsdir “C:\BOE4\SAP BusinessObjects Enterprise XI 4.0\FileStore\Input” -outputfrsdir “C:\BOE4\SAP BusinessObjects Enterprise XI 4.0\FileStore\Output”
  11. Do a «selective restore» from the recovery to the original system using LCM (or one of the other ways explained above, mostly depending whether you need to recover report instances or not)
  12. Recreate original settings on Recovery system: If you don’t need the «Recovery» system anymore, you can reset everything to match the original settings. For this simply stop the created SIAs and either set their startup mode to disabled or delete the SIAs from the system entierly (a practical how-to you’ll find here). Rename your FileStore on the Recovery system from “FileStore_orig” back to FileStore. This means you need to either delete the recovered FileStore folder or give it another name before. In addition you can remove the recovered database (schema).

Once you excerised this process a few times it will serve you as a reliable way to recover (partial) elements in a reasonable amount of time. But still it is not the “elegant” way to go. And therefore I would like to introduce you to my third and favored major approach. What SAP fails to deliver is usually deliverd by one of the add-on providers.

The professional approach

As a professional BO administrator I like professional tools. 360Plus is one of my favorite tools, not only regarding backup & recovery. But this is one of the major reasons why I recommend this solution. 360Plus doesn’t keep any separate information outside the regular BO system database, it’s just an alternative view to its content in addition to the CMC.

Let the pictures speak for themselves:

First of all you need to create a backup job in the web based interface of 360Plus, you can choose from various object types. In addition you can choose whether to include subfolders, report instances or Favorites folders in case you choose groups and users:

You can schedule this job to run “now” or at a later point in time. By the way: All the jobs scheduled with 360Plus can be triggered by an external scheduler like $Universe etc.

Once having executed the backup job you’ll find a new entry in the context menu of any given folder or document:

And for folders which do not exist anymore completely you’ll find the Trash Bin icon:

After all you can choose from available recovery options as you are used to from any other professional backup & recovery solution:

That’s it. The only thing you need to do in addition is to save the 360Plus file folder on your BO server by a regular file backup tool.

Are you dissatisfied with the existing backup & recovery capabilities in BO 4.0 too? Or do you see different ways of improving this process? Let me and other knows and write a comment! Thanks for your participation!

Advertisements

23 Responses to Backup & Recovery in BO 4.0

  1. Vamsi says:

    Hi,

    Liked It very much. If you could share/compare 360 View with other alternatives in the market along with what SAP is providing in a tabular format with some recommedations, it will be quite helpful.

    Vamsi

  2. Pingback: Backing up and Restoring SAP BusinessObjects « All Things BOBJ BI

  3. ethan says:

    Hi,
    18 months after your original post, do you know if these are still the best ways of backing up the repository? or have recent versions of BusinessObjects added the ability to back-up and restore individual objects in a sane manner?

    Thanks!

    • rbranger says:

      Hi Ethan
      To be honest I didn’t work much with BO 4.1 in regards to backup & recovery myself. I will double check with my BOBJ platform team and post an answer asap.

      Best regards
      Raphael

      • rbranger says:

        Hi all

        My team double checked the various options mentioned in my blog and came to the conclusion that nothing changed significantly. So you can assume the options described in the blog are still valid (except that the 360 product features became even more powerful).

        Cheers
        Raphael

  4. ethan1701 says:

    if you create a BIAR with biarengine.jar, it can still be opened with the Upgrade Management Tool, in order to perform a partial restore.
    You simply need to add “-jar upgrademanagementtool.jar -internal_use_only_noversioncheck” to the command opening the UMT, and so it won’t check if the BIAR was created in a previous version of BusinessObjects or not.

    I think that’s a game-changer, and makes the biarengine the best option available.

  5. Patrick Delage says:

    Thanks, very usefull bolg. You probably save administrator job. If crash happen on the company your there are work. 🙂 I definitely like the step by step you provide to restore full backup. Need to try now !

    • rbranger says:

      Hi Patrick. Thank you for reading! And let me know if you have enhancements based on your experience.
      Cheers
      Raphael

      • Jo Mathew says:

        Hi rb,

        I want to take a Full BIAR back up and restore in a different Data Center (Diferent NW). So what all options I need to select in IW or which all option I need to unselect if I go for a Full BIAR export. Thanks Much in advance, Jo Mathew

  6. Scott says:

    We are still on XI 3 planning a migration to BI 4 this year. I have been experimenting with the biarengine approach and just cannot get it to work with a query (i.e. “select * from ci_infoobjects where si_parent_folder = …”) – maybe it has something to do with our CMS, who knows. I cannot agree more with your hash tag #factoryofsadness regarding the state of “out of the box” backup/restore capability. We are fortunate to only have needed to do a restove via the “full backup/restore” method once in 9 or so years of BOE use. Hope I didn’t just jinx us…

  7. Jo Mathew says:

    Hi Guys, I need to take a Full back up of my Existing BO XI 3.1 system and restore on a different System. So can I go ahead with BIAR approach and please help me with what all are options I need to check when I go for a Full BIAR Back UP..

    Thanks in advance, Jo.

    • Hi Jo
      First of all, the only “real” full backup is using a complete backup of your system database and file store as indicated above. Still, you can save most items to the BIAR file, just choose all the objects you need (e.g. select everything in Import Wizard) and export them to the BIAR file as the output / destination system.

      Cheers
      Raphael

  8. Pingback: Optimize Your Business Objects BI4.2 Upgrade - GB And Smith - Administration Intelligence

  9. Pingback: Step 10: Going live: robust backup strategy - GB And Smith - Administration Intelligence

  10. Pingback: Conclusion - GB And Smith - Administration Intelligence

  11. Vytas says:

    I am trying to create a script that will backup the universes everyday.

    I have created universe_daily.properties file and execute it running a command on a server. java -jar /locationA/enterprise_xi40/java/lib/biarengine.jar /locationB/backups/universe_daily.properties

    It worked with the following content of the file universe_daily.properties:

    exportBiarLocation=/location/universe_backups/backup_universe_daily.biar

    action=exportXML

    userName=Administrator

    password=***

    CMS=[server]:6400

    authentication=secEnterprise

    exportDependencies=false

    exportQuery=select * from ci_appobjects where si_kind in (‘Universe’, ‘DSL.Universe’)

  12. Vytas says:

    Hi,

    Do you know if there is any limit for biar file size or amount of objects in biarengine? I have noticed that after some time the biar file is split into two biar files. It seems that it started to split the files once it reached the biar file size more than ~550 MB.

    The properties file query extracts the whole content:
    exportDependencies=true
    exportQuery=select * from ci_infoobjects

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: