SlideShare une entreprise Scribd logo
1  sur  55
Télécharger pour lire hors ligne
When Facts and Dimensions
Alone Aren't the Answer:
Logically Reversing the Star Schema
Kathryn Watson
Solution Architect at Perficient
Economist & Financial Analyst by education,
BI Professional by passion
Email: kathryn.watson@perficient.com
LinkedIn: www.linkedin.com/pub/kathryn-watson/a/431/354/
Kathryn Watson
 What is a Reverse Star Schema?
 Why and when would I use a Reverse Star Schema?
 How would I implement a Reverse Star Schema?
 What about data integrity?
While addressing these questions, we’ll walk through a
real life implementation within the healthcare industry.
The Questions We’ll Answer Today:
The Star Schema has long been the foundation of
effective BI applications
● Optimized for the speedy return of business facts and their
corresponding descriptors
● Supports the manner in which businesses ask typical business
questions
Let’s Start With the Basics
Show me A, filtered by B and aggregated by C & D
Let’s Start With the Basics (cntd.)
A
B C
D
Show me Z, filtered and aggregated by W, X & Y
Let’s Start With the Basics (cntd.)
Z
W X
Y
 Data warehouses commonly include multiple facts
 These multiple facts often share dimensions, called
conformed dimensions
Let’s Start With the Basics (cntd.)
 Conformed dimensions facilitate answering multi-
faceted business questions.
 Show me A & Z, aggregated and/or filtered by N
Let’s Start With the Basics (cntd.)
A
B C
D
Z
W X
Y
N
 As BI implementations mature, the questions your
users are asking often do as well.
 Show me Z, filtered by B & C and aggregated by Y
And Continue Along the BI Maturity Model
A
B C
D
Z
W X
Y
N
In this scenario:
● B and C are not dimensions of Z
● B and C are not subsets of Y
● B and C are not directly related to the Fact (Z) they are required to
affect
And Continue Along the BI Maturity Model (cntd.)
A
B C
D
Z
W X
Y
N
We’ve now encountered a very practical use case for
the Reverse Star Schema.
And Continue Along the BI Maturity Model (cntd.)
A typical Reverse Star Schema flips the concept of
what information is being returned to the user. Rather
than factual information being the star of the show, the
dimensional information is the main event.
In all Reverse Star Schemas, the relationships between
facts and dimensions are flipped; rather than a one-to-
many dimension to fact relationship, the Reverse Star
Schema introduces a one-to-many or many-to-many
fact to dimension relationship.
So, What is a Reverse Star Schema?
 Sometimes, the return of the intersection of
dimensional data is truly all the user needs
 More often, the Reverse Star Schema is the avenue
to establish cause-and-effect relationships amongst
indirectly related data concepts
When and Why Would I Use This?
Let’s return to the scenario we showcased previously:
show me Z, filtered by B & C and aggregated by Y
When and Why Would I Use This? (cntd.)
A
B C
D
Z
W X
Y
N
B & C’s relationship to Z is established through fact A
and conformed dimension N
When and Why Would I Use This? (cntd.)
A
B C
D
Z
W X
Y
N
 The values of A & N aren’t of interest to the user
 A & N are simply avenues through which the needed
attributes are accessed
When and Why Would I Use This? (cntd.)
A
B C
D
Z
W X
Y
N
Let’s apply this concept to the real world:
When and Why Would I Use This? (cntd.)
One of the nation’s top cancer care centers was seeking an on-
demand means to identify patient cohorts.
Physicians should be able to refine cohorts by basic tumor
information and various disconnected factors of cancer care:
Tumors – initial presentation date and type
Histologies – cancer type and structure over time
Stagings – cancer severity
Statuses – active, in remission, etc.
Treatments – chemotherapy, radiation, other
A filter applied to any of these concepts should affect the results
of all concepts, even though the concepts are independent of
each other.
Let’s apply this concept to the real world (cntd.):
During the analysis phase, it was confirmed that everything was
directly related to the patient’s instance of cancer (Tumor).
All other concepts, though factual concepts in their own right, for
this purpose were informational.
It’s all about the Tumor. Everything else is informational.
When and Why Would I Use This? (cntd.)
Much like our use case scenario, a multi-fact Star Schema
emerged.
● 5 Facts with Independent Dimensions
● Tumors/Documents (F_CLNCL_DOC)
● Histologies (F_TMR_HISTOL)
● Stagings (F_TMR_STG)
● Statuses (F_TMR_STAT)
● Treatments (F_TMR_TRTMT)
● 1 Conformed Dimension shared by all facts
● Tumors (D_PT_TMR)
Let’s apply this concept to the real world (cntd.):
When and Why Would I Use This? (cntd.)
Let’s apply this concept to the real world (cntd.):
When and Why Would I Use This? (cntd.)
Implemented in OBIEE, the Dimensional Model = OBIEE Physical
Layer, except for:
● EIW Dimensions
● Date dimension aliased for each of its purposes (17 aliases)
● Provider dimension aliased for each of its purposes (3 aliases)
● 4 Additional Facts
● Users stated the requirement to analyze treatments as separate entities for some use-
cases, and as consolidated activities in other use-cases
● This is achieved by placing database views on top of F_TMR_TRTMT, with one view
for each treatment type
Let’s apply this concept to the real world (cntd.):
When and Why Would I Use This? (cntd.)
Let’s apply this concept to the real world (cntd.):
When and Why Would I Use This? (cntd.)
Let’s apply this concept to the real world (cntd.):
When and Why Would I Use This? (cntd.)
But the classic Star Schema did not support our main
requirement:
A filter applied to any of these concepts should affect the results of all
concepts, even though the concepts are independent of each other.
It’s all about the Tumor. Everything else is informational.
In the classic Star Schema design, each fact and its dimensions
are independent of the other facts.
Filters applied to the dimensions of one fact do not affect the
results returned in another fact.
Ok, How Would I implement This?
To fill our requirement that filters applied to the dimension of one
fact should affect the results returned in another fact:
● “Sub-Facts” (Statuses, Stagings, Histologies, Treatments) should be
treated as dimensions of the central fact (Tumors/Documents) through
the conformed dimension (Tumors).
● This would create a reverse snowflake schema
● One fact: F_CLNCL_DOC (Tumors/Documents)
● Central Dimension: D_PT_TMR (Tumors)
● All other tables are dimensions that flake off of D_PT_TMR and their “Sub-Facts”.
(One to many join between D_PT_TMR and other facts reversed, becoming many to
one)
Continuing with our real world example:
Ok, How Would I implement This? (cntd.)
So, should our Dimensional Model/RPD Physical Layer be re-
designed to support this?
No.
Continuing with our real world example:
Ok, How Would I implement This? (cntd.)
The Dimensional Model/RPD Physical Layer should remain As Is
(a classic Star Schema)
● The “Sub-Facts” truly are facts/transactions. They can be analyzed
independently
● Current requirements dictate that the “Sub-Facts” are simply avenues
to descriptive attributes
● However, future requirements may dictate the need to analyze these
“Sub-Facts” individually; we don’t want to lose this capability through a
redesign
Continuing with our real world example:
Ok, How Would I implement This? (cntd.)
The Reverse Star Schema is built logically in the RPD BMM layer:
● Individual Dimension Tables are brought over from the Physical Layer
● The Logical Table Source (LTS) for each Dimension Table is edited to
include its “Sub-Fact” table as well as D_PT_TMR
Continuing with our real world example:
Ok, How Would I implement This? (cntd.)
The Reverse Star Schema is built logically in the RPD BMM layer
(cntd.):
● The dimension table is then logically joined directly to the central fact
(FACT_ALS_F_CLNCL_DOC)
Continuing with our real world example:
Ok, How Would I implement This? (cntd.)
The Reverse Star Schema is built logically in the RPD BMM layer
(cntd.):
● The joins in the Physical Layer remain the same.
Continuing with our real world example:
Dimension DimensionFact Fact
Ok, How Would I implement This? (cntd.)
This process is completed until all dimension tables join directly
to the central fact (FACT_ALS_F_CLNCL_DOC) in the BMM
“Sub-Facts” were not brought in as logical tables in the BMM for
this implementation, as there were no requirements for them.
● These “Sub-Facts” can be brought in as independent facts later if
needed, creating a multi-facted Star Schema
● If a “Sub-Fact” is brought in at a later time, it need simply be joined to
its relevant Dimensions; OBIEE will recognize that only one table in the
LTS need be used for the Join
Continuing with our real world example:
Ok, How Would I implement This? (cntd.)
Continuing with our real world example:
What about data integrity?
Continuing with our real world example:
Aggregation is fine so long as your aggregations are all count
distinct.
But what about when your aggregation is something other than a
count distinct?
Ay, there’s the rub! Luckily, OBIEE has a quick and easy
solution: level based measures and/or measures based upon
dimensions
What about data integrity?
Continuing with our real world example:
We had to set our non-count distinct aggregations to be Based on
Dimensions in order to achieve correct aggregation of our
measures
● For the conformed dimension (DIM_ALS_D_PT_TMR or Tumors), take
the Distinct Average of the measure
● For all Other Dimensions, simply Average the Measure
What about data integrity?
Continuing with our real world example:
Why does this work?
● OBIEE will first average distinct the measure at the Tumor level.
Since the Tumor level is the lowest granularity, this will equate to the
original measure
● OBIEE will then average the population of these distinct averages by
whatever other dimensions are brought into the request
What about data integrity?
Continuing with our real world example:
Why is this necessary?
● In our data set, our “Sub-Facts” can have multiple instances per tumor.
● We have transitioned our “Sub-Facts” to act as avenues between their
own dimensions and the central fact (FACT_F_CLNCL_DOC) for the
formation of the Star Schema in the BMM
● As a result, we can (and do) experience “ballooning”
What about data integrity?
Continuing with our real world example:
Why is this necessary (cntd.)?
Two Tumors, each with one row of data:
vs.
Same two Tumors, with Staging Date added to the query. The 1st Tumor now has two rows
of data, one for each of its Staging Dates. The 2nd Tumor still has only one row of data, as it
has only one Staging Date.
What about data integrity?
Continuing with our real world example:
Why is this necessary? (cntd.)
● With the inflated data, we can’t simply average: tumors that have
ballooned out would be weighted more heavily in our average
calculation than those that have not
349.67
If the Aggregation Rule in our RPD was simply set to “Average,”
OBIEE would calculate the average of the above as 349.67
[ (493 + 493 + 63) / 3 ]
What about data integrity?
Continuing with our real world example:
Why is this necessary? (cntd.)
● To remove the “weight” given to a measure when its tumor appears in
the results more than once, we have to tell OBIEE to base the
aggregation on Dimensions
What about data integrity?
Continuing with our real world example:
Why is this necessary? (cntd.)
● OBIEE would first calculate the Average at the Tumor Level
AVG(DISTINCT "SCD-Tumor Management"."FACT_ALS_F_CLNCL_DOC"."Follow Up Time")
What about data integrity?
Continuing with our real world example:
Why is this necessary? (cntd.)
● OBIEE would then average this average
AVG("SCD-Tumor Management"."FACT_ALS_F_CLNCL_DOC"."Follow Up Time")
● Our average calculates correctly, at 278
[ (493 + 63) / 2 ]
Questions?
Additional Implementation Notes
Non Star Schema Structures:
● Non-Star Schema structures can work and do not necessarily
cause incorrect results
● However, they are not ideal and can greatly complicate
implementation, expansion, and maintenance
Additional Implementation Notes (cntd.)
Non Star Schema Structures (cntd.):
● To demonstrate, let’s start with a simple snowflake structure
Additional Implementation Notes (cntd.)
Non Star Schema Structures (cntd.):
● And then create a Dimensional Hierarchy on
DIM_PROVIDERS
Additional Implementation Notes (cntd.)
Non Star Schema Structures (cntd.):
● OBIEE names your hierarchy DIM_PATIENTSDim, but you
created it on DIM_PROVIDERS. Why?
● OBIEE considers the dimension that is joined directly to the fact to be
the “true”, as it’s the lowest level dimension
● DIM_PROVIDERS is connected to DIM_PATIENTS at a higher level,
and OBIEE has consolidating both tables into one dimensional
hierarchy, with DIM_PROVIDERS the parent level of DIM_PATIENTS
Additional Implementation Notes (cntd.)
Non Star Schema Structures (cntd.):
● What would have happened if DIM_PATIENTS had 2 flakes?
Dimension
Dimension Dimension
Dimension
Fact
Additional Implementation Notes (cntd.)
Non Star Schema Structures (cntd.):
● You’d end up with 1 dimensional hierarchy with 2 separate
trees
Additional Implementation Notes (cntd.)
Non Star Schema Structures (cntd.):
● So why does this complicate things?
● Level-based measures are based upon Dimensional Hierarchies
● In a Snowflake Schema, constructing many types of level-based
measures becomes impossible, or at the least very complex.
Additional Implementation Notes (cntd.)
Non Star Schema Structures (cntd.):
● Let’s calculate the average Follow-Up Days for a Provider by
Age Bucket
● Because Providers and Age Buckets are in the same
Dimensional Hierarchy, we can’t do this calculation.
● OBIEE limits you to only one level per Dimensional Hierarchy
Additional Implementation Notes (cntd.)
RPD Consistency Check Warnings:
● Because you have mapped multiple tables in the LTS’s of
your Dimensions, OBIEE expects you to use those tables in
the Column Mappings
● If you do not make use of a mapped table, the Consistency
Checker will give you a warning:
Additional Implementation Notes (cntd.)
RPD Consistency Check Warnings (cntd.):
● To resolve this warning, create a new Logical Column in your
table and map it to a column in the unused table
Additional Implementation Notes (cntd.)
Fabricated Data: Missing Data
● In our data set we were faced with the fact that a Tumor may not
be present in all of the major subject areas (Statuses, Stagings,
Histologies, Treatments)
● In the instances where a Tumor was not present in a subject
area, that Tumor would fall out of the data population if a
dimension from that subject area was brought in
Users did not want this fallout to occur and they emphasized
that it was just as important to see where a Tumor did not
have information in a given subject area as it was to see what
information a tumor did have in a given subject area
Additional Implementation Notes (cntd.)
Fabricated Data: Missing Data (cntd.)
● RPD Resolution Possibility
● This fallout could have been prevented through Outer Joins in the OBIEE
RPD
● The Logical Mappings of all dimension attributes could be changed to
include an IFNULL clause [It was required that a NULL/missing object state
its status (Missing)]
● With hundreds of attributes this is neither sustainable nor realistic
Additional Implementation Notes (cntd.)
Fabricated Data: Missing Data (cntd.)
● Data Creation in Database Tables Resolution Possibility
● Each and every Dimension Table in our Dimensional Model has an entry for
a key of -2 and attribute codes, names, descriptions, etc. of ‘!Record Does
Not Exist in Source’
● At the end of the ETL process, the central conformed dimension
(D_PT_TMR) was LEFT OUTER JOINed to each of the dimensional
database “Sub-Facts”
● F_TMR_STAT
● F_TMR_STG
● F_TMR_HISTOL
● F_TMR_TRTMT
Additional Implementation Notes (cntd.)
Fabricated Data: Missing Data (cntd.)
● Data Creation in Database Tables Resolution Possibility (cntd.)
● Where a match was not found in a Fact table, a row was inserted in that
Fact table for the missing Tumor ID. All Dimensional Keys were set to -2,
!Record Does Not Exist in Source
● Users then gained the ability to pull tumors with missing information.

Contenu connexe

En vedette

Fact table design for data ware house
Fact table design for data ware houseFact table design for data ware house
Fact table design for data ware houseSayed Ahmed
 
Best Practices for Building a Warehouse Quickly
Best Practices for Building a Warehouse QuicklyBest Practices for Building a Warehouse Quickly
Best Practices for Building a Warehouse QuicklyWhereScape
 
Difference between star schema and snowflake schema
Difference between star schema and snowflake schemaDifference between star schema and snowflake schema
Difference between star schema and snowflake schemaUmar Ali
 
What Comes After The Star Schema? Dimensional Modeling For Enterprise Data Hubs
What Comes After The Star Schema? Dimensional Modeling For Enterprise Data HubsWhat Comes After The Star Schema? Dimensional Modeling For Enterprise Data Hubs
What Comes After The Star Schema? Dimensional Modeling For Enterprise Data HubsCloudera, Inc.
 
Multidimensional data models
Multidimensional data  modelsMultidimensional data  models
Multidimensional data models774474
 
Docker from A to Z, including Swarm and OCCS
Docker from A to Z, including Swarm and OCCSDocker from A to Z, including Swarm and OCCS
Docker from A to Z, including Swarm and OCCSFrank Munz
 

En vedette (7)

Fact table design for data ware house
Fact table design for data ware houseFact table design for data ware house
Fact table design for data ware house
 
Best Practices for Building a Warehouse Quickly
Best Practices for Building a Warehouse QuicklyBest Practices for Building a Warehouse Quickly
Best Practices for Building a Warehouse Quickly
 
Difference between star schema and snowflake schema
Difference between star schema and snowflake schemaDifference between star schema and snowflake schema
Difference between star schema and snowflake schema
 
Star schema
Star schemaStar schema
Star schema
 
What Comes After The Star Schema? Dimensional Modeling For Enterprise Data Hubs
What Comes After The Star Schema? Dimensional Modeling For Enterprise Data HubsWhat Comes After The Star Schema? Dimensional Modeling For Enterprise Data Hubs
What Comes After The Star Schema? Dimensional Modeling For Enterprise Data Hubs
 
Multidimensional data models
Multidimensional data  modelsMultidimensional data  models
Multidimensional data models
 
Docker from A to Z, including Swarm and OCCS
Docker from A to Z, including Swarm and OCCSDocker from A to Z, including Swarm and OCCS
Docker from A to Z, including Swarm and OCCS
 

Similaire à Reverse Star Schema Overcomes Healthcare Cohort Filtering Challenges

[CIKM 2014] Deviation-Based Contextual SLIM Recommenders
[CIKM 2014] Deviation-Based Contextual SLIM Recommenders[CIKM 2014] Deviation-Based Contextual SLIM Recommenders
[CIKM 2014] Deviation-Based Contextual SLIM RecommendersYONG ZHENG
 
Requirements analysis 2011
Requirements analysis 2011Requirements analysis 2011
Requirements analysis 2011bernddu
 
Data Analytics Using R - Report
Data Analytics Using R - ReportData Analytics Using R - Report
Data Analytics Using R - ReportAkanksha Gohil
 
Why start using uplift models for more efficient marketing campaigns
Why start using uplift models for more efficient marketing campaignsWhy start using uplift models for more efficient marketing campaigns
Why start using uplift models for more efficient marketing campaignsData Con LA
 
The system, the goal, the goal tree and validating the measuring system in th...
The system, the goal, the goal tree and validating the measuring system in th...The system, the goal, the goal tree and validating the measuring system in th...
The system, the goal, the goal tree and validating the measuring system in th...Ricardo Anselmo de Castro
 
Supervised learning
Supervised learningSupervised learning
Supervised learningJohnson Ubah
 
Neural Network Model
Neural Network ModelNeural Network Model
Neural Network ModelEric Esajian
 
Model Risk Management - Some thoughts on DNN
Model Risk Management - Some thoughts on DNNModel Risk Management - Some thoughts on DNN
Model Risk Management - Some thoughts on DNNQuantUniversity
 
A high level overview of all that is Analytics
A high level overview of all that is AnalyticsA high level overview of all that is Analytics
A high level overview of all that is AnalyticsRamkumar Ravichandran
 
Pentaho Meeting 2008 - Statistics & BI
Pentaho Meeting 2008 - Statistics & BIPentaho Meeting 2008 - Statistics & BI
Pentaho Meeting 2008 - Statistics & BIStudio Synthesis
 
End-to-End Machine Learning Project
End-to-End Machine Learning ProjectEnd-to-End Machine Learning Project
End-to-End Machine Learning ProjectEng Teong Cheah
 
Data Science for Business Managers - An intro to ROI for predictive analytics
Data Science for Business Managers - An intro to ROI for predictive analyticsData Science for Business Managers - An intro to ROI for predictive analytics
Data Science for Business Managers - An intro to ROI for predictive analyticsAkin Osman Kazakci
 
Descriptive And Narrative Essay.pdf
Descriptive And Narrative Essay.pdfDescriptive And Narrative Essay.pdf
Descriptive And Narrative Essay.pdfPamela Brown
 
Descriptive And Narrative Essay. Example Of Narrative Essay About Experience ...
Descriptive And Narrative Essay. Example Of Narrative Essay About Experience ...Descriptive And Narrative Essay. Example Of Narrative Essay About Experience ...
Descriptive And Narrative Essay. Example Of Narrative Essay About Experience ...Keisha Paulino
 
Dynamic Context Adaptation for Diagnosing the Heart Disease in Healthcare Env...
Dynamic Context Adaptation for Diagnosing the Heart Disease in Healthcare Env...Dynamic Context Adaptation for Diagnosing the Heart Disease in Healthcare Env...
Dynamic Context Adaptation for Diagnosing the Heart Disease in Healthcare Env...ijsc
 
DYNAMIC CONTEXT ADAPTATION FOR DIAGNOSING THE HEART DISEASE IN HEALTHCARE ENV...
DYNAMIC CONTEXT ADAPTATION FOR DIAGNOSING THE HEART DISEASE IN HEALTHCARE ENV...DYNAMIC CONTEXT ADAPTATION FOR DIAGNOSING THE HEART DISEASE IN HEALTHCARE ENV...
DYNAMIC CONTEXT ADAPTATION FOR DIAGNOSING THE HEART DISEASE IN HEALTHCARE ENV...ijsc
 
Milestone 2 Guidance For your final project… Most importa.docx
Milestone 2 Guidance  For your final project… Most importa.docxMilestone 2 Guidance  For your final project… Most importa.docx
Milestone 2 Guidance For your final project… Most importa.docxaltheaboyer
 
Humanmetrics Jung Typology Test™You haven’t answered 1 que
Humanmetrics Jung Typology Test™You haven’t answered 1 queHumanmetrics Jung Typology Test™You haven’t answered 1 que
Humanmetrics Jung Typology Test™You haven’t answered 1 queNarcisaBrandenburg70
 

Similaire à Reverse Star Schema Overcomes Healthcare Cohort Filtering Challenges (20)

[CIKM 2014] Deviation-Based Contextual SLIM Recommenders
[CIKM 2014] Deviation-Based Contextual SLIM Recommenders[CIKM 2014] Deviation-Based Contextual SLIM Recommenders
[CIKM 2014] Deviation-Based Contextual SLIM Recommenders
 
Requirements analysis 2011
Requirements analysis 2011Requirements analysis 2011
Requirements analysis 2011
 
Data Analytics Using R - Report
Data Analytics Using R - ReportData Analytics Using R - Report
Data Analytics Using R - Report
 
Digital twin
Digital twinDigital twin
Digital twin
 
Why start using uplift models for more efficient marketing campaigns
Why start using uplift models for more efficient marketing campaignsWhy start using uplift models for more efficient marketing campaigns
Why start using uplift models for more efficient marketing campaigns
 
The system, the goal, the goal tree and validating the measuring system in th...
The system, the goal, the goal tree and validating the measuring system in th...The system, the goal, the goal tree and validating the measuring system in th...
The system, the goal, the goal tree and validating the measuring system in th...
 
QQ Plot.pptx
QQ Plot.pptxQQ Plot.pptx
QQ Plot.pptx
 
Supervised learning
Supervised learningSupervised learning
Supervised learning
 
Neural Network Model
Neural Network ModelNeural Network Model
Neural Network Model
 
Model Risk Management - Some thoughts on DNN
Model Risk Management - Some thoughts on DNNModel Risk Management - Some thoughts on DNN
Model Risk Management - Some thoughts on DNN
 
A high level overview of all that is Analytics
A high level overview of all that is AnalyticsA high level overview of all that is Analytics
A high level overview of all that is Analytics
 
Pentaho Meeting 2008 - Statistics & BI
Pentaho Meeting 2008 - Statistics & BIPentaho Meeting 2008 - Statistics & BI
Pentaho Meeting 2008 - Statistics & BI
 
End-to-End Machine Learning Project
End-to-End Machine Learning ProjectEnd-to-End Machine Learning Project
End-to-End Machine Learning Project
 
Data Science for Business Managers - An intro to ROI for predictive analytics
Data Science for Business Managers - An intro to ROI for predictive analyticsData Science for Business Managers - An intro to ROI for predictive analytics
Data Science for Business Managers - An intro to ROI for predictive analytics
 
Descriptive And Narrative Essay.pdf
Descriptive And Narrative Essay.pdfDescriptive And Narrative Essay.pdf
Descriptive And Narrative Essay.pdf
 
Descriptive And Narrative Essay. Example Of Narrative Essay About Experience ...
Descriptive And Narrative Essay. Example Of Narrative Essay About Experience ...Descriptive And Narrative Essay. Example Of Narrative Essay About Experience ...
Descriptive And Narrative Essay. Example Of Narrative Essay About Experience ...
 
Dynamic Context Adaptation for Diagnosing the Heart Disease in Healthcare Env...
Dynamic Context Adaptation for Diagnosing the Heart Disease in Healthcare Env...Dynamic Context Adaptation for Diagnosing the Heart Disease in Healthcare Env...
Dynamic Context Adaptation for Diagnosing the Heart Disease in Healthcare Env...
 
DYNAMIC CONTEXT ADAPTATION FOR DIAGNOSING THE HEART DISEASE IN HEALTHCARE ENV...
DYNAMIC CONTEXT ADAPTATION FOR DIAGNOSING THE HEART DISEASE IN HEALTHCARE ENV...DYNAMIC CONTEXT ADAPTATION FOR DIAGNOSING THE HEART DISEASE IN HEALTHCARE ENV...
DYNAMIC CONTEXT ADAPTATION FOR DIAGNOSING THE HEART DISEASE IN HEALTHCARE ENV...
 
Milestone 2 Guidance For your final project… Most importa.docx
Milestone 2 Guidance  For your final project… Most importa.docxMilestone 2 Guidance  For your final project… Most importa.docx
Milestone 2 Guidance For your final project… Most importa.docx
 
Humanmetrics Jung Typology Test™You haven’t answered 1 que
Humanmetrics Jung Typology Test™You haven’t answered 1 queHumanmetrics Jung Typology Test™You haven’t answered 1 que
Humanmetrics Jung Typology Test™You haven’t answered 1 que
 

Plus de Perficient, Inc.

Driving Strong 2020 Holiday Season Results
Driving Strong 2020 Holiday Season ResultsDriving Strong 2020 Holiday Season Results
Driving Strong 2020 Holiday Season ResultsPerficient, Inc.
 
Transforming Pharmacovigilance Workflows with AI & Automation
Transforming Pharmacovigilance Workflows with AI & Automation Transforming Pharmacovigilance Workflows with AI & Automation
Transforming Pharmacovigilance Workflows with AI & Automation Perficient, Inc.
 
The Secret to Acquiring and Retaining Customers in Financial Services
The Secret to Acquiring and Retaining Customers in Financial ServicesThe Secret to Acquiring and Retaining Customers in Financial Services
The Secret to Acquiring and Retaining Customers in Financial ServicesPerficient, Inc.
 
Oracle Strategic Modeling Live: Defined. Discussed. Demonstrated.
Oracle Strategic Modeling Live: Defined. Discussed. Demonstrated.Oracle Strategic Modeling Live: Defined. Discussed. Demonstrated.
Oracle Strategic Modeling Live: Defined. Discussed. Demonstrated.Perficient, Inc.
 
Content, Commerce, and... COVID
Content, Commerce, and... COVIDContent, Commerce, and... COVID
Content, Commerce, and... COVIDPerficient, Inc.
 
Centene's Financial Transformation Journey: A OneStream Success Story
Centene's Financial Transformation Journey: A OneStream Success StoryCentene's Financial Transformation Journey: A OneStream Success Story
Centene's Financial Transformation Journey: A OneStream Success StoryPerficient, Inc.
 
Automate Medical Coding With WHODrug Koda
Automate Medical Coding With WHODrug KodaAutomate Medical Coding With WHODrug Koda
Automate Medical Coding With WHODrug KodaPerficient, Inc.
 
Preparing for Your Oracle, Medidata, and Veeva CTMS Migration Project
Preparing for Your Oracle, Medidata, and Veeva CTMS Migration ProjectPreparing for Your Oracle, Medidata, and Veeva CTMS Migration Project
Preparing for Your Oracle, Medidata, and Veeva CTMS Migration ProjectPerficient, Inc.
 
Accelerating Partner Management: How Manufacturers Can Navigate Covid-19
Accelerating Partner Management: How Manufacturers Can Navigate Covid-19Accelerating Partner Management: How Manufacturers Can Navigate Covid-19
Accelerating Partner Management: How Manufacturers Can Navigate Covid-19Perficient, Inc.
 
The Critical Role of Audience Intelligence with Eric Enge and Rand Fishkin
The Critical Role of Audience Intelligence with Eric Enge and Rand FishkinThe Critical Role of Audience Intelligence with Eric Enge and Rand Fishkin
The Critical Role of Audience Intelligence with Eric Enge and Rand FishkinPerficient, Inc.
 
Cardtronics Future Ready with Oracle EPM Cloud
Cardtronics Future Ready with Oracle EPM CloudCardtronics Future Ready with Oracle EPM Cloud
Cardtronics Future Ready with Oracle EPM CloudPerficient, Inc.
 
Teams Summit - What is New and Coming
Teams Summit -  What is New and ComingTeams Summit -  What is New and Coming
Teams Summit - What is New and ComingPerficient, Inc.
 
Empower Your Organization with Teams & Remote Work Crisis Management
Empower Your Organization with Teams & Remote Work Crisis ManagementEmpower Your Organization with Teams & Remote Work Crisis Management
Empower Your Organization with Teams & Remote Work Crisis ManagementPerficient, Inc.
 
Adoption & Change Management Overview
Adoption & Change Management OverviewAdoption & Change Management Overview
Adoption & Change Management OverviewPerficient, Inc.
 
Microsoft Teams: Measuring Activity of Employees Working from Home
Microsoft Teams: Measuring Activity of Employees Working from HomeMicrosoft Teams: Measuring Activity of Employees Working from Home
Microsoft Teams: Measuring Activity of Employees Working from HomePerficient, Inc.
 
Securing Teams with Microsoft 365 Security for Remote Work
Securing Teams with Microsoft 365 Security for Remote WorkSecuring Teams with Microsoft 365 Security for Remote Work
Securing Teams with Microsoft 365 Security for Remote WorkPerficient, Inc.
 
Infrastructure Best Practices for Teams Remote Workers
Infrastructure Best Practices for Teams Remote WorkersInfrastructure Best Practices for Teams Remote Workers
Infrastructure Best Practices for Teams Remote WorkersPerficient, Inc.
 
Accelerate Adoption for Microsoft Teams
Accelerate Adoption for Microsoft TeamsAccelerate Adoption for Microsoft Teams
Accelerate Adoption for Microsoft TeamsPerficient, Inc.
 
Preparing for Project Cortex and the Future of Knowledge Management
Preparing for Project Cortex and the Future of Knowledge ManagementPreparing for Project Cortex and the Future of Knowledge Management
Preparing for Project Cortex and the Future of Knowledge ManagementPerficient, Inc.
 
Utilizing Microsoft 365 Security for Remote Work
Utilizing Microsoft 365 Security for Remote Work Utilizing Microsoft 365 Security for Remote Work
Utilizing Microsoft 365 Security for Remote Work Perficient, Inc.
 

Plus de Perficient, Inc. (20)

Driving Strong 2020 Holiday Season Results
Driving Strong 2020 Holiday Season ResultsDriving Strong 2020 Holiday Season Results
Driving Strong 2020 Holiday Season Results
 
Transforming Pharmacovigilance Workflows with AI & Automation
Transforming Pharmacovigilance Workflows with AI & Automation Transforming Pharmacovigilance Workflows with AI & Automation
Transforming Pharmacovigilance Workflows with AI & Automation
 
The Secret to Acquiring and Retaining Customers in Financial Services
The Secret to Acquiring and Retaining Customers in Financial ServicesThe Secret to Acquiring and Retaining Customers in Financial Services
The Secret to Acquiring and Retaining Customers in Financial Services
 
Oracle Strategic Modeling Live: Defined. Discussed. Demonstrated.
Oracle Strategic Modeling Live: Defined. Discussed. Demonstrated.Oracle Strategic Modeling Live: Defined. Discussed. Demonstrated.
Oracle Strategic Modeling Live: Defined. Discussed. Demonstrated.
 
Content, Commerce, and... COVID
Content, Commerce, and... COVIDContent, Commerce, and... COVID
Content, Commerce, and... COVID
 
Centene's Financial Transformation Journey: A OneStream Success Story
Centene's Financial Transformation Journey: A OneStream Success StoryCentene's Financial Transformation Journey: A OneStream Success Story
Centene's Financial Transformation Journey: A OneStream Success Story
 
Automate Medical Coding With WHODrug Koda
Automate Medical Coding With WHODrug KodaAutomate Medical Coding With WHODrug Koda
Automate Medical Coding With WHODrug Koda
 
Preparing for Your Oracle, Medidata, and Veeva CTMS Migration Project
Preparing for Your Oracle, Medidata, and Veeva CTMS Migration ProjectPreparing for Your Oracle, Medidata, and Veeva CTMS Migration Project
Preparing for Your Oracle, Medidata, and Veeva CTMS Migration Project
 
Accelerating Partner Management: How Manufacturers Can Navigate Covid-19
Accelerating Partner Management: How Manufacturers Can Navigate Covid-19Accelerating Partner Management: How Manufacturers Can Navigate Covid-19
Accelerating Partner Management: How Manufacturers Can Navigate Covid-19
 
The Critical Role of Audience Intelligence with Eric Enge and Rand Fishkin
The Critical Role of Audience Intelligence with Eric Enge and Rand FishkinThe Critical Role of Audience Intelligence with Eric Enge and Rand Fishkin
The Critical Role of Audience Intelligence with Eric Enge and Rand Fishkin
 
Cardtronics Future Ready with Oracle EPM Cloud
Cardtronics Future Ready with Oracle EPM CloudCardtronics Future Ready with Oracle EPM Cloud
Cardtronics Future Ready with Oracle EPM Cloud
 
Teams Summit - What is New and Coming
Teams Summit -  What is New and ComingTeams Summit -  What is New and Coming
Teams Summit - What is New and Coming
 
Empower Your Organization with Teams & Remote Work Crisis Management
Empower Your Organization with Teams & Remote Work Crisis ManagementEmpower Your Organization with Teams & Remote Work Crisis Management
Empower Your Organization with Teams & Remote Work Crisis Management
 
Adoption & Change Management Overview
Adoption & Change Management OverviewAdoption & Change Management Overview
Adoption & Change Management Overview
 
Microsoft Teams: Measuring Activity of Employees Working from Home
Microsoft Teams: Measuring Activity of Employees Working from HomeMicrosoft Teams: Measuring Activity of Employees Working from Home
Microsoft Teams: Measuring Activity of Employees Working from Home
 
Securing Teams with Microsoft 365 Security for Remote Work
Securing Teams with Microsoft 365 Security for Remote WorkSecuring Teams with Microsoft 365 Security for Remote Work
Securing Teams with Microsoft 365 Security for Remote Work
 
Infrastructure Best Practices for Teams Remote Workers
Infrastructure Best Practices for Teams Remote WorkersInfrastructure Best Practices for Teams Remote Workers
Infrastructure Best Practices for Teams Remote Workers
 
Accelerate Adoption for Microsoft Teams
Accelerate Adoption for Microsoft TeamsAccelerate Adoption for Microsoft Teams
Accelerate Adoption for Microsoft Teams
 
Preparing for Project Cortex and the Future of Knowledge Management
Preparing for Project Cortex and the Future of Knowledge ManagementPreparing for Project Cortex and the Future of Knowledge Management
Preparing for Project Cortex and the Future of Knowledge Management
 
Utilizing Microsoft 365 Security for Remote Work
Utilizing Microsoft 365 Security for Remote Work Utilizing Microsoft 365 Security for Remote Work
Utilizing Microsoft 365 Security for Remote Work
 

Dernier

Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 

Dernier (20)

Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 

Reverse Star Schema Overcomes Healthcare Cohort Filtering Challenges

  • 1. When Facts and Dimensions Alone Aren't the Answer: Logically Reversing the Star Schema Kathryn Watson
  • 2. Solution Architect at Perficient Economist & Financial Analyst by education, BI Professional by passion Email: kathryn.watson@perficient.com LinkedIn: www.linkedin.com/pub/kathryn-watson/a/431/354/ Kathryn Watson
  • 3.  What is a Reverse Star Schema?  Why and when would I use a Reverse Star Schema?  How would I implement a Reverse Star Schema?  What about data integrity? While addressing these questions, we’ll walk through a real life implementation within the healthcare industry. The Questions We’ll Answer Today:
  • 4. The Star Schema has long been the foundation of effective BI applications ● Optimized for the speedy return of business facts and their corresponding descriptors ● Supports the manner in which businesses ask typical business questions Let’s Start With the Basics
  • 5. Show me A, filtered by B and aggregated by C & D Let’s Start With the Basics (cntd.) A B C D
  • 6. Show me Z, filtered and aggregated by W, X & Y Let’s Start With the Basics (cntd.) Z W X Y
  • 7.  Data warehouses commonly include multiple facts  These multiple facts often share dimensions, called conformed dimensions Let’s Start With the Basics (cntd.)
  • 8.  Conformed dimensions facilitate answering multi- faceted business questions.  Show me A & Z, aggregated and/or filtered by N Let’s Start With the Basics (cntd.) A B C D Z W X Y N
  • 9.  As BI implementations mature, the questions your users are asking often do as well.  Show me Z, filtered by B & C and aggregated by Y And Continue Along the BI Maturity Model A B C D Z W X Y N
  • 10. In this scenario: ● B and C are not dimensions of Z ● B and C are not subsets of Y ● B and C are not directly related to the Fact (Z) they are required to affect And Continue Along the BI Maturity Model (cntd.) A B C D Z W X Y N
  • 11. We’ve now encountered a very practical use case for the Reverse Star Schema. And Continue Along the BI Maturity Model (cntd.)
  • 12. A typical Reverse Star Schema flips the concept of what information is being returned to the user. Rather than factual information being the star of the show, the dimensional information is the main event. In all Reverse Star Schemas, the relationships between facts and dimensions are flipped; rather than a one-to- many dimension to fact relationship, the Reverse Star Schema introduces a one-to-many or many-to-many fact to dimension relationship. So, What is a Reverse Star Schema?
  • 13.  Sometimes, the return of the intersection of dimensional data is truly all the user needs  More often, the Reverse Star Schema is the avenue to establish cause-and-effect relationships amongst indirectly related data concepts When and Why Would I Use This?
  • 14. Let’s return to the scenario we showcased previously: show me Z, filtered by B & C and aggregated by Y When and Why Would I Use This? (cntd.) A B C D Z W X Y N
  • 15. B & C’s relationship to Z is established through fact A and conformed dimension N When and Why Would I Use This? (cntd.) A B C D Z W X Y N
  • 16.  The values of A & N aren’t of interest to the user  A & N are simply avenues through which the needed attributes are accessed When and Why Would I Use This? (cntd.) A B C D Z W X Y N
  • 17. Let’s apply this concept to the real world: When and Why Would I Use This? (cntd.) One of the nation’s top cancer care centers was seeking an on- demand means to identify patient cohorts. Physicians should be able to refine cohorts by basic tumor information and various disconnected factors of cancer care: Tumors – initial presentation date and type Histologies – cancer type and structure over time Stagings – cancer severity Statuses – active, in remission, etc. Treatments – chemotherapy, radiation, other A filter applied to any of these concepts should affect the results of all concepts, even though the concepts are independent of each other.
  • 18. Let’s apply this concept to the real world (cntd.): During the analysis phase, it was confirmed that everything was directly related to the patient’s instance of cancer (Tumor). All other concepts, though factual concepts in their own right, for this purpose were informational. It’s all about the Tumor. Everything else is informational. When and Why Would I Use This? (cntd.)
  • 19. Much like our use case scenario, a multi-fact Star Schema emerged. ● 5 Facts with Independent Dimensions ● Tumors/Documents (F_CLNCL_DOC) ● Histologies (F_TMR_HISTOL) ● Stagings (F_TMR_STG) ● Statuses (F_TMR_STAT) ● Treatments (F_TMR_TRTMT) ● 1 Conformed Dimension shared by all facts ● Tumors (D_PT_TMR) Let’s apply this concept to the real world (cntd.): When and Why Would I Use This? (cntd.)
  • 20. Let’s apply this concept to the real world (cntd.): When and Why Would I Use This? (cntd.)
  • 21. Implemented in OBIEE, the Dimensional Model = OBIEE Physical Layer, except for: ● EIW Dimensions ● Date dimension aliased for each of its purposes (17 aliases) ● Provider dimension aliased for each of its purposes (3 aliases) ● 4 Additional Facts ● Users stated the requirement to analyze treatments as separate entities for some use- cases, and as consolidated activities in other use-cases ● This is achieved by placing database views on top of F_TMR_TRTMT, with one view for each treatment type Let’s apply this concept to the real world (cntd.): When and Why Would I Use This? (cntd.)
  • 22. Let’s apply this concept to the real world (cntd.): When and Why Would I Use This? (cntd.)
  • 23. Let’s apply this concept to the real world (cntd.): When and Why Would I Use This? (cntd.) But the classic Star Schema did not support our main requirement: A filter applied to any of these concepts should affect the results of all concepts, even though the concepts are independent of each other. It’s all about the Tumor. Everything else is informational. In the classic Star Schema design, each fact and its dimensions are independent of the other facts. Filters applied to the dimensions of one fact do not affect the results returned in another fact.
  • 24. Ok, How Would I implement This? To fill our requirement that filters applied to the dimension of one fact should affect the results returned in another fact: ● “Sub-Facts” (Statuses, Stagings, Histologies, Treatments) should be treated as dimensions of the central fact (Tumors/Documents) through the conformed dimension (Tumors). ● This would create a reverse snowflake schema ● One fact: F_CLNCL_DOC (Tumors/Documents) ● Central Dimension: D_PT_TMR (Tumors) ● All other tables are dimensions that flake off of D_PT_TMR and their “Sub-Facts”. (One to many join between D_PT_TMR and other facts reversed, becoming many to one) Continuing with our real world example:
  • 25. Ok, How Would I implement This? (cntd.) So, should our Dimensional Model/RPD Physical Layer be re- designed to support this? No. Continuing with our real world example:
  • 26. Ok, How Would I implement This? (cntd.) The Dimensional Model/RPD Physical Layer should remain As Is (a classic Star Schema) ● The “Sub-Facts” truly are facts/transactions. They can be analyzed independently ● Current requirements dictate that the “Sub-Facts” are simply avenues to descriptive attributes ● However, future requirements may dictate the need to analyze these “Sub-Facts” individually; we don’t want to lose this capability through a redesign Continuing with our real world example:
  • 27. Ok, How Would I implement This? (cntd.) The Reverse Star Schema is built logically in the RPD BMM layer: ● Individual Dimension Tables are brought over from the Physical Layer ● The Logical Table Source (LTS) for each Dimension Table is edited to include its “Sub-Fact” table as well as D_PT_TMR Continuing with our real world example:
  • 28. Ok, How Would I implement This? (cntd.) The Reverse Star Schema is built logically in the RPD BMM layer (cntd.): ● The dimension table is then logically joined directly to the central fact (FACT_ALS_F_CLNCL_DOC) Continuing with our real world example:
  • 29. Ok, How Would I implement This? (cntd.) The Reverse Star Schema is built logically in the RPD BMM layer (cntd.): ● The joins in the Physical Layer remain the same. Continuing with our real world example: Dimension DimensionFact Fact
  • 30. Ok, How Would I implement This? (cntd.) This process is completed until all dimension tables join directly to the central fact (FACT_ALS_F_CLNCL_DOC) in the BMM “Sub-Facts” were not brought in as logical tables in the BMM for this implementation, as there were no requirements for them. ● These “Sub-Facts” can be brought in as independent facts later if needed, creating a multi-facted Star Schema ● If a “Sub-Fact” is brought in at a later time, it need simply be joined to its relevant Dimensions; OBIEE will recognize that only one table in the LTS need be used for the Join Continuing with our real world example:
  • 31. Ok, How Would I implement This? (cntd.) Continuing with our real world example:
  • 32. What about data integrity? Continuing with our real world example: Aggregation is fine so long as your aggregations are all count distinct. But what about when your aggregation is something other than a count distinct? Ay, there’s the rub! Luckily, OBIEE has a quick and easy solution: level based measures and/or measures based upon dimensions
  • 33. What about data integrity? Continuing with our real world example: We had to set our non-count distinct aggregations to be Based on Dimensions in order to achieve correct aggregation of our measures ● For the conformed dimension (DIM_ALS_D_PT_TMR or Tumors), take the Distinct Average of the measure ● For all Other Dimensions, simply Average the Measure
  • 34. What about data integrity? Continuing with our real world example: Why does this work? ● OBIEE will first average distinct the measure at the Tumor level. Since the Tumor level is the lowest granularity, this will equate to the original measure ● OBIEE will then average the population of these distinct averages by whatever other dimensions are brought into the request
  • 35. What about data integrity? Continuing with our real world example: Why is this necessary? ● In our data set, our “Sub-Facts” can have multiple instances per tumor. ● We have transitioned our “Sub-Facts” to act as avenues between their own dimensions and the central fact (FACT_F_CLNCL_DOC) for the formation of the Star Schema in the BMM ● As a result, we can (and do) experience “ballooning”
  • 36. What about data integrity? Continuing with our real world example: Why is this necessary (cntd.)? Two Tumors, each with one row of data: vs. Same two Tumors, with Staging Date added to the query. The 1st Tumor now has two rows of data, one for each of its Staging Dates. The 2nd Tumor still has only one row of data, as it has only one Staging Date.
  • 37. What about data integrity? Continuing with our real world example: Why is this necessary? (cntd.) ● With the inflated data, we can’t simply average: tumors that have ballooned out would be weighted more heavily in our average calculation than those that have not 349.67 If the Aggregation Rule in our RPD was simply set to “Average,” OBIEE would calculate the average of the above as 349.67 [ (493 + 493 + 63) / 3 ]
  • 38. What about data integrity? Continuing with our real world example: Why is this necessary? (cntd.) ● To remove the “weight” given to a measure when its tumor appears in the results more than once, we have to tell OBIEE to base the aggregation on Dimensions
  • 39. What about data integrity? Continuing with our real world example: Why is this necessary? (cntd.) ● OBIEE would first calculate the Average at the Tumor Level AVG(DISTINCT "SCD-Tumor Management"."FACT_ALS_F_CLNCL_DOC"."Follow Up Time")
  • 40. What about data integrity? Continuing with our real world example: Why is this necessary? (cntd.) ● OBIEE would then average this average AVG("SCD-Tumor Management"."FACT_ALS_F_CLNCL_DOC"."Follow Up Time") ● Our average calculates correctly, at 278 [ (493 + 63) / 2 ]
  • 42. Additional Implementation Notes Non Star Schema Structures: ● Non-Star Schema structures can work and do not necessarily cause incorrect results ● However, they are not ideal and can greatly complicate implementation, expansion, and maintenance
  • 43. Additional Implementation Notes (cntd.) Non Star Schema Structures (cntd.): ● To demonstrate, let’s start with a simple snowflake structure
  • 44. Additional Implementation Notes (cntd.) Non Star Schema Structures (cntd.): ● And then create a Dimensional Hierarchy on DIM_PROVIDERS
  • 45. Additional Implementation Notes (cntd.) Non Star Schema Structures (cntd.): ● OBIEE names your hierarchy DIM_PATIENTSDim, but you created it on DIM_PROVIDERS. Why? ● OBIEE considers the dimension that is joined directly to the fact to be the “true”, as it’s the lowest level dimension ● DIM_PROVIDERS is connected to DIM_PATIENTS at a higher level, and OBIEE has consolidating both tables into one dimensional hierarchy, with DIM_PROVIDERS the parent level of DIM_PATIENTS
  • 46. Additional Implementation Notes (cntd.) Non Star Schema Structures (cntd.): ● What would have happened if DIM_PATIENTS had 2 flakes? Dimension Dimension Dimension Dimension Fact
  • 47. Additional Implementation Notes (cntd.) Non Star Schema Structures (cntd.): ● You’d end up with 1 dimensional hierarchy with 2 separate trees
  • 48. Additional Implementation Notes (cntd.) Non Star Schema Structures (cntd.): ● So why does this complicate things? ● Level-based measures are based upon Dimensional Hierarchies ● In a Snowflake Schema, constructing many types of level-based measures becomes impossible, or at the least very complex.
  • 49. Additional Implementation Notes (cntd.) Non Star Schema Structures (cntd.): ● Let’s calculate the average Follow-Up Days for a Provider by Age Bucket ● Because Providers and Age Buckets are in the same Dimensional Hierarchy, we can’t do this calculation. ● OBIEE limits you to only one level per Dimensional Hierarchy
  • 50. Additional Implementation Notes (cntd.) RPD Consistency Check Warnings: ● Because you have mapped multiple tables in the LTS’s of your Dimensions, OBIEE expects you to use those tables in the Column Mappings ● If you do not make use of a mapped table, the Consistency Checker will give you a warning:
  • 51. Additional Implementation Notes (cntd.) RPD Consistency Check Warnings (cntd.): ● To resolve this warning, create a new Logical Column in your table and map it to a column in the unused table
  • 52. Additional Implementation Notes (cntd.) Fabricated Data: Missing Data ● In our data set we were faced with the fact that a Tumor may not be present in all of the major subject areas (Statuses, Stagings, Histologies, Treatments) ● In the instances where a Tumor was not present in a subject area, that Tumor would fall out of the data population if a dimension from that subject area was brought in Users did not want this fallout to occur and they emphasized that it was just as important to see where a Tumor did not have information in a given subject area as it was to see what information a tumor did have in a given subject area
  • 53. Additional Implementation Notes (cntd.) Fabricated Data: Missing Data (cntd.) ● RPD Resolution Possibility ● This fallout could have been prevented through Outer Joins in the OBIEE RPD ● The Logical Mappings of all dimension attributes could be changed to include an IFNULL clause [It was required that a NULL/missing object state its status (Missing)] ● With hundreds of attributes this is neither sustainable nor realistic
  • 54. Additional Implementation Notes (cntd.) Fabricated Data: Missing Data (cntd.) ● Data Creation in Database Tables Resolution Possibility ● Each and every Dimension Table in our Dimensional Model has an entry for a key of -2 and attribute codes, names, descriptions, etc. of ‘!Record Does Not Exist in Source’ ● At the end of the ETL process, the central conformed dimension (D_PT_TMR) was LEFT OUTER JOINed to each of the dimensional database “Sub-Facts” ● F_TMR_STAT ● F_TMR_STG ● F_TMR_HISTOL ● F_TMR_TRTMT
  • 55. Additional Implementation Notes (cntd.) Fabricated Data: Missing Data (cntd.) ● Data Creation in Database Tables Resolution Possibility (cntd.) ● Where a match was not found in a Fact table, a row was inserted in that Fact table for the missing Tumor ID. All Dimensional Keys were set to -2, !Record Does Not Exist in Source ● Users then gained the ability to pull tumors with missing information.