Table of Contents

Copyright

Brief Table of Contents

Table of Contents

Preface

About this Book

Acknowledgments

Chapter 1. Beyond reporting: business analytics

1.1. The need for business analytics

1.2. Replacing static reports with online analytical processing (OLAP)

1.3. OLAP to the rescue

1.3.1. Mondrian lets users drive analysis

1.3.2. Mondrian is a low-cost, low-risk solution

1.3.3. Mondrian is fast

1.3.4. Mondrian is secure

1.3.5. Mondrian is based on open standards

1.4. Summary

Chapter 2. Mondrian: a first look

2.1. Mondrian’s role in analytics

2.2. Running and using Mondrian

2.2.1. Getting and running the software

2.2.2. Navigation and viewing reports

2.2.3. Interactive analytics

2.2.4. MDX analysis with Saiku

2.3. Multidimensional modeling

2.3.1. A simple report

2.3.2. Modeling business questions

2.4. Getting and organizing the data

2.4.1. The data warehouse: physically storing the data

2.4.2. Examining the Adventure Works data

2.4.3. Populating the data

2.5. Summary

Chapter 3. Creating the data mart

3.1. Structuring data for analytics

3.1.1. Characteristics of analytic systems

3.1.2. Data architecture for analytics

3.1.3. Star schemas

3.1.4. Comparing star schemas with 3NF

3.1.5. Star schema benefits

3.2. Additional star schema modeling techniques

3.2.1. Slowly Changing Dimensions (SCDs)

3.2.2. Time dimensions

3.2.3. Snowflake design

3.2.4. Degenerate and combination/junk dimensions

3.3. Summary

Chapter 4. Multidimensional modeling: making analytics data accessible

4.1. A simple schema

4.1.1. Schema element

4.1.2. Cube element

4.1.3. Attribute element

4.1.4. Dimension element

4.1.5. Measure element

4.1.6. PhysicalSchema element

4.2. Anatomy of a schema

4.2.1. XML schema files

4.2.2. Structure of a schema

4.2.3. Schema versioning and upgrading

4.3. Dimensions, hierarchies, and levels

4.3.1. Hierarchies and levels

4.3.2. Time dimension

4.3.3. Attribute hierarchies

4.3.4. The measures dimension

4.4. Summary

Chapter 5. How schemas grow

5.1. Schema evolution

5.1.1. Multiple cubes in a schema

5.1.2. Shared dimensions

5.1.3. Conformed dimensions

5.1.4. Using a dimension twice in the same cube

5.1.5. Measures across multiple fact tables

5.1.6. Smart evolution: multiple cubes versus single cubes

5.1.7. Other schema evolution patterns

5.2. Alternative ways to store dimensions

5.2.1. Star dimensions

5.2.2. Snowflake dimensions

5.2.3. Degenerate dimensions

5.3. Advanced hierarchy structures

5.3.1. Parent-child hierarchies

5.3.2. Ragged hierarchies

5.4. Calculations

5.4.1. Bucketing attributes

5.4.2. Calculated members

5.5. Summary

Chapter 6. Securing data

6.1. Use of roles

6.1.1. What’s a role?

6.1.2. Declaring roles in the Mondrian schema

6.1.3. Enforcement of roles

6.2. Security grants

6.2.1. Schema grants

6.2.2. Cube grants

6.2.3. Dimension and hierarchy grants

6.2.4. Member grants

6.2.5. Measure grants

6.3. Summary

Chapter 7. Maximizing Mondrian performance

7.1. Figuring out where the problems are

7.1.1. Performance improvement process

7.1.2. Preparing for performance analysis and establishing current performance

7.2. Tuning the database

7.3. Aggregate tables

7.3.1. Creating aggregate tables

7.3.2. Declaring an aggregate table

7.3.3. Which aggregates should you create?

7.4. Caching

7.4.1. Types of caches

7.4.2. External segment cache

7.5. Priming the cache

7.6. Flushing the cache

7.6.1. Flushing the schema cache

7.6.2. Flushing specific cubes

7.6.3. Flushing specific regions of the cache

7.7. Summary

Chapter 8. Dynamic security

8.1. Preparing for dynamic security

8.1.1. Creating an action sequence

8.1.2. Configuring and running the action sequence

8.2. Restricting data using a dynamic schema processor

8.2.1. Modifying the schema to support a DSP

8.2.2. Example dynamic schema processor

8.2.3. Configuring the DSP

8.3. Restricting data using dynamic role modification

8.3.1. Preparing the schema

8.3.2. Custom MDX connection

8.3.3. Custom delegate role and custom hierarchy access

8.3.4. Configuring the custom MDX connection

8.4. Deciding which security approach to use

8.5. Summary

Chapter 9. Working with Mondrian and Pentaho

9.1. Pentaho Analyzer

9.1.1. Overview of Pentaho Analyzer

9.1.2. Using Analyzer for analysis

9.1.3. Charting with Analyzer

9.1.4. Special schema annotations for using Analyzer

9.2. Saiku

9.3. Community Dashboard Framework

9.3.1. Creating a CDF dashboard

9.3.2. Using Community Data Access

9.4. Pentaho Report Designer

9.4.1. Creating an OLAP data source

9.4.2. Using parameters

9.4.3. PRD and the dynamic schema processor

9.5. Pentaho Data Integration

9.6. Summary

Chapter 10. Developing with Mondrian

10.1. Calling Mondrian from a thin client

10.1.1. XML for Analysis (XMLA)

10.1.2. Configuring Mondrian as an XMLA web service

10.1.3. Calling XMLA services with Ajax

10.1.4. XMLA for JavaScript (xmla4js)

10.2. Calling Mondrian from a Java application

10.2.1. Creating connections via olap4j

10.2.2. Querying data

10.3. Summary

Chapter 11. Advanced analytics

11.1. Advanced analytics in Mondrian with MDX

11.1.1. Running MDX queries

11.1.2. Ratios and growth

11.1.3. Time-specific MDX

11.1.4. Advanced MDX

11.2. What-if analysis

11.3. Statistics and machine learning

11.3.1. R

11.3.2. Weka

11.4. Big Data

11.4.1. Analytic databases

11.4.2. Hadoop and Hive

11.4.3. NoSQL systems and Hadoop

11.5. Summary

Appendix A. Installing and running Mondrian

A.1. Somewhere to store the data

A.2. Just getting Mondrian

A.3. Mondrian with Pentaho

A.4. Adding C-Tools to Pentaho

A.5. Mondrian with Saiku

Appendix B. Online resources

Appendix C. Schema shortcuts

Index

List of Figures

List of Tables

List of Listings

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset