BI reporting tools architecture
To achieve BI, we need tools. Some tools will be used to extract and transform data (ETL tools: extract, transform, and load) which is out of the scope of our book. We also need reporting tools to display the information and help us perform a proper analysis of the information that we have, to achieve the required knowledge and wisdom. Also, we might need some other tools to help us in data mining and forecasting. Here, we will concentrate on BI reporting tools as it is the entrance point to our main title. In this section, we will talk about the generic BI reporting tools architecture, and then, we will give special attention to SAP Business Objects.
The BI reporting architecture model evolved as BI evolved. It started as a one-tier model, client applications, that can access the data files directly. It then evolved into a two-tier model, by adding a
database-server tier. The main purpose of the database-server tier is to enhance the security model for the previous model by isolating data access from the client tools. However, in this model, the client application will perform all the calculation and data processing before displaying the final results to the end user. This is why we call the client application in this model the
thick client, as it will require high-standard hardware on the client machines.
Later on, the BI reporting architecture model evolved to the three-tier or multitier model, which is the most common architecture used nowadays. In this model, we added one extra business or BI tier to act as an intermediate layer between the client application and database-server tier. This layer will enhance the overall end user experience, because it will perform data calculation and processing after getting the data from the database server and before sending it to the client application. This is why we call the client in this model a
thin client, because it will be used just to draw and display the results for the end user.
The following diagram displays the one-tier, two-tier, and three-tier models:
In the following sections, we will discuss the BI reporting architecture models in more detail.
The one-tier architecture model
In the one-tier architecture model, you have only one client application that connects directly to the data files. There is no authentication, and the user can modify, update, or even delete the master data files because he or she has complete access to data. The main characteristics of this model are:
- We don't have a server, and we have only a client application
- All calculations and processing are done by the client
- The data is not secured, as the end user can access it directly using the client tools
- You can't operate an efficient multiple user environment
- It is a cheap and simple solution
- The example tools are MS Excel, MS Access, and so on
The two-tier architecture model
In the two-tier architecture model, we have one extra tier, which is the database tier, besides a client-side application. This is why we call this model a client-server architecture model. To make it simple, let's just list the role of each component.
The database server is responsible for:
- Receiving data queries from client applications
- Communicating directly with the database and retrieving the required data
- Sending it back to the client
The client-side application is responsible for:
- Acting as an interface for the user
- Sending user requests to the database server
- Processing the data sent by the database server
The main characteristics of this model are:
- It supports multiuser environment
- It is more secured than the one-tier model
- The client application is a thick client
A Java application (client) generates and submits SQL queries to the database server (server). Then, this application will process the retrieved data to display the final output as an example of the two-tier model.
The three-tier architecture model
The three-tier architecture model is the same as the previous model, but we will add one extra tier for business logic. This is also known as the application server, and the main purpose of this tier is to process the information before submitting it to the client application.
The main characteristics of this model are:
- Data is more secured as end users don't have direct access to it
- It supports multiuser environment
- The semantic layer will isolate the physical layer from the Business layer
- The application server will generate SQL queries using the semantic layer and then submit them to the database
- Data calculation and processing are done on the application server
- Client applications are thin clients and just used to display information
We will not go deep into this as it is out of the scope of our book and is related to server administration, but all that you should know for now is that SAP Business Objects platform 4.x is a multitier model. We can see a simple representation of the SAP BO 4 solution architecture in the following diagram. First, we have client tools (first tier) at the top of the graph. We have many client and reporting tools in SAP BO 4, such as Crystal Reports, Web Intelligence, and Dashboards. Then, we have the application server (second tier) in the middle. We have many modules in the application server, but our main concern here is the semantic layer, which will be managed and maintained by the Information Design Tool. Finally, we have the third tier represented in data sources and source systems at the bottom of the graph.