Business Intelligence Architecture and Data Warehousing
The early days of business intelligence processing (any variety except data mining) had a strong, two-tier, first-generation client/server flavor. (Some business intelligence environments that were hosted on a mainframe and did querying and reporting were built with a centralized architecture.)
Conceptually, early business intelligence architectures made sense, considering the state of the art for distributed computing technology (what really worked, rather than today’s Internet, share-everything-on-a-Web-page generation).
Many of these early environments had a number of deficiencies, however, because tools worked only on a client desktop, such as Microsoft Windows, and therefore didn’t allow for easy deployment of solutions across a broad range of users. Additionally, long-running reports and complex queries often bottlenecked regular work processes because they gobbled up your personal computer’s memory or disk space.
Most, if not all, tools were designed and built as fat clients — meaning most of their functionality was stored in and processed on the PC. In addition to the bottleneck problem, all users’ PCs had to be updated because software changes and upgrades were often complex and problematic, especially in large user bases.
The beginning of a new era of business intelligence architecture has arrived, regardless of whether your tool of choice is a basic querying and reporting product, a business analysis/OLAP product, a dashboard or scorecard system, or a data mining capability. Although product architecture varies between products, keep an eye on some major trends when you evaluate products that might provide business intelligence functionality for your data warehouse:
Server-based functionality: Rather than have most or all of the data manipulation performed on users’ desktops, server-based software (known as a report server) handles most of these tasks after receiving a request from a user’s desktop tool.
After the task is completed, the result is made available to the user, either directly (a report is passed back to the client, for example) or by posting the result on the company intranet.
Web-enabled functionality: Almost every leading tool manufacturer has delivered Web-enabled functionality in its products. Although product capabilities vary, most products post widely used reports on a company intranet, rather than send e-mail copies to everyone on a distribution list.
Support for mobile users: Many users who are relatively mobile (users who spend most of their time out of the office and use laptops or mobile devices, such as a Blackberry, to access office-based computing resources) have to perform business intelligence functions when they’re out of the office.
In one model, mobile users can dial in or otherwise connect to a report server or an OLAP server, receive a download of the most recent data, and then (after detaching and working elsewhere) work with and manipulate that data in a standalone, disconnected manner.
In another model, mobile users can leverage Wi-Fi network connectivity or data networks, such as the Blackberry network, to run business intelligence reports and analytics that they have on the company intranet on their mobile device.
Agent technology: In a growing trend, intelligent agents are used as part of a business intelligence environment. An intelligent agent might detect a major change in a key indicator, for example, or detect the presence of new data and then alert the user that he or she should check out the new information.
Real-time intelligence: Accessing real-time, or almost real-time, information for business intelligence (rather than having to wait for traditional batch processes) is becoming more commonplace. In these situations, an application must be capable of pushing information, as opposed to the traditional method of pulling the data through a report or query.
Like with traditional data-extraction services, business intelligence tools must detect when new data is pushed into its environment and, if necessary, update measures and indicators that are already on a user’s screen. (In most of today’s business intelligence tools, on-screen results are frozen until the user requests new data by issuing a new query or otherwise explicitly changing what appears on the screen.)