This tutorial covers how to set up multiuser development environment using the BI Administration Tool and work in the multiuser environment. (Specifically, this tutorial covers how to set up the development environment to support two users.)
Note: This tutorial is intended for the learners who are already familiar with the Oracle BI Administration Tool, and should have completed the Oracle by Example tutorial "Creating a Repository using Oracle Business Intelligence Administration Tool."
Approximately 50-60 minutes.
Topics
This tutorial covers the following topics:
Viewing Screenshots
Place the cursor over this icon to load and view all the screenshots for this tutorial. (Caution: This action loads all screenshots simultaneously, so response time may be slow depending on your Internet connection.)
Note: Alternatively, you can place the cursor over each individual icon in the following steps to load and view only the screenshot associated with that step.
Overview
In this tutorial, you will be guided to set up a multiuser development environment to support two users. You will learn how to set up two users, Karen and Kurt, with the required privileges, prepare the environment, and work in the multiuser environment as these two users.
Scenario
You should be familiar with the functionality of the BI Administration Tool. This tutorial uses Sales History repository (SH.rpd), and the rpd file along with the instructions to set up the same are provided in the prerequisites section.
So, to continue with the steps listed in the topics, you should have installed the required software, and performed the setup for the SH.rpd repository, and other setup as mentioned in the Prerequisites topic.
Prerequisites
Before starting this tutorial, you should:
1. | Have access to or have installed Oracle Database 10g (preferably version 10.2) | |
2. | Have access to or have installed the sample schemas (specifically SH) | |
3. | Have installed Oracle BI Enterprise Edition 10.1.3.3. | |
4. | Have completed the tutorial "Creating a Repository using Oracle Business Intelligence Administration Tool." | |
5. | Have set up the Sales History (SH.rpd) repository following the instructions given here:
|
By default, the Oracle BI repository development environment is not set up for multiple users. However, online editing makes it possible for multiple developers to work simultaneously, though this may not be an efficient methodology, and can result in conflicts, because developers can potentially overwrite each other's work.
A more efficient development environment would permit developers to modify a repository simultaneously and then check in changes. This can be done by setting up the multiuser environment using the Oracle BI Administration Tool to support concurrent development.
For example, after completing an implementation, the administrator may want to deploy Oracle BI to other functional areas of the company. In this example, multiple developers need to work concurrently on subsets of the metadata and merge these subsets back into a master repository without their work conflicting with that of the other developers. In other organizations, a single developer might manage all development. For simplicity and performance, this developer might want to use a multiuser development environment (MUDE) to maintain metadata code in smaller chunks instead of in a large repository. In both situations, this is accomplished by creating projects in the repository file in the BI Administration Tool and then copying this repository file to a shared network directory. Developers can check out projects, make changes, and then merge the changes into the master repository.
For example, after completing an implementation, the administrator may want to deploy Oracle BI to other functional areas of the company. In this example, multiple developers need to work concurrently on subsets of the metadata and merge these subsets back into a master repository without their work conflicting with that of the other developers. In other organizations, a single developer might manage all development. For simplicity and performance, this developer might want to use a multiuser development environment (MUDE) to maintain metadata code in smaller chunks instead of in a large repository. In both situations, this is accomplished by creating projects in the repository file in the BI Administration Tool and then copying this repository file to a shared network directory. Developers can check out projects, make changes, and then merge the changes into the master repository.
The Oracle BI repository development process adheres to the classic Software Configuration Management (SCM) process, which utilizes a three-way merge to manage concurrent development. Changes are managed by merge and reconciliation. Most of the merging process is automatic, and changes do not conflict. In case of any conflicts, developers can manually resolve them. The merge creates a final “merged” file based on two changed files, which are base-lined against a common parent file. This enables developers to work simultaneously on repository development. Developers manage this process using the utilities and interfaces provided in the BI Administration Tool. Changes are managed by merge and reconciliation. The merge creates a final, “merged” file based on two changed files, which are base-lined against a common parent file. Oracle BI repository is stored as an rpd file. Developers check out the file and make changes locally. Changes are then merged into a final, merged repository (rpd) file.
In this tutorial, you first set up the environment for concurrent development by two users. Then you work in the multiuser development environment to make changes to the same repository (SH.rpd) as two developers, and merge changes as appropriate to the SH.rpd.
In this topic, you will set up two users Karen and Kurt to give them the required privileges to support the multiuser environment. These two users already exist in the SH.rpdrepository. So, you will modify these two users, Kurt and Karen, to give them administrative privileges so that they can act as developers. As a precaution, you reset their passwords, so that the users need to communicate with the Administrator user before starting with development.
Perform the following steps:
1. | Before continuing with setting up the users, stop the Oracle BI Server service. Now select All Programs > Oracle Business Intelligence > Administration from the Start menu . |
2. | Select File > offline and select sh.rpd to open the repository in offline mode. Enter Administrator as the username and password, and click OK. |
3. | Select Manage > Security. Click Groups in the left pane. Double-click Administrators. |
4. | In the Administrators dialog box that is displayed, click Add to add users to this group. In the Add Membersdialog box, select Kurt to add this user to the Administrators group. Similarly, add the user Karen to the Administrators group. After adding both the users, click OK again to close theGroup – Administrators window. |
5. | Now set the passwords for the users Kurt and Karen. Click Users in the left pane. Double-click Kurt. In the User dialog box, enter Kurt in the Password and Confirm Password fields. Click OK. Similarly, double-click Karen, and in the User dialog box, enter Karen in the Password and Confirm Passwordfields. Click OK. Select Action > Close to close the Security Manager window. |
6. | In the BI Administration window, click Save icon to save the changes to repository. It is not necessary to check consistency. When prompted to check global consistency, click No. |
7. | Note that currently only one user can modify the repository at a time . To check the same perform the following steps: Select Start > Programs > Oracle Business Intelligence > Administration to open a second instance of the Oracle BI Administration Tool. Select File > Open > Offline. Select the sh.rpd repository. Click Open. The following message is displayed to indicate you can open the repository in read only mode. This is because multiuser development has not been set up, so only one user can edit the repository at a time. Click No. Select File > Exit to close this instance of the Oracle BI Administration Tool. |
Preparing the Environment for Multiuser Development
In this topic, you create projects in the master repository. After you have copied the master repository to a shared directory, it is no longer used for development, so it can be used as a backup. Creating the original set of projects in the master repository allows you to see what changes were made after multiuser development is established by comparing the shared repository to the master. Normally, you create projects to contain all the presentation catalogs in the repository, broken down in a reasonable manner. You will perform the following tasks required for setting up the multiuser development environment:
Defining Multiple Projects | ||
Copying Master Repository to a Shared Directory | ||
Setting Up Multiuser Directory |
Defining Multiple Projects
In this tutorial, you create only two projects. In this practice, you create only two projects.
1. | Select Manage > Projects. The Project Manager window is displayed. Select Action > New Project. |
2. | Enter Sales Facts Project as the name. Expand Catalogs in the left pane. Expand SH. Select “SH”.“Salesfacts”. Click Add. Note that a Catalogs folder appears in the right pane. Expand Catalogs in the right pane. Note that the SH catalog is included in the project. Expand SH in the right pane. note that “SH”.”Salesfacts” has been included in this project as well. |
3. | Now, expand the Users folder in the left pane. Press and hold [Ctrl] key and select Administrator, Kurt, and Karen. Click Add. A Users folder is added to the right pane. Expand the Users folder in the right pane and ensure that the three users are added to the project. Click OK to complete the project creation. |
4. | Similarly, create another project with the name Sales Project, to contain the same Salesfacts catalog, and add all the above three users to the project, so that the project looks like this: After creating both the projects, your project manager window looks like this: |
5. | In the Project Manager window, select Action> Close. Click Save icon in the BI Administration Tool to save the changes to the repository. |
Copying Master Repository to a Shared Directory
Copy your master repository to a shared directory. This allows all the developers on the development team to access the repository.
1. | Open Windows Explorer. Navigate to C:\Documents and Settings\All Users\Shared Documents. Folders in this Shared Documents folder are automatically shared with other users on this machine. Right-click in the right pane and select New > Folder. Name the new folder RPD. |
2. | Copy sh.rpd from C:\OracleBI\server\Repository to the Shared Documents\RPD folder. In the Shared Documents\RPD folder, rename the repository shared_sh.rpd. |
In this topic, you set the multiuser directory in the Oracle BI Administration Tool to point to the shared repository you just created:
1. | In the Oracle BI Administration Tool, select Tools > Options. . |
2. | Click the Multiuser tab. Click Browse next to the multiuser development directory field. Browse to select Shared Documents\RPD. Click OK. |
3. | In the Full Name field, enter Karen . Click OK to close the Options dialog box. In the BI Administration Tool, select File > Close to close the sh.rpd repository. Now, you are ready to perform multiuser development. |
Now that you have prepared the environment to allow multiuser development, you will now perform the tasks listed below for working in the multiuser development environment.
Checking Out a Project | ||
Local Development: Making Local Changes to the Project | ||
Merging the Changes to the Project as the First User | ||
Publishing the Changes to the Network as the Second User |
Checking Out a Project as Two Different Users
In this topic, you open the shared repository (shared_sh.rpd) and check out one of the projects that you have created in the previous topics by logging in as two different users Karen and Kurt. This facilitates you to work on the same project as two different users in the multiuser environment:
1. | In the Oracle BI Administration Tool, select File > Multiuser > Checkout. The Extract from shared_sh.rpd dialog box opens. Enter Karen as the username and password. Click OK. |
2. | Note that the two projects you created earlier are listed in the Browse dialog box. Select Sales Project and clickOK. The Create new subset repository dialog box opens. Change the repository file name to Karen.rpd. In the BI Administration Tool, click Save to save the changes. Note that this repository file is being saved to the default repository directory and not the shared repository directory you created earlier. Also, note that a copy of the shared master repository, shared_sh.rpd, has been copied to the default repository directory. |
3. | Note that a set of new files gets created in the Repository directory of BI Server and also in the shared directory. Review the files that were created or modified by the checkout process. Using Windows Explorer, navigate to Shared Documents\RPD folder. Observe the new files that appear (as given in the screen below): Navigate to <Install Drive>:\OracleBI\server\Repository . Observe the new files that appear: |
4. | Now check out the same project as the second user Kurt using a second instance of the Oracle BI Administration Tool. Select Start > Programs > Oracle Business Intelligence > Administration. Select File > Multiuser > Checkout. The Extract from shared_sh.rpd dialog box opens. Now, enter Kurt as the username and password. Click OK. |
Select the same Sales Project. Click OK. (Note that both projects are still shown. There is no indication that Karen has the Sales Project open. This is an intentional feature of the product to support multiple developers working on a single project .) Enter Kurt.rpd as the file name. Click Save. The Sales Project is now being worked on by two developers Kurt and Karen simultaneously. Navigate to <Install Drive> :\OracleBI\server\Repository and note that a set of files for Kurt's repository has been added. Note: The changes will be merged during the checkin process that is discussed in a later topic in this tutorial. | |
Local Development: Making Local Changes to a Project
In this topic, you make changes locally to a project as the first user, Karen, and verify if the changes can be merged by a second user, Kurt:
1. | Modify the project as Karen and check it in to understand the checkin process. Return to the BI Administration instance that has Karen.rpd open. The repository name is displayed on the title bar of the application. In the Presentation layer, expand SH, right-click Channels, and select Delete. (This change can be tracked easily.) |
2. | Click Yes to confirm the deletion. In the BI Administration Tool, click Save to save the repository. When prompted to perform global consistency check, click No. |
3. | Select File > Multiuser > Merge Local Changes. This merges your changes to the shared repository. A Lock Information window is displayed. The shared repository will be locked until checkin is complete. Accept the default values shown and click OK. |
4. | The Merge Repositories dialog box appears. Do not click Merge yet. Note that you first merge your modified project repository with the original copy of the project repository in the default repository directory. Note: Examine the effects of locking the repository. In Windows Explorer, navigate to Shared Documents\RPD. You can see that an additional file shared_sh.lck appears in the directory; this is the lock file, which is created when the shared repository is locked. Also, when you navigate to D:\OracleBI\server\Repository you can see thatshared_sh.rpd and shared_sh.log are generated . |
5. | Now try to merge the changes as the second user Kurt. Switch to the Oracle BI Administration instance with the Kurt.rpd open and attempt to merge local changes. Select File > Multiuser > Merge Local Changes. An error message appears: You are already attempting to check in this file. Click OK to close the error message. Note: No other user can check in projects while the shared repository is locked. Here, you are trying to check in the same project using the same Windows username, and so the error message warns you about this. |
1. | Return to the Oracle BI Administration Tool where the checkin is being performed for Karen.rpd and complete the merge. In the Merge Repositories dialog box, ensure that the original subset isD:\OracleBI\server\Repository\originalKaren.rpd. Ensure that the modified subset is D:\OracleBI\server\Repository\Karen.rpd. Click Stats to see the statistics. A Results dialog box is displayed showing the summary of changes. Observe that one object was deleted from the modified subset. |
2. | Close the Results dialog box. This takes you back to the Merge Repositories dialog box. Click Merge now. Click No when prompted to check global consistency. At this point, the changes are merged to the local copy of the shared_sh.rpd repository and the local copy is opened. Note that the changes have not yet been published to the shared master repository. Navigate to D:\OracleBI\server\Repository. Note that there is a new file namedshared_sh.merge_log.csv. This is a comma-separated values file listing the changes made to the repository in the merge. Double-click shared_sh.merge_log.csv to open it using Microsoft Excel and check the changes. Closeshared_sh.merge_log.csv without saving any changes and close MS Excel. |
3. | Return to the Administration Tool with shared_sh.rpd open and expand the SH presentation catalog to ensure that the Channels presentation table no longer appears in the catalog. Save the modified shared_sh.rpd repository. When prompted to check for global consistency, click No. |
4. | Select File > Close to close the repository. A warning appears indicating that you are closing an MUD repository without publishing or discarding your local changes, so the lock on the repository has not been released. Click Cancel. Note: At this point, you have the option to publish the repository (copy the local copy of the shared repository to the server), discard the local changes, or close the repository and keep the lock. |
5. | Select File > Multiuser > Publish to Network. (The local copy of the shared repository is merged with the shared repository and then closed and deleted). |
6. | Select File > Multiuser > History. Log in as Administrator with the password Administrator. The Version 1 of shared_sh repository is opened and the history of changes is displayed. |
7. | Right-click the entry and select View > Details. Observe that the event details for the project are displayed. Close the details window. Also, select Action > Close to close the the History window. |
8. | In the Administration Tool, select File > Open > Offline. Navigate to Shared Documents\RPD folder and select shared_sh.rpd. Click Open to open the shared master repository. Click Yes to acknowledge that it can only be opened as read-only, and log in as Administrator . |
9. | Expand the SH presentation catalog and ensure that the Channels presentation table no longer appears. Close the repository. Select File > Exit to close this instance of the BI Administration Tool. |
As the second user Kurt, you can verify or discard the changes made and checked in by Karen and publish the changes to the net work:
1. | Return to the instance of the Administration Tool with Kurt.rpd open. Expand the SH presentation catalog and observe that Channels still appears. This is because the user Kurt had checked out this project before Karen deleted the Channels table. Select File > Multiuser > Merge Local Changes. Click OK to accept the default lock information. Note: The fact that Channels table was deleted is listed in the merge log and indicates that another developer did this. This is why the application copies the latest version of the shared repository when performing a checkin. |
2. | The Merge repositories dialog box opens. Select the listing to highlight it and then click the ellipsis button to view the details of the objects deleted from the Current repository. In the details dialog box that appears, click Cancel. In the bottom panels, the original Kurt project, the modified Kurt project, and the current shared_sh repository are shown. The differences between the projects are displayed. In this case, the original and modified repositories have a Channels presentation table that is not in the current shared repository. At this point, a decision must be made about how to proceed with the merge that is whether to accept the changes made by Karen or discard the changes. |
3. | In the Decision column for the highlighted listing, choose Modified (A) from the drop-down list (it may be necessary to scroll to the right). This chooses the modified repository over the current repository (this does not have Channels table), thereby rejecting the changes of the other developer, and restoring the repository to the state before Karen deletedChannels. |
4. | Click Merge. Click No when prompted to check for global consistency. Ensure that Channels now appears in the SH presentation catalog. |
5. | Select File > Multiuser > Publish to Network to publish the repository. Click No when prompted to check for global consistency. The local shared repository is merged with the master shared repository. |
6. | Open Shared Documents\RPD\shared_sh.rpd in read-only mode as Administrator and ensure that the changes made by Karen are discarded by Kurt. Ensure that Channels appears in the SH presentation catalog. |
Note: In this tutorial, you have set up and worked in the multiuser environment using the BI Administration Tool. You worked on the same repository sh.rpd, to make changes as different users and merged these changes as appropriate. However, as an administrator you may want to merge the changes from multiple repositories outside of MUDE. This is sometime referred to as manual merge process, though the underlying technique remains the same, that is the three-way merge process. An OBE for describing the techniques ofMerging/Importing Objects from Different Repositories is under development, and will be made available shortly.
In this tutorial, you learned how to:
Set up the multiuser development environment | ||
Work in the MUD environment as two different users | ||
Merge the changes to the repository | ||
Publish the changes to the network |
To learn more about Oracle Business Intelligence, you can refer to:
Additional OBEs on BI EE on the OTN Web site. | ||
OBE on "Merging/Importing Objects from Different Repositories" (Under Development) |