Table of Contents
- Title and Copyright Information
- Accessibility and Support
-
1
Case Study: Designing a Single-Server, Multidimensional Database
- Process for Designing a Database
- Case Study: The Beverage Company
- Analyzing and Planning
- Drafting Outlines
- Loading Test Data
- Defining Calculations
- Defining Reports
- Verifying the Design
-
2
Understanding Multidimensional Databases
- OLAP and Multidimensional Databases
- Dimensions and Members
- Data Storage
- The Essbase Solution for Creating Optimized Databases
- 3 Creating Applications and Databases
- 4 Creating and Changing Database Outlines
- 5 Creating and Working With Duplicate Member Outlines
- 6 Setting Dimension and Member Properties
-
7
Working with Attributes
- Process for Creating Attributes
- Understanding Attributes
-
Understanding Attribute Dimensions
- Understanding Members of Attribute Dimensions
- Understanding the Rules for Base and Attribute Dimensions and Members
- Understanding the Rules for Attribute Dimension Association
- Understanding the Rules for Attribute Member Association
- Understanding Attribute Types
- Comparing Attribute and Standard Dimensions
- Solve Order and Attributes
- Understanding Two-Pass Calculations on Attribute Dimensions
- Comparing Attributes and UDAs
- Designing Attribute Dimensions
- Building Attribute Dimensions
- Setting Member Names in Attribute Dimensions
-
Calculating Attribute Data
- Understanding the Attribute Calculations Dimension
- Understanding the Default Attribute Calculations Members
- Viewing an Attribute Calculation Example
- Accessing Attribute Calculations Members in Smart View
- Optimizing Calculation and Retrieval Performance
- Using Attributes in Calculation Formulas
- Understanding Attribute Calculation and Shared Members
- Differences Between Calculating Attribute Members and Non-Attribute (Stored and Dynamic Calc) Members
- Non-Aggregating Attributes
- Submitting Data for Valid Attribute Combinations in the Grid
- Suppressing Invalid Attribute Combinations in the Grid
- 8 Working with Typed Measures
- 9 Designing and Building Currency Conversion Applications
-
10
Designing Partitioned Applications
- Understanding Partitioning
- Partition Design Requirements
- Replicated Partitions
-
Transparent Partitions
- Rules for Transparent Partitions
- Advantages of Transparent Partitions
- Disadvantages of Transparent Partitions
- Performance Considerations for Transparent Partitions
- Calculating Transparent Partitions
- Performance Considerations for Transparent Partition Calculations
- Transparent Partitions and Member Formulas
- Transparent Partitions and Port Usage
- 11 Creating and Maintaining Partitions
- 12 Overview of Data Load and Dimension Build
-
13
Design Rules for Data Load or Dimension Build
- General Process for Creating Rules
- Generate Load Rules with Application Workbooks
-
Define Load Rules in Essbase Web Interface
- Access and Edit Rules
- Create New Dimension Build Rule
- Create New Data Load Rule
- Set File Delimiters
- Set Dimension Build Field Type Information
- Select a Build Method
- Set Dimension Build Operational Instructions
- Set Dimension Build Global Properties and General Source Properties
- Use the Source Data to Work with Member Properties
- Define Data Load Field Properties
- Perform Operations on Records
- Perform Operations on Fields
- Perform Operations on Data
- Validate Rules
-
Define Rules that Query External Sources
- Pull and Push Methods of Loading External Data into Essbase
- Overview of SQL Properties in Rules
- Connection Strings for SQL-Based Connectivity
- Access External Data Using a Connection and Datasource
- Access Oracle Database Using Oracle Call Interface
- Access Data Using ODBC Connectivity
- Access Data Using JDBC Connectivity
- Stream from a Remote Database
- Export Load Rules for Offline Editing
-
14
Performing and Debugging Data Loads or Dimension Builds
- Performing Data Loads or Dimension Builds
- Build Dimensions and Load Data by Streaming from a Remote Database
- Stopping Data Loads or Dimension Builds
- Tips for Loading Data and Building Dimensions
-
Debugging Data Loads and Dimension Builds
- Verifying that Essbase Server Is Available
- Verifying that the Data Source Is Available
- Checking Error Logs
- Resolving Problems with Data Loaded Incorrectly
- Creating Rejection Criteria for End of File Markers
- Understanding How Essbase Processes a Rules File
- Understanding How Essbase Processes Missing or Invalid Fields During a Data Load
-
15
Dimension Build Examples
- Dimension Build Methods
- Generation References in Dimension Builds
- Level References in Dimension Builds
- Using Parent-Child References
- Adding a List of New Members
- Building Attribute Dimensions and Associating Attributes
- Building Shared Members by Using a Rules File
- Building Duplicate Member Outlines
- 16 Modeling Data in Private Scenarios
- 17 Calculating Essbase Databases
-
18
Develop Formulas for Block Storage Cubes
- Implement Essbase Formulas and Formula Calculations
- Essbase Formula Syntax
- Use Functions in Formulas
- Use Substitution Variables in Formulas
- Use Formulas on Partitions
- Display Formulas
- 19 Formula Examples for Block Storage Databases
- 20 Defining Calculation Order
-
21
Intelligent Calculation for Block Storage Cubes
- Benefits of Intelligent Calculation
- Ways to Use Intelligent Calculation
- Intelligent Calculation and Data Block Status
- Limitations of Intelligent Calculation
- Considerations for Essbase Intelligent Calculation on Oracle Exalytics In-Memory Machine
- Using the SET CLEARUPDATESTATUS Command
- Calculating Data Blocks
- Effects of Intelligent Calculation
-
22
Dynamically Calculating Data Values
- Understanding Dynamic Calculation
- Benefitting from Dynamic Calculation
- Using Dynamic Calculation
-
Choosing Values to Calculate Dynamically
- Dense Members and Dynamic Calculation
- Sparse Members and Dynamic Calculation
- Two-Pass Members and Dynamic Calculation
- Parent-Child Relationships and Dynamic Calculation
- Calculation Scripts and Dynamic Calculation
- Formulas and Dynamically Calculated Members
- Scripts and Dynamically Calculated Members
- Dynamically Calculated Children
- How Dynamic Calculation Changes Calculation Order
- Reducing the Impact on Retrieval Time
- Using Dynamic Calculations with Standard Procedures
- Creating Dynamic Calc Members
- Restructuring Databases
- Dynamically Calculating Data in Partitions
-
23
Calculating Time Series Data
- Calculating First, Last, and Average Values
- Calculating Period-to-Date Values Using Dynamic Time Series Members
-
24
Develop Calculation Scripts for Block Storage Cubes
- Calculate a Cube with Calculation Scripts
- Learn Basic Calculation Script Syntax
- Use Calculation Commands
- Formulas in Calculation Scripts
- Substitution Variables in Calculation Scripts
- Runtime Substitution Variables in Calculation Scripts Run in Essbase
- Runtime Substitution Variables in Calculation Scripts Run in Smart View
- Clear and Copy Data
- Calculate a Subset of Data in the Cube
- Enable Calculations on Potential Blocks
- Use Calculation Scripts on Partitions
- Save, Execute, and Copy Calculation Scripts
- Check Calculation Results
-
25
Examples of Calculation Scripts for Block Storage Databases
- About These Calculation Script Examples
- Calculate Variance
- Calculate Database Subsets
- Load New Budget Values
- Calculate Product Share and Market Share Values
- Allocate Costs Across Products
- Allocate Values within a Dimension
- Allocate Values Across Multiple Dimensions
- Goal-Seeking Using the LOOP Command
- Forecast Future Values
-
26
Using Parallel Calculation
- About Parallel Calculation
- Using FIXPARALLEL Parallel Calculation
-
Using CALCPARALLEL Parallel Calculation
- Analysis of Feasibility of CALPARALLEL
- CALCPARALLEL Parallel Calculation Guidelines
- Relationship Between CALCPARALLEL Parallel Calculation and Other Essbase Features
- Checking Current CALCPARALLEL Settings
- Enabling CALCPARALLEL Parallel Calculation
- Identifying Additional Tasks for Parallel Calculation
- Tuning CALCPARALLEL with Log Messages
- Monitoring CALCPARALLEL Parallel Calculation
-
27
Developing Custom-Defined Calculation Functions
- Requirements for Validity of Custom-Defined Functions
- Creating and Compiling a Java Class for Custom Defined Functions
- Installing Java Classes on Essbase Server
- Registering Custom-Defined Functions
- Using Registered Custom-Defined Functions
- Updating Custom-Defined Functions
- Viewing Custom-Defined Functions
- Removing Custom-Defined Functions
- Copying Custom-Defined Functions
- Performance Considerations for Custom-Defined Functions
- 28 Developing Custom-Defined Calculation Macros
-
29
Writing MDX Queries
- Build an MDX Query Template
- MDX Sets and Tuples
- MDX Query Layout with Axes and Cube Specification
- Use MDX Functions to Build Sets
- Referencing Levels and Generations with MDX
- Use a Slicer Axis to Set MDX Query Point-of-View
- Common MDX Relationship Functions
- MDX Functions for Set Operations
- Reusable Sets and Members: MDX WITH Section
- Iterative MDX Functions
- Handling Missing Data with MDX
- Variables in MDX Queries
- Querying for Properties in MDX
- 30 Exporting Data
- 31 Controlling Access to Database Cells Using Security Filters
- 32 Using MaxL Data Definition Language
- 33 Optimizing Database Restructuring
- 34 Optimizing Data Loads
-
35
Block Storage Calculation Optimization
- Design for Calculation Performance
- Monitor and Trace Calculations
- Calculate Selected Tuples
- Simulate Calculations to Estimate Calculation Time
- Estimate Calculation Effects on Cube Size
-
Essbase Formula Optimization
- Essbase Member Consolidation
- Simple Essbase Member Formulas
- Complex Essbase Member Formulas
- Formulas on Sparse Dimensions in Large Outlines
- Constant Values Assigned to Members in a Sparse Dimension
- Nonconstant Values Assigned to Members in a Sparse Dimension
- Cross-Dimensional Operators in Member Formulas
- Managing Formula Execution Levels
- Bottom-Up and Top-Down Calculation
- Hybrid Mode for Fast Analytic Processing
- Essbase Caches and Calc Performance
- Block Locking and Concurrent User Access
- Two-Pass Calculation
- Member Set Functions and Performance
- #MISSING Values
- Identify Additional Calculation Optimization Issues
- 36 Comparison of Aggregate and Block Storage
-
37
Designing Aggregate Storage Applications
- Design Flow for Aggregate Storage Applications
-
Aggregate Storage Applications, Cubes, and Outlines
- Hierarchies in ASO Cubes
- Design Considerations for Aggregate Storage Outlines
- 64-bit Dimension Size Limit for Aggregate Storage Outline
- Compression Dimension for Aggregate Storage Cubes
- Verifying Aggregate Storage Outlines
- Outline Paging in Aggregate Storage Cubes
- Compacting the Aggregate Storage Outline File
- Developing Formulas on Aggregate Storage Outlines
-
38
Load, Calculate, and Retrieve Aggregate Storage Data
- Build Dimensions in Aggregate Storage Cubes
- Exclusive Operations on Aggregate Storage Cubes
-
Load Data into Aggregate Storage Cubes
- Load Data Incrementally through a Data Load Buffer
- Data Load Buffer Resource and Disk Space Usage
- Data Load Buffer Properties
- Multiple Data Loads in Parallel
- List Data Load Buffers for an Aggregate Storage Cube
- Create a Data Slice
- Merge Incremental Data Slices
- Replace Data Using Incremental Data Slice Contents
- View Incremental Data Slices Statistics
- Renegade Members in Aggregate Storage Data Loads
- Source Data Differences for Aggregate Storage Data Loads
- Clear Data from Aggregate Storage Cubes
- Block Storage Calculation Features That Do Not Apply to Aggregate Storage
-
Aggregation of Data in an ASO Cube
- Aggregation-Related Essbase Terms
- Perform ASO Aggregations
- Optimization for Aggregate View Selection
- Generate Aggregate Views Automatically
- Select Views Based on Usage
- View Selection Based on Aggregate Level Usage
- Aggregation Scripts for Essbase ASO Cubes
- Clear Aggregated Data from the Cube
- Replace Aggregated Data in the Cube
- Calculation Order and Solve Order in ASO Cubes
- Time Balance and Flow Metrics in ASO Accounts Dimensions
- Retrieve Aggregate Storage Data
-
39
Custom Calculations and Allocations on Aggregate Storage Cubes
- Custom Calculations on Aggregate Storage Cubes
-
Custom Allocations on Aggregate Storage Cubes
- List of Allocation Criteria
- Regions in ASO Allocations
- Specifying Allocation Criteria
- Setting the POV
- Setting the Range
- Setting the Amount
- Setting the Basis
- Setting the Target
- Setting the Allocation Method
- Setting the Rounding Method
- Setting the Offset
- Balancing Allocations
-
Basis and Target Time Span
- Example 1: Basis and Target Time Span—Empty or Single Member
- Example 2: Basis Time Span—Empty or Single Member; Target Time Span—Multiple Members
- Example 3: Basis Time Span—Multiple Members; Target Time Span—Empty or Single Member
- Example 4: Basis and Target Time Span—Multiple Members; Basis Time Span Option—Split
- Example 5: Basis and Target Time Span—Multiple Members; Basis Time Span Option—Combine
- Examples of Aggregate Storage Allocations
- Sample Use Case for Aggregate Storage Allocations
- Data Consistency and Formulas
- Data Load Buffers for Custom Calculations and Allocations
- Offset Handling for Custom Calculations and Allocations
- Credit and Debit Processing for Custom Calculations and Allocations
- 40 Manage Aggregate Storage Applications and Cubes
- A Limits
-
B
Naming Conventions for Essbase
- Naming Conventions for Applications and Databases
- Naming Conventions for Dimensions, Members, and Aliases
- Naming Conventions for Dynamic Time Series Members
- Naming Conventions for Attribute Calculations Dimension Member Names
- Naming Conventions in Calculation Scripts, Report Scripts, Formulas, Filters, and Substitution and Environment Variable Values
- List of Essbase System-Defined Dimension and Member Names
- MaxL Reserved Words List