SlideShare a Scribd company logo
AN AGILE MODELING TECHNIQUE USING THE SIXTH NORMAL FORM
     FOR STRUCTURALLY AND TEMPORALLY EVOLVING DATA
                      Lars Rönnbäck
                          [ER09]
“You can never step
     into the same river
     twice.”




2
DW     MDM    EDW    DW     TDWI   KTH/SU    CC    WWW   DW     ER09
2003   2004   2005   2006   2007            2008         2009
Entity
            Relationship
            Modeling



                           Sixth
                           Normal
                           Form




 Temporal
Databases
Customer                                      Gender
Store                                         CustomerClass
Purchase                                      HouseholdOwner
Item                                          VisitingFrequencyInterval
PriceList
Inventory




                                                 Customer_Address
                                                 Customer_Household
CustomerDateOfBirth                              Card_Customer
CustomerNumber
CustomerName          Attributes and ties
CustomerGender        come in four flavors,
                      historized or static
                      combined with knotted
select top 5 * from CU_Customer                 select top 5 * from GEN_Gender

CU_ID                                            GEN_ID           GEN_Gender
1                                                1                Male
2                                                2                Female
3
4
5




select top 5 * from CUDOB_CustomerDateOfBirth   select top 5 * from CUHH_Customer_Household

 CU_ID     CUDOB_CustomerDateOfBirth            CU_ID     HH_ID    HOW_ID    CUHH_FromDate
 1         1905-03-02                           1         1        1         2009-02-13
 2         1905-07-02                           1         895      0         2009-09-21
 3         1908-09-14                           2         2        1         2006-10-17
 4         1910-02-03                           3         3        1         2002-08-20
 5         1912-04-01                           4         4        1         1993-08-29
1   2                                  3

4                         5




        All previous versions of the
        schema are present and
        were never modified,
        allowing extensions to be
        made ”online”.
Joins all attributes and finds the
                                 attribute row with the latest
                                 FromDate earlier or on the given
                                 timepoint if historized




Joins all attributes and finds
the attribute row with the
latest FromDate if historized
YearOfBirth   Customers
                                      1950          20615
                                      1951          19282
                                      1952          20003
                                      1953          19782
                                      1954          19249




The query execution plan shows
that only two tables are touched
(the anchor and the selected
attribute) despite of the fact that
several others are joined into the
view we are using.
The query optimizer will remove table T from the            Support
execution plan of a query if the following two conditions   Microsoft SQL Server
are fulfilled:                                              Oracle
                                                            IBM DB2
 i.    no column from T is explicitly selected              PostgreSQL
 ii.   the number of rows in the returned data set is not   MariaDB (fork of MySQL)
       affected by the join with T                          Teradata (partial)
The scripts for setting up
                                                         the database, including all
                                                         views and functions, can be
                                                         automatically generated
                                                         from a compact XML
                                                         description.




                           Pseudo loading code given ”wide” source data:
                           o Check if there already is an associated surrogate key for
                              each natural key
                                o For unknown individuals
                                     o Create and associate surrogate keys
                                     o Directly insert data into all relevant tables
                                     (most tables including the anchor)
Data loading templates          o For known individuals
can be made in which                 o If this is a delta file, directly insert data into all
only the names of the                    relevant tables
                                     o If this is not a delta file, check if the value in
tables and the join with
                                         the source differs from the latest value in the
the natural key have to                  destination and insert if the data is new
be changed.                          (few tables excluding the anchor)
Ease of Modeling                           Simplified Maintenance
Simple concepts and notation               Ease of temporal querying
Historization by design                    Absence of null values
Iterative and incremental development      Reusability and automation
Reduced translation logic                  Asynchronous arrival of data

                   High Performance
                   High run-time performance
                   Efficient storage
                   Parallelized physical media access




www.anchormodeling.com

More Related Content

Similar to Anchor Modeling ER09 Presentation

SQL Server 2008 Overview
SQL Server 2008 OverviewSQL Server 2008 Overview
SQL Server 2008 Overview
David Chou
 
ANSI SQL Transparent Multipath Hierarchical Structured Data Processing for Re...
ANSI SQL Transparent Multipath Hierarchical Structured Data Processing for Re...ANSI SQL Transparent Multipath Hierarchical Structured Data Processing for Re...
ANSI SQL Transparent Multipath Hierarchical Structured Data Processing for Re...
Michael M David
 
SQLFire Webinar
SQLFire WebinarSQLFire Webinar
SQLFire Webinar
Carter Shanklin
 
D3 meetup (Backbone and D3)
D3 meetup (Backbone and D3)D3 meetup (Backbone and D3)
D3 meetup (Backbone and D3)
Alpine Data
 
Introducing U-SQL (SQLPASS 2016)
Introducing U-SQL (SQLPASS 2016)Introducing U-SQL (SQLPASS 2016)
Introducing U-SQL (SQLPASS 2016)
Michael Rys
 
Ef code first
Ef code firstEf code first
Ef code first
dotNETUserGroupDnipro
 
Meetup cassandra for_java_cql
Meetup cassandra for_java_cqlMeetup cassandra for_java_cql
Meetup cassandra for_java_cql
zznate
 
Cassandra Basics, Counters and Time Series Modeling
Cassandra Basics, Counters and Time Series ModelingCassandra Basics, Counters and Time Series Modeling
Cassandra Basics, Counters and Time Series Modeling
Vassilis Bekiaris
 
Building nTier Applications with Entity Framework Services (Part 1)
Building nTier Applications with Entity Framework Services (Part 1)Building nTier Applications with Entity Framework Services (Part 1)
Building nTier Applications with Entity Framework Services (Part 1)
David McCarter
 
Sql tutorial
Sql tutorialSql tutorial
Sql tutorial
Axmed Mo.
 
Sql tutorial
Sql tutorialSql tutorial
Sql tutorial
togather111
 
EclipseCon 2021 NoSQL Endgame
EclipseCon 2021 NoSQL EndgameEclipseCon 2021 NoSQL Endgame
EclipseCon 2021 NoSQL Endgame
Thodoris Bais
 
cPanel now supports MySQL 8.0 - My Top Seven Features
cPanel now supports MySQL 8.0 - My Top Seven FeaturescPanel now supports MySQL 8.0 - My Top Seven Features
cPanel now supports MySQL 8.0 - My Top Seven Features
Dave Stokes
 
Ef code first
Ef code firstEf code first
Ef code first
ZealousysDev
 
Data Access Tech Ed India
Data Access   Tech Ed IndiaData Access   Tech Ed India
Data Access Tech Ed India
rsnarayanan
 
Data Modeling, Normalization, and De-Normalization | PostgresOpen 2019 | Dimi...
Data Modeling, Normalization, and De-Normalization | PostgresOpen 2019 | Dimi...Data Modeling, Normalization, and De-Normalization | PostgresOpen 2019 | Dimi...
Data Modeling, Normalization, and De-Normalization | PostgresOpen 2019 | Dimi...
Citus Data
 
NOSQL and Cassandra
NOSQL and CassandraNOSQL and Cassandra
NOSQL and Cassandra
rantav
 
Building nTier Applications with Entity Framework Services (Part 1)
Building nTier Applications with Entity Framework Services (Part 1)Building nTier Applications with Entity Framework Services (Part 1)
Building nTier Applications with Entity Framework Services (Part 1)
David McCarter
 
U-SQL - Azure Data Lake Analytics for Developers
U-SQL - Azure Data Lake Analytics for DevelopersU-SQL - Azure Data Lake Analytics for Developers
U-SQL - Azure Data Lake Analytics for Developers
Michael Rys
 
#Free #Demo from #SQLSchool #Training #Institute
#Free #Demo from #SQLSchool #Training #Institute#Free #Demo from #SQLSchool #Training #Institute
#Free #Demo from #SQLSchool #Training #Institute
SequelGate
 

Similar to Anchor Modeling ER09 Presentation (20)

SQL Server 2008 Overview
SQL Server 2008 OverviewSQL Server 2008 Overview
SQL Server 2008 Overview
 
ANSI SQL Transparent Multipath Hierarchical Structured Data Processing for Re...
ANSI SQL Transparent Multipath Hierarchical Structured Data Processing for Re...ANSI SQL Transparent Multipath Hierarchical Structured Data Processing for Re...
ANSI SQL Transparent Multipath Hierarchical Structured Data Processing for Re...
 
SQLFire Webinar
SQLFire WebinarSQLFire Webinar
SQLFire Webinar
 
D3 meetup (Backbone and D3)
D3 meetup (Backbone and D3)D3 meetup (Backbone and D3)
D3 meetup (Backbone and D3)
 
Introducing U-SQL (SQLPASS 2016)
Introducing U-SQL (SQLPASS 2016)Introducing U-SQL (SQLPASS 2016)
Introducing U-SQL (SQLPASS 2016)
 
Ef code first
Ef code firstEf code first
Ef code first
 
Meetup cassandra for_java_cql
Meetup cassandra for_java_cqlMeetup cassandra for_java_cql
Meetup cassandra for_java_cql
 
Cassandra Basics, Counters and Time Series Modeling
Cassandra Basics, Counters and Time Series ModelingCassandra Basics, Counters and Time Series Modeling
Cassandra Basics, Counters and Time Series Modeling
 
Building nTier Applications with Entity Framework Services (Part 1)
Building nTier Applications with Entity Framework Services (Part 1)Building nTier Applications with Entity Framework Services (Part 1)
Building nTier Applications with Entity Framework Services (Part 1)
 
Sql tutorial
Sql tutorialSql tutorial
Sql tutorial
 
Sql tutorial
Sql tutorialSql tutorial
Sql tutorial
 
EclipseCon 2021 NoSQL Endgame
EclipseCon 2021 NoSQL EndgameEclipseCon 2021 NoSQL Endgame
EclipseCon 2021 NoSQL Endgame
 
cPanel now supports MySQL 8.0 - My Top Seven Features
cPanel now supports MySQL 8.0 - My Top Seven FeaturescPanel now supports MySQL 8.0 - My Top Seven Features
cPanel now supports MySQL 8.0 - My Top Seven Features
 
Ef code first
Ef code firstEf code first
Ef code first
 
Data Access Tech Ed India
Data Access   Tech Ed IndiaData Access   Tech Ed India
Data Access Tech Ed India
 
Data Modeling, Normalization, and De-Normalization | PostgresOpen 2019 | Dimi...
Data Modeling, Normalization, and De-Normalization | PostgresOpen 2019 | Dimi...Data Modeling, Normalization, and De-Normalization | PostgresOpen 2019 | Dimi...
Data Modeling, Normalization, and De-Normalization | PostgresOpen 2019 | Dimi...
 
NOSQL and Cassandra
NOSQL and CassandraNOSQL and Cassandra
NOSQL and Cassandra
 
Building nTier Applications with Entity Framework Services (Part 1)
Building nTier Applications with Entity Framework Services (Part 1)Building nTier Applications with Entity Framework Services (Part 1)
Building nTier Applications with Entity Framework Services (Part 1)
 
U-SQL - Azure Data Lake Analytics for Developers
U-SQL - Azure Data Lake Analytics for DevelopersU-SQL - Azure Data Lake Analytics for Developers
U-SQL - Azure Data Lake Analytics for Developers
 
#Free #Demo from #SQLSchool #Training #Institute
#Free #Demo from #SQLSchool #Training #Institute#Free #Demo from #SQLSchool #Training #Institute
#Free #Demo from #SQLSchool #Training #Institute
 

More from pajo01

Practice Research
Practice ResearchPractice Research
Practice Research
pajo01
 
Unified Service Theory and Perspectives on Services
Unified Service Theory and Perspectives on ServicesUnified Service Theory and Perspectives on Services
Unified Service Theory and Perspectives on Services
pajo01
 
BPM in crisis
BPM in crisisBPM in crisis
BPM in crisis
pajo01
 
Tharaka phd presentation2010
Tharaka phd presentation2010Tharaka phd presentation2010
Tharaka phd presentation2010
pajo01
 
Mturi licentiate presentation
Mturi licentiate presentationMturi licentiate presentation
Mturi licentiate presentation
pajo01
 
Göran Goldkuhl on Practice Research
Göran Goldkuhl on Practice ResearchGöran Goldkuhl on Practice Research
Göran Goldkuhl on Practice Research
pajo01
 
2:a generationens sociala medier
2:a generationens sociala medier2:a generationens sociala medier
2:a generationens sociala medier
pajo01
 
Enterprise2
Enterprise2Enterprise2
Enterprise2pajo01
 
Social Media KTH X
Social Media KTH XSocial Media KTH X
Social Media KTH X
pajo01
 
Design Science Introduction
Design Science IntroductionDesign Science Introduction
Design Science Introduction
pajo01
 
Tenta I S1dec08
Tenta I S1dec08Tenta I S1dec08
Tenta I S1dec08
pajo01
 
I S1 Lesson3 Solution Sketch
I S1 Lesson3 Solution SketchI S1 Lesson3 Solution Sketch
I S1 Lesson3 Solution Sketch
pajo01
 
Processes I S1 H T08
Processes I S1 H T08Processes I S1 H T08
Processes I S1 H T08
pajo01
 
K K I S109
K K I S109K K I S109
K K I S109
pajo01
 
I S1 Lesson2 Solution Sketch
I S1 Lesson2 Solution SketchI S1 Lesson2 Solution Sketch
I S1 Lesson2 Solution Sketch
pajo01
 
Tenta I S1okt09 New
Tenta I S1okt09 NewTenta I S1okt09 New
Tenta I S1okt09 New
pajo01
 
Value Encounters by Hans Weigand
Value Encounters by Hans WeigandValue Encounters by Hans Weigand
Value Encounters by Hans Weigand
pajo01
 

More from pajo01 (17)

Practice Research
Practice ResearchPractice Research
Practice Research
 
Unified Service Theory and Perspectives on Services
Unified Service Theory and Perspectives on ServicesUnified Service Theory and Perspectives on Services
Unified Service Theory and Perspectives on Services
 
BPM in crisis
BPM in crisisBPM in crisis
BPM in crisis
 
Tharaka phd presentation2010
Tharaka phd presentation2010Tharaka phd presentation2010
Tharaka phd presentation2010
 
Mturi licentiate presentation
Mturi licentiate presentationMturi licentiate presentation
Mturi licentiate presentation
 
Göran Goldkuhl on Practice Research
Göran Goldkuhl on Practice ResearchGöran Goldkuhl on Practice Research
Göran Goldkuhl on Practice Research
 
2:a generationens sociala medier
2:a generationens sociala medier2:a generationens sociala medier
2:a generationens sociala medier
 
Enterprise2
Enterprise2Enterprise2
Enterprise2
 
Social Media KTH X
Social Media KTH XSocial Media KTH X
Social Media KTH X
 
Design Science Introduction
Design Science IntroductionDesign Science Introduction
Design Science Introduction
 
Tenta I S1dec08
Tenta I S1dec08Tenta I S1dec08
Tenta I S1dec08
 
I S1 Lesson3 Solution Sketch
I S1 Lesson3 Solution SketchI S1 Lesson3 Solution Sketch
I S1 Lesson3 Solution Sketch
 
Processes I S1 H T08
Processes I S1 H T08Processes I S1 H T08
Processes I S1 H T08
 
K K I S109
K K I S109K K I S109
K K I S109
 
I S1 Lesson2 Solution Sketch
I S1 Lesson2 Solution SketchI S1 Lesson2 Solution Sketch
I S1 Lesson2 Solution Sketch
 
Tenta I S1okt09 New
Tenta I S1okt09 NewTenta I S1okt09 New
Tenta I S1okt09 New
 
Value Encounters by Hans Weigand
Value Encounters by Hans WeigandValue Encounters by Hans Weigand
Value Encounters by Hans Weigand
 

Recently uploaded

20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
IndexBug
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Things to Consider When Choosing a Website Developer for your Website | FODUU
Things to Consider When Choosing a Website Developer for your Website | FODUUThings to Consider When Choosing a Website Developer for your Website | FODUU
Things to Consider When Choosing a Website Developer for your Website | FODUU
FODUU
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
kumardaparthi1024
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
SitimaJohn
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
Wouter Lemaire
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
Infrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI modelsInfrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI models
Zilliz
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
akankshawande
 

Recently uploaded (20)

20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Things to Consider When Choosing a Website Developer for your Website | FODUU
Things to Consider When Choosing a Website Developer for your Website | FODUUThings to Consider When Choosing a Website Developer for your Website | FODUU
Things to Consider When Choosing a Website Developer for your Website | FODUU
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
Infrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI modelsInfrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI models
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
 

Anchor Modeling ER09 Presentation

  • 1. AN AGILE MODELING TECHNIQUE USING THE SIXTH NORMAL FORM FOR STRUCTURALLY AND TEMPORALLY EVOLVING DATA Lars Rönnbäck [ER09]
  • 2. “You can never step into the same river twice.” 2
  • 3. DW MDM EDW DW TDWI KTH/SU CC WWW DW ER09 2003 2004 2005 2006 2007 2008 2009
  • 4. Entity Relationship Modeling Sixth Normal Form Temporal Databases
  • 5. Customer Gender Store CustomerClass Purchase HouseholdOwner Item VisitingFrequencyInterval PriceList Inventory Customer_Address Customer_Household CustomerDateOfBirth Card_Customer CustomerNumber CustomerName Attributes and ties CustomerGender come in four flavors, historized or static combined with knotted
  • 6. select top 5 * from CU_Customer select top 5 * from GEN_Gender CU_ID GEN_ID GEN_Gender 1 1 Male 2 2 Female 3 4 5 select top 5 * from CUDOB_CustomerDateOfBirth select top 5 * from CUHH_Customer_Household CU_ID CUDOB_CustomerDateOfBirth CU_ID HH_ID HOW_ID CUHH_FromDate 1 1905-03-02 1 1 1 2009-02-13 2 1905-07-02 1 895 0 2009-09-21 3 1908-09-14 2 2 1 2006-10-17 4 1910-02-03 3 3 1 2002-08-20 5 1912-04-01 4 4 1 1993-08-29
  • 7. 1 2 3 4 5 All previous versions of the schema are present and were never modified, allowing extensions to be made ”online”.
  • 8. Joins all attributes and finds the attribute row with the latest FromDate earlier or on the given timepoint if historized Joins all attributes and finds the attribute row with the latest FromDate if historized
  • 9. YearOfBirth Customers 1950 20615 1951 19282 1952 20003 1953 19782 1954 19249 The query execution plan shows that only two tables are touched (the anchor and the selected attribute) despite of the fact that several others are joined into the view we are using.
  • 10. The query optimizer will remove table T from the Support execution plan of a query if the following two conditions Microsoft SQL Server are fulfilled: Oracle IBM DB2 i. no column from T is explicitly selected PostgreSQL ii. the number of rows in the returned data set is not MariaDB (fork of MySQL) affected by the join with T Teradata (partial)
  • 11. The scripts for setting up the database, including all views and functions, can be automatically generated from a compact XML description. Pseudo loading code given ”wide” source data: o Check if there already is an associated surrogate key for each natural key o For unknown individuals o Create and associate surrogate keys o Directly insert data into all relevant tables (most tables including the anchor) Data loading templates o For known individuals can be made in which o If this is a delta file, directly insert data into all only the names of the relevant tables o If this is not a delta file, check if the value in tables and the join with the source differs from the latest value in the the natural key have to destination and insert if the data is new be changed. (few tables excluding the anchor)
  • 12. Ease of Modeling Simplified Maintenance Simple concepts and notation Ease of temporal querying Historization by design Absence of null values Iterative and incremental development Reusability and automation Reduced translation logic Asynchronous arrival of data High Performance High run-time performance Efficient storage Parallelized physical media access www.anchormodeling.com