Building BI Data Models with DeepSeeKenneth Poindexter, Michael BraamMarch 2011
DeepSee• BI component of Caché and Ensemble   – Embedded Real-Time Business Intelligence• Available since Caché 2009.1   –...
Academy Outline • DeepSee Data Modeling    – Cubes    – Subject Areas    – KPI’s
Accessing DeepSee• Use Firefox as the browser   – DeepSee can be accessed from different     browsers.     • Firefox, Inte...
Demonstration • What a cube can do for you?
Exercises (Shortcuts and Hints) C:Academy FilesDSMODEL Exercises.pdf Contains a pdf copy of the exercise guide. For those ...
CubeA data structure that allows fast analysis of data from different perspectives.
CubeA data structure that allows fast analysis of data from different perspectives.   Normal Two Dimensional View  Region ...
CubeA data structure that allows fast analysis of data from different perspectives.   Normal Two Dimensional View         ...
CubeA data structure that allows fast analysis of data from different perspectives.                                   View...
Cube: Dimensions and Measures A data structure that allows fast analysis of  data from different perspectives.            ...
Exercise 1: Create a New Cube
Exercise 1: Create a New Cube Key Concepts • Every cube requires a unique name • The Source Class is where DeepSee will ge...
DimensionA Dimension can be a value from our Source Class which we add to our cube in order to slice and dice, or view our...
Exercise 2: Dimensions from Properties
Exercise 2: Dimensions from Properties Key Concepts • Dimensions must have unique names within the cube • Dimensions are v...
MeasureA Measure is a numerical value that defines what we are analyzing. Measures can be aggregated in different ways, su...
Exercise 3: Measures from Properties
Exercise 3: Measures from Properties Key Concepts • Measures are numerical values associated with   the records from our s...
Null Values A null is a property within your database that does  not have a value. DeepSee indexes null values.
Null Values A null is a property within the database that does  not contain a value. DeepSee indexes null  values.        ...
Exercise 4: Null Replacement
Exercise 4: Null Replacement Key Concepts • Null values are properties within our source   class that do not have a value....
RangesWhat is a range• A range is a grouping of one or more values into  buckets of lesser number.
RangesWhat is a range• A range is a grouping of one or more values into  buckets of lesser number.                      No...
RangesWhat is a range• A range is a grouping of one or more values into  buckets of lesser number.                     Ped...
Exercise 5: Range Expressions
Exercise 5: Range Expressions Key Concepts • Range Expressions allow us to group values that   would otherwise be difficul...
Dimension Hierarchies and Levels Multiple levels define their members in order of  detail, with each level becoming more d...
Dimension Hierarchies and Levels Multiple levels define their members in order of  detail, with each level becoming more d...
Dimension Hierarchies and Levels                    Hierarchy   Outlet   Region         Country        City        Each di...
Exercise 6: Multiple Levels and Hierarchies
Exercise 6: Multiple Levels and Hierarchies Key Concepts • DeepSee dimensions can contain multiple   hierarchies and multi...
Time Dimensions Time dimensions are dimensions which give us  information from the perspective of time or date.
Exercise 7: Time Dimensions
Exercise 7: Time Dimensions Key Concepts • Time dimensions follow the same rules as other   multi-level dimensions. They m...
Changing our Thought Process… Most of the time when we begin building a data  model, it’s habit to look at our source data...
Changing our Thought Process… I propose a new way of thinking. Instead of   saying, “What do I have to analyze?” Say to   ...
Exercise 8: Measures from Expressions
Exercise 9: Levels from Expressions
Review: Expressions Key Concepts • Change the way we think about the elements   that will go into our data model. • We can...
Level Properties Are values that are associated with the level to  which they belong.             City                    ...
Level Properties Are values that are associated with the level to  which they belong. Within DeepSee, they can be used in ...
Exercise 10: Level Properties
Exercise 10: Level Properties Key Concepts • Level properties are used to provide additional   information about the membe...
Detail List A Detail List allows us to drill to the detail  information about the records which make up a  given aggregate...
Detail List A Detail List allows us to drill to the detail  information about the records which make up a  given aggregate...
Exercise 11: Detail Lists
Exercise 11: Detail Lists Key Concepts • Allows drill-down to the detail records which   make up a given aggregated value ...
Subject Area A subset of a cube. • Filters the records returned by queries without having to   explicitly define the filte...
Subject Area A subset of a cube. • Filters the records returned by queries without having to   explicitly define the filte...
Exercise 12: Subject Areas
Exercise 12: Subject Areas Key Concepts • Provide the ability to filter the records available   to the user • Provider the...
Academy Review• Cubes   – Measures   – Dimensions• Subject Areas• KPIs
Review: More Information • Exploring and Presenting Data with DeepSee    – Tuesday 4:00PM    – Wednesday 9:00AM • Building...
Review: More Information • Developers Room • Cache Documentation    – Defining and Building DeepSee II Models    – Getting...
Building BI Data Models with DeepSeeKenneth Poindexter, Michael BraamMarch 2011
Upcoming SlideShare
Loading in …5
×

Building BI Data Models With Deep See

894 views
727 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
894
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
17
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Building BI Data Models With Deep See

  1. 1. Building BI Data Models with DeepSeeKenneth Poindexter, Michael BraamMarch 2011
  2. 2. DeepSee• BI component of Caché and Ensemble – Embedded Real-Time Business Intelligence• Available since Caché 2009.1 – New release available with Caché 2011.1 – All academies based on the 2011.1 version• Integrated User Interface and API – Light-weight browser-based user interface – Standardized API for BI data access
  3. 3. Academy Outline • DeepSee Data Modeling – Cubes – Subject Areas – KPI’s
  4. 4. Accessing DeepSee• Use Firefox as the browser – DeepSee can be accessed from different browsers. • Firefox, Internet Explorer and Chrome – Within Firefox, click one of the three shortcuts in the browser’s toolbar• From your Desktop – Click on one of the shortcuts provided.
  5. 5. Demonstration • What a cube can do for you?
  6. 6. Exercises (Shortcuts and Hints) C:Academy FilesDSMODEL Exercises.pdf Contains a pdf copy of the exercise guide. For those of us that are visually challenged. C:Academy FilesCode.txt Anyplace in the exercise guide where you find code that you have to type in, you can find that code in this file for easy copying and pasting. C:Academy FilesCompleted Exercises When all else fails…..
  7. 7. CubeA data structure that allows fast analysis of data from different perspectives.
  8. 8. CubeA data structure that allows fast analysis of data from different perspectives. Normal Two Dimensional View Region Product Year Units Europe Candy 2011 12 Europe Candy 2010 6 Europe Candy 2009 2
  9. 9. CubeA data structure that allows fast analysis of data from different perspectives. Normal Two Dimensional View View using a Cube Region Product Year Units Europe Candy 2011 12 Fruit Europe Candy 2010 6 Candy 12 6 2 Europe Candy 2009 2 Asia N America Chips Europe 2011 2010 2009
  10. 10. CubeA data structure that allows fast analysis of data from different perspectives. View using a Cube Fruit Candy 12 6 2 Asia N America Chips Europe 2011 2010 2009
  11. 11. Cube: Dimensions and Measures A data structure that allows fast analysis of data from different perspectives. View using a Cube Dimensions Measures Defines the Defines what we perspective Fruit are analyzing Product Candy 12 6 2 Asia Units Sold Year Sold N America Sale Amount Chips Europe Location Average 2011 2010 2009 Discount
  12. 12. Exercise 1: Create a New Cube
  13. 13. Exercise 1: Create a New Cube Key Concepts • Every cube requires a unique name • The Source Class is where DeepSee will get data for your cube. A cube is based on a single source class or its related data • DeepSee cubes are stored in Cache classes.
  14. 14. DimensionA Dimension can be a value from our Source Class which we add to our cube in order to slice and dice, or view our data in different ways or from different perspectives. Dimensions Defines the Fruit perspective Candy 12 6 2 Asia Product N America Chips Europe Year Sold 2011 2010 2009 Location
  15. 15. Exercise 2: Dimensions from Properties
  16. 16. Exercise 2: Dimensions from Properties Key Concepts • Dimensions must have unique names within the cube • Dimensions are values used to analyze our data from different perspectives • A dimension can be based upon a source property • Any change made to a dimension requires you to compile and rebuild your cube.
  17. 17. MeasureA Measure is a numerical value that defines what we are analyzing. Measures can be aggregated in different ways, such as Sum, Average, Minimum and Maximum Measures Defines what we Fruit are analyzing Candy 12 6 2 Asia Units Sold N America Chips Europe Sale Amount 2011 2010 2009 Average Discount
  18. 18. Exercise 3: Measures from Properties
  19. 19. Exercise 3: Measures from Properties Key Concepts • Measures are numerical values associated with the records from our source class that we want to analyze • It is perfectly normal to use a source property as both a measure and a dimension • Measures can be aggregated in different ways, such as Sum, Min, Max and Avg.
  20. 20. Null Values A null is a property within your database that does not have a value. DeepSee indexes null values.
  21. 21. Null Values A null is a property within the database that does not contain a value. DeepSee indexes null values. <null> Meaning
  22. 22. Exercise 4: Null Replacement
  23. 23. Exercise 4: Null Replacement Key Concepts • Null values are properties within our source class that do not have a value. • By default, DeepSee displays null values as <null> • Null Value does not necessarily = no meaning • A default null replacement string can be set at the cube level • Null replacement strings on levels override the null replacement string from the cube.
  24. 24. RangesWhat is a range• A range is a grouping of one or more values into buckets of lesser number.
  25. 25. RangesWhat is a range• A range is a grouping of one or more values into buckets of lesser number. No Discount 1-19% 20-49% 50%+ • 0% • 5% • 21.5% • 51.2% Discounts • 6.5% • 22% • 68% • 8% • 25% • 72.1% • 10% • 31% • 80% Grouped Into • 14.5% • 36.5% • 81% • 15% • 40% • 82% • 18% • 42% • 91% Meaningful • 18.5% • 45.2% • 92.5% Ranges • 49%
  26. 26. RangesWhat is a range• A range is a grouping of one or more values into buckets of lesser number. Pediatric • 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17 Age 18-30 • 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30 Grouped Into 31-50 • 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50 Age Groups 51+ • 51, 52, 53, 54. 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70…
  27. 27. Exercise 5: Range Expressions
  28. 28. Exercise 5: Range Expressions Key Concepts • Range Expressions allow us to group values that would otherwise be difficult to manage into smaller more manageable range sets • Each Range has a From value, a To value and a Replacement Value • The From and To values can be exclusive or inclusive.
  29. 29. Dimension Hierarchies and Levels Multiple levels define their members in order of detail, with each level becoming more detail than the level before.
  30. 30. Dimension Hierarchies and Levels Multiple levels define their members in order of detail, with each level becoming more detail than the level before.
  31. 31. Dimension Hierarchies and Levels Hierarchy Outlet Region Country City Each dimension level contains Members that are tree-like organized. Asia China Beijing Shanghai India Bangalore Mumbai Japan Osaka Tokyo Europe Belgium Antwerp Brussels England Mancheste London France Nice r Paris Germany Berlin Frankfurt Netherland Amsterda Munich Spain s Barcelona m Madrid N. America Canada Montreal Toronto USA Vancouver Atlanta Boston Chicago Los Houston New York Angelesde Seattle S. America Brazil Rio Brasilia Chile Santiago Janeiro Sao Paolo
  32. 32. Exercise 6: Multiple Levels and Hierarchies
  33. 33. Exercise 6: Multiple Levels and Hierarchies Key Concepts • DeepSee dimensions can contain multiple hierarchies and multiple levels within each hierarchy • Levels must be organized into a tree structure where each level contains all of the members of the next lower level.
  34. 34. Time Dimensions Time dimensions are dimensions which give us information from the perspective of time or date.
  35. 35. Exercise 7: Time Dimensions
  36. 36. Exercise 7: Time Dimensions Key Concepts • Time dimensions follow the same rules as other multi-level dimensions. They must be organized in a way that presents a parent-child relationship. • DeepSee provides Functions which allow us to extract specific portions of date and time fields. • Time isn’t always on our side.
  37. 37. Changing our Thought Process… Most of the time when we begin building a data model, it’s habit to look at our source data and say, “What data do I have available to analyze.” • Unit Sold • Amount of Sale Measures • • Avg Sales Amount Min Sales Amount • Max Sales Amount • Date of Sale • Channel Dimensions • • Outlet Product • Category • name
  38. 38. Changing our Thought Process… I propose a new way of thinking. Instead of saying, “What do I have to analyze?” Say to yourself, “How do I want to analyze?” And then say, “How can I get it?” • Unit Sold • Amount of Sale • Avg Sales Amount Measures • Min Sales Amount • Max Sales Amount • Avg Unit Amount • Max Unit Amount • Min Unit Amount • Cases sold • Date of Sale • Channel • Outlet • Product Dimensions • Category • Name • Comment • Type • Comment • SKU Category • Sales Person’s Age
  39. 39. Exercise 8: Measures from Expressions
  40. 40. Exercise 9: Levels from Expressions
  41. 41. Review: Expressions Key Concepts • Change the way we think about the elements that will go into our data model. • We can use source expressions to create new measures and dimensions that are not contained directly in the properties of our source class. • We can use any Cache ObjectScript expression, which includes basic expressions as well as calls to external class methods which extend our possibilities endlessly.
  42. 42. Level Properties Are values that are associated with the level to which they belong. City Possible Properties Population Mayor Registered Dogs Or any other value that might be associated with a particular city
  43. 43. Level Properties Are values that are associated with the level to which they belong. Within DeepSee, they can be used in different ways: • As the name of the members of the level they belong • To sort the members of the level they belong. • Much like a measure in the Columns box within Analyzer
  44. 44. Exercise 10: Level Properties
  45. 45. Exercise 10: Level Properties Key Concepts • Level properties are used to provide additional information about the member of a level to which it belongs. • They can be used to sort the members, or as the name of the members of the level to which it belongs. • Level properties can be both source property and source expression based.
  46. 46. Detail List A Detail List allows us to drill to the detail information about the records which make up a given aggregated value.
  47. 47. Detail List A Detail List allows us to drill to the detail information about the records which make up a given aggregated value.
  48. 48. Exercise 11: Detail Lists
  49. 49. Exercise 11: Detail Lists Key Concepts • Allows drill-down to the detail records which make up a given aggregated value or set of values • Is based on a SQL statement, executed at run- time
  50. 50. Subject Area A subset of a cube. • Filters the records returned by queries without having to explicitly define the filter within the query • Filters the cube elements available to the end user • Allows cube elements to be modified and renamed. Fruit Candy 12 6 2 Asia N America Chips Europe 2011 2010 2009
  51. 51. Subject Area A subset of a cube. • Filters the records returned by queries without having to explicitly define the filter within the query • Allows cube elements to be hidden from the end user • Allows you change the display name. Candy 6 2 Orlando Chips Los Angeles 2010 2009
  52. 52. Exercise 12: Subject Areas
  53. 53. Exercise 12: Subject Areas Key Concepts • Provide the ability to filter the records available to the user • Provider the ability to limit access to measures, dimensions and listings as well as modify their display names. • Enables us to secure our data by requiring a specific resource to access the subject area.
  54. 54. Academy Review• Cubes – Measures – Dimensions• Subject Areas• KPIs
  55. 55. Review: More Information • Exploring and Presenting Data with DeepSee – Tuesday 4:00PM – Wednesday 9:00AM • Building BI Data Models with DeepSee – Monday 2:00PM – Tuesday 1:30PM • Using MDX in DeepSee – Tuesday 10:00AM – Wednesday 11:15AM
  56. 56. Review: More Information • Developers Room • Cache Documentation – Defining and Building DeepSee II Models – Getting Started with DeepSee Introduction – DeepSee II Implementation Guide Implementation – Developer Tutorial Step-by-Step
  57. 57. Building BI Data Models with DeepSeeKenneth Poindexter, Michael BraamMarch 2011

×