11.1.2: BI Architecture and Core Components
- Page ID
- 53410
\( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)
\( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)
\( \newcommand{\dsum}{\displaystyle\sum\limits} \)
\( \newcommand{\dint}{\displaystyle\int\limits} \)
\( \newcommand{\dlim}{\displaystyle\lim\limits} \)
\( \newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\)
( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\)
\( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\)
\( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\)
\( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\)
\( \newcommand{\Span}{\mathrm{span}}\)
\( \newcommand{\id}{\mathrm{id}}\)
\( \newcommand{\Span}{\mathrm{span}}\)
\( \newcommand{\kernel}{\mathrm{null}\,}\)
\( \newcommand{\range}{\mathrm{range}\,}\)
\( \newcommand{\RealPart}{\mathrm{Re}}\)
\( \newcommand{\ImaginaryPart}{\mathrm{Im}}\)
\( \newcommand{\Argument}{\mathrm{Arg}}\)
\( \newcommand{\norm}[1]{\| #1 \|}\)
\( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\)
\( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\AA}{\unicode[.8,0]{x212B}}\)
\( \newcommand{\vectorA}[1]{\vec{#1}} % arrow\)
\( \newcommand{\vectorAt}[1]{\vec{\text{#1}}} % arrow\)
\( \newcommand{\vectorB}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)
\( \newcommand{\vectorC}[1]{\textbf{#1}} \)
\( \newcommand{\vectorD}[1]{\overrightarrow{#1}} \)
\( \newcommand{\vectorDt}[1]{\overrightarrow{\text{#1}}} \)
\( \newcommand{\vectE}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash{\mathbf {#1}}}} \)
\( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)
\(\newcommand{\longvect}{\overrightarrow}\)
\( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)
\(\newcommand{\ket}[1]{\left| #1 \right>}\)
\(\newcommand{\bra}[1]{\left< #1 \right|}\)
\(\newcommand{\braket}[2]{\left< #1 \vphantom{#2} \right| \left. #2 \vphantom{#1} \right>}\)
\(\newcommand{\braopket}[3]{\left< #1 \vphantom{#2}\vphantom{#3} \right| #2 \vphantom{#1}\vphantom{#3} \left| #3 \vphantom{#1}\vphantom{#2} \right>}\)
\(\newcommand{\qmvec}[1]{\mathbf{\vec{#1}}}\)
\(\newcommand{\op}[1]{\hat{\mathbf{#1}}}\)
\(\newcommand{\expect}[1]{\langle #1 \rangle}\)
\(\newcommand{\dfn}[1]{\emph{\textbf{#1}}}\)
BI Architecture and Core Components
A robust BI environment is underpinned by a multi-layered architecture consisting of several core components that work together. A common approach is the three-tier BI architecture, which divides the system into a bottom, middle, and top layer: - Bottom Tier – Data Sources and Storage: This foundational layer includes all operational data sources (e.g. OLTP databases from ERP/CRM systems, CSV files, external data feeds) and the processes to collect and store data for BI [2]. It involves ETL (Extract, Transform, Load) processes that gather raw data from disparate sources, convert it into a consistent format, cleanse and consolidate it, then load it into a data warehouse or other storage optimized for analysis. The data warehouse is typically a relational database or multidimensional store that holds large volumes of historical data, often structured in schemas (star or snowflake) that facilitate querying. This layer may also include an Operational Data Store (ODS) for near-real-time data and staging areas for data processing. - Middle Tier – OLAP and Data Analytics Engine: The middle layer contains the core analytics engine, often an OLAP server, that allows for complex analytical queries and aggregations on the stored data. This is where data is structured into multidimensional cubes (or similar structures) that enable fast retrieval along multiple dimensions (such as time, product, geography). Different OLAP models can be used: ROLAP (Relational OLAP, operating directly on relational tables), MOLAP (Multidimensional OLAP, pre-computed cubes stored in special formats), or HOLAP (Hybrid OLAP, combining both approaches). The OLAP engine provides capabilities for slicing and dicing the data, drilling down into details or rolling up to summaries, and performing calculations like year-over-year comparisons. In modern BI, this tier might also incorporate data mining algorithms and machine learning to discover patterns. - Top Tier – Front-End Tools and Applications: This is the presentation and application layer, containing the BI tools that end-users interact with. It includes tools for reporting, ad-hoc querying, dashboards, and data visualization. Through these tools, users can create and view reports, interact with charts and dashboards, and conduct analysis without needing to write code. Popular front-end components are dashboards that display KPIs at a glance, interactive reports that allow users to filter or drill into details, and alerting systems that notify stakeholders of important changes. The top tier focuses on delivering a user-friendly interface for decision-makers to explore data. It also often supports self-service BI, enabling business users to create their own queries or visualizations through drag-and-drop interfaces. This layer must be designed for usability and performance, so that even non-technical users can glean insights easily.

Each layer of the BI architecture has important components. For example, the data integration layer may involve tools like Informatica or SQL Server Integration Services for ETL. The data storage layer includes the data warehouse database and possibly data marts (subsets of the warehouse tailored for specific departments). The analytics layer might include an OLAP server (such as Microsoft SQL Server Analysis Services or Oracle Essbase) and analytical models (cubes, dimensions, measures). The presentation layer comprises BI software platforms (like Tableau, Power BI, or others) that connect to the warehouse or OLAP engine and provide user interfaces for analysis. Additionally, a metadata repository often accompanies these layers to store information about the data (definitions, lineage, transformation rules), which helps maintain consistency and traceability across the BI system.
A well-architected BI system also includes considerations for scalability (handling growing data and user loads), data quality checks at multiple layers (to avoid “garbage in, garbage out” analytics), and security (ensuring only authorized users can access sensitive data, often implemented via role-based access controls in the BI tools). Maintaining this architecture can be challenging if not designed properly; common pitfalls include data silos, slow query performance on large data, or inconsistent metrics definitions across reports. Best practices involve establishing a “single source of truth” (often via the data warehouse and governed semantic models) so that all reports use consistent data and definitions.


