SlideShare a Scribd company logo
EAV data model
Presenter: Sandeep Kumar Rout, Mindfire Solutions
Date: 20/03/2014
1/2/12
Presenter: Sandeep Kumar Rout, Mindfire
Solutions
Date: 20/03/2014
About Me
M70 101 – Magento Certified Developer
Skills: PHP, Magento, SugarCRM,
CakePHP, oSCommerce, CodeIgniter
Connect Me: -
Twitter : https://twitter.com/saaandh090
Facebook : https://www.facebook.com/sandeep.rout.359
LinkedIn : http://www.linkedin.com/pub/sandeep-rout/39
Google+ : https://plus.google.com/112206647165680165211/
Contact Me:
Email: sandeepr@mindfiresolutions.com
Skype: mfsi_sandeepr
1/2/12
Agenda

Introduction

History

EAV hierarchy structure

Data Retrieve

EAV when to use?

Attribute Set

Pros

Cons Presenter: Sandeep Kumar Rout, Mindfire
Solutions
Date: 20/03/2014
1/2/12
EAV
Entity Attribute Value (EAV) is vertical data
modeling instead of horizontal data modeling
which we regularly use.
In mathematics, this model is known as a
sparse matrix.
EAV is also known as object–attribute–value
model, vertical database model and open
schema.
Presenter: Sandeep Kumar Rout, Mindfire
Solutions
Date: 20/03/2014
1/2/12
EAV History
As a storage method EAV was used in early
object-oriented languages like SIMULA 67.
Functional languages such as LISP have also
use EAV data structure. They contain storage
structures that record object information in
attribute-value pairs – a principle
fundamental to EAV.
Presenter: Sandeep Kumar Rout, Mindfire
Solutions
Date: 20/03/2014
1/2/12
EAV hierarchy structure
EAV hierarchy structure includes these
components:
- Entity : A component with a definitive
existence. Objects are entities. For e.g.
Products, User etc
- Attribute : The fields to which the entities
are related. This are similar to column names
in horizontal data models. Object properties
are attributes
i.e. :- Color, Name, Price etc
Presenter: Sandeep Kumar Rout, Mindfire
Solutions
Date: 20/03/2014
1/2/12
- Value : The value to which entity and
attribute maps to. They are similar to row
value from horizontal database.
Example :- John, $22, blue etc
Presenter: Sandeep Kumar Rout, Mindfire
Solutions
Date: 20/03/2014
1/2/12
Presenter: Sandeep Kumar Rout, Mindfire
Solutions
Date: 20/03/2014
1/2/12
Data Retrieve
Case :-
To get phone no of employee whose id is 1
Basic model :
SELECT phone_no FROM employee WHERE
employee_id = 1;
Presenter: Sandeep Kumar Rout, Mindfire
Solutions
Date: 20/03/2014
1/2/12
Presenter: Sandeep Kumar Rout, Mindfire
Solutions
Date: 20/03/2014
Eav model :
SELECT value FROM employee_int as ei
JOIN employee as e
ON e.employee_id = ei.employee_id
JOIN employee_attribute as ea
ON ea.attribute_id = ei.attribute_id
WHERE e.employee_id = 1 AND
ea.attribute_name = 'phone_no'
1/2/12
EAV when to use?
Presenter: Sandeep Kumar Rout, Mindfire
Solutions
Date: 20/03/2014
Consider a case where there is need to add
new columns or remove new columns on a
regular basis. If using a simple single table it
needs frequent alteration of tables also causes
complexities
With EAV this can be done by simple addition
of a new row in attributes table.
So, generally eav is used in such cases.
1/2/12
Attribute Set
Set of attributes combined to make the entity grouped with
their respective attributes only.
Example :- An online store having books and shirts.
Attributes used by book are different from attributes
used by shirt. So, they can be categorized into attributes
set.
Attribute set Shirt : size, color, price,material, manufacturer
etc
Attribute set Book : pages, author, type of binding,etc
Presenter: Sandeep Kumar Rout, Mindfire
Solutions
Date: 20/03/2014
1/2/12
Pros

Flexible mechanism for attributes to work
with any sort of entities

Scalability – Can change the required data
without changing the structure of database
tables

Independent of hierarchy of data. Less time
to implement Presenter: Sandeep Kumar Rout, Mindfire
Solutions
Date: 20/03/2014
1/2/12
Cons

Performance

EAV don't store value as datatype specific.
Similar type of data are all grouped in one.
As int is generally used to store tinyint,int
etc.

No grouping of entities
Presenter: Sandeep Kumar Rout, Mindfire
Solutions
Date: 20/03/2014
1/2/12
Indexing
This process is used to somehow compensate
the poor performance of EAV structure. It is
not similar to database indexing

This process is time consuming

In this process data from EAV structured
tables are retrieved and store in flat tables

Initially done after all entity types are
generated
Presenter: Sandeep Kumar Rout, Mindfire
Solutions
Date: 20/03/2014
1/2/12

Need to perform this process regularly

Need to be performed on addition, updation
and deletion of data

Makes the data retrieval easier and faster

It completely eliminates old table and
generates new table when re-indexing is
performed.
Presenter: Sandeep Kumar Rout, Mindfire
Solutions
Date: 20/03/2014
Question and Answer
Presenter: Sandeep Kumar Rout, Mindfire
Solutions
Date: 20/03/2014
Thank you
Presenter: Sandeep Kumar Rout, Mindfire
Solutions
Date: 20/03/2014
www.mindfiresolutions.com
https://www.facebook.com/MindfireSolutions
http://www.linkedin.com/company/mindfire-solutions
http://twitter.com/mindfires

More Related Content

What's hot

Generic Graph And Psets
Generic Graph And PsetsGeneric Graph And Psets
Generic Graph And Psets
manishekhar
 
Hadoop Overview kdd2011
Hadoop Overview kdd2011Hadoop Overview kdd2011
Hadoop Overview kdd2011
Milind Bhandarkar
 
A chart of the big data ecosystem
A chart of the big data ecosystemA chart of the big data ecosystem
A chart of the big data ecosystem
Matt Turck
 
DB security
 DB security DB security
DB security
ERSHUBHAM TIWARI
 
3 data modeling using the entity-relationship (er) model
3 data modeling using the entity-relationship (er) model3 data modeling using the entity-relationship (er) model
3 data modeling using the entity-relationship (er) model
Kumar
 
Entity Relationship Diagram
Entity Relationship DiagramEntity Relationship Diagram
Entity Relationship Diagram
Shakila Mahjabin
 
Data models
Data modelsData models
Data models
Anuj Modi
 
Dbms and it infrastructure
Dbms and  it infrastructureDbms and  it infrastructure
Dbms and it infrastructure
projectandppt
 
Text mining
Text miningText mining
Text mining
ThejeswiniChivukula
 
Big data landscape v 3.0 - Matt Turck (FirstMark)
Big data landscape v 3.0 - Matt Turck (FirstMark) Big data landscape v 3.0 - Matt Turck (FirstMark)
Big data landscape v 3.0 - Matt Turck (FirstMark)
Matt Turck
 
Physical Database Design & Performance
Physical Database Design & PerformancePhysical Database Design & Performance
Physical Database Design & Performance
Abdullah Khosa
 
Qualicorp Scales to Millions of Customers and Data Relationships to Provide W...
Qualicorp Scales to Millions of Customers and Data Relationships to Provide W...Qualicorp Scales to Millions of Customers and Data Relationships to Provide W...
Qualicorp Scales to Millions of Customers and Data Relationships to Provide W...
Neo4j
 
Master Data Management
Master Data ManagementMaster Data Management
Master Data Management
Sabir Akhtar
 
Overview and Importance of Data Quality for Machine Learning Tasks
Overview and Importance of Data Quality for Machine Learning TasksOverview and Importance of Data Quality for Machine Learning Tasks
Overview and Importance of Data Quality for Machine Learning Tasks
Hima Patel
 
Overview of Data and Analytics Essentials and Foundations
Overview of Data and Analytics Essentials and FoundationsOverview of Data and Analytics Essentials and Foundations
Overview of Data and Analytics Essentials and Foundations
NUS-ISS
 
Data Preparation Fundamentals
Data Preparation FundamentalsData Preparation Fundamentals
Data Preparation Fundamentals
DATAVERSITY
 
Database Management System
Database Management SystemDatabase Management System
Database Management System
Nishant Munjal
 
Big data.
Big data.Big data.
Big data.
MeganShaw38
 
A Practical-ish Introduction to Data Science
A Practical-ish Introduction to Data ScienceA Practical-ish Introduction to Data Science
A Practical-ish Introduction to Data Science
Mark West
 
WEKA: Data Mining Input Concepts Instances And Attributes
WEKA: Data Mining Input Concepts Instances And AttributesWEKA: Data Mining Input Concepts Instances And Attributes
WEKA: Data Mining Input Concepts Instances And Attributes
DataminingTools Inc
 

What's hot (20)

Generic Graph And Psets
Generic Graph And PsetsGeneric Graph And Psets
Generic Graph And Psets
 
Hadoop Overview kdd2011
Hadoop Overview kdd2011Hadoop Overview kdd2011
Hadoop Overview kdd2011
 
A chart of the big data ecosystem
A chart of the big data ecosystemA chart of the big data ecosystem
A chart of the big data ecosystem
 
DB security
 DB security DB security
DB security
 
3 data modeling using the entity-relationship (er) model
3 data modeling using the entity-relationship (er) model3 data modeling using the entity-relationship (er) model
3 data modeling using the entity-relationship (er) model
 
Entity Relationship Diagram
Entity Relationship DiagramEntity Relationship Diagram
Entity Relationship Diagram
 
Data models
Data modelsData models
Data models
 
Dbms and it infrastructure
Dbms and  it infrastructureDbms and  it infrastructure
Dbms and it infrastructure
 
Text mining
Text miningText mining
Text mining
 
Big data landscape v 3.0 - Matt Turck (FirstMark)
Big data landscape v 3.0 - Matt Turck (FirstMark) Big data landscape v 3.0 - Matt Turck (FirstMark)
Big data landscape v 3.0 - Matt Turck (FirstMark)
 
Physical Database Design & Performance
Physical Database Design & PerformancePhysical Database Design & Performance
Physical Database Design & Performance
 
Qualicorp Scales to Millions of Customers and Data Relationships to Provide W...
Qualicorp Scales to Millions of Customers and Data Relationships to Provide W...Qualicorp Scales to Millions of Customers and Data Relationships to Provide W...
Qualicorp Scales to Millions of Customers and Data Relationships to Provide W...
 
Master Data Management
Master Data ManagementMaster Data Management
Master Data Management
 
Overview and Importance of Data Quality for Machine Learning Tasks
Overview and Importance of Data Quality for Machine Learning TasksOverview and Importance of Data Quality for Machine Learning Tasks
Overview and Importance of Data Quality for Machine Learning Tasks
 
Overview of Data and Analytics Essentials and Foundations
Overview of Data and Analytics Essentials and FoundationsOverview of Data and Analytics Essentials and Foundations
Overview of Data and Analytics Essentials and Foundations
 
Data Preparation Fundamentals
Data Preparation FundamentalsData Preparation Fundamentals
Data Preparation Fundamentals
 
Database Management System
Database Management SystemDatabase Management System
Database Management System
 
Big data.
Big data.Big data.
Big data.
 
A Practical-ish Introduction to Data Science
A Practical-ish Introduction to Data ScienceA Practical-ish Introduction to Data Science
A Practical-ish Introduction to Data Science
 
WEKA: Data Mining Input Concepts Instances And Attributes
WEKA: Data Mining Input Concepts Instances And AttributesWEKA: Data Mining Input Concepts Instances And Attributes
WEKA: Data Mining Input Concepts Instances And Attributes
 

Viewers also liked

Was ist eigentlich EAV?
Was ist eigentlich EAV?Was ist eigentlich EAV?
Was ist eigentlich EAV?
danielnitz
 
Extensible Data Modeling
Extensible Data ModelingExtensible Data Modeling
Extensible Data Modeling
Karwin Software Solutions LLC
 
Entity Attribute Value (Eav)
Entity   Attribute   Value (Eav)Entity   Attribute   Value (Eav)
Entity Attribute Value (Eav)
Tâm
 
Dare to build vertical design with relational data (Entity-Attribute-Value)
Dare to build vertical design with relational data (Entity-Attribute-Value)Dare to build vertical design with relational data (Entity-Attribute-Value)
Dare to build vertical design with relational data (Entity-Attribute-Value)
Ivo Andreev
 
SQL Outer Joins for Fun and Profit
SQL Outer Joins for Fun and ProfitSQL Outer Joins for Fun and Profit
SQL Outer Joins for Fun and Profit
Karwin Software Solutions LLC
 
Implementation of EAV pattern for ActiveRecord models
Implementation of EAV pattern for ActiveRecord modelsImplementation of EAV pattern for ActiveRecord models
Implementation of EAV pattern for ActiveRecord models
Kostyantyn Stepanyuk
 
Practical Object Oriented Models In Sql
Practical Object Oriented Models In SqlPractical Object Oriented Models In Sql
Practical Object Oriented Models In Sql
Karwin Software Solutions LLC
 
Best Practices: Datawarehouse Automation Conference September 20, 2012 - Amst...
Best Practices: Datawarehouse Automation Conference September 20, 2012 - Amst...Best Practices: Datawarehouse Automation Conference September 20, 2012 - Amst...
Best Practices: Datawarehouse Automation Conference September 20, 2012 - Amst...
Erik Fransen
 
Understanding Linked Data via EAV Model based Structured Descriptions
Understanding Linked Data via EAV Model based Structured DescriptionsUnderstanding Linked Data via EAV Model based Structured Descriptions
Understanding Linked Data via EAV Model based Structured Descriptions
Kingsley Uyi Idehen
 
Roland bouman modern_data_warehouse_architectures_data_vault_and_anchor_model...
Roland bouman modern_data_warehouse_architectures_data_vault_and_anchor_model...Roland bouman modern_data_warehouse_architectures_data_vault_and_anchor_model...
Roland bouman modern_data_warehouse_architectures_data_vault_and_anchor_model...
Roland Bouman
 
МиСПИСиТ (литература по курсу)
МиСПИСиТ (литература по курсу)МиСПИСиТ (литература по курсу)
МиСПИСиТ (литература по курсу)
Ural Federal University named after First President of Russia B.N. Yeltsin
 
Sql query patterns, optimized
Sql query patterns, optimizedSql query patterns, optimized
Sql query patterns, optimized
Karwin Software Solutions LLC
 
Modern Data Architecture
Modern Data ArchitectureModern Data Architecture
Modern Data Architecture
Alexey Grishchenko
 
Data warehouse architecture
Data warehouse architectureData warehouse architecture
Data warehouse architecture
pcherukumalla
 
Data Warehouse Design and Best Practices
Data Warehouse Design and Best PracticesData Warehouse Design and Best Practices
Data Warehouse Design and Best Practices
Ivo Andreev
 
Building an Effective Data Warehouse Architecture
Building an Effective Data Warehouse ArchitectureBuilding an Effective Data Warehouse Architecture
Building an Effective Data Warehouse Architecture
James Serra
 

Viewers also liked (17)

Was ist eigentlich EAV?
Was ist eigentlich EAV?Was ist eigentlich EAV?
Was ist eigentlich EAV?
 
Extensible Data Modeling
Extensible Data ModelingExtensible Data Modeling
Extensible Data Modeling
 
Entity Attribute Value (Eav)
Entity   Attribute   Value (Eav)Entity   Attribute   Value (Eav)
Entity Attribute Value (Eav)
 
Dare to build vertical design with relational data (Entity-Attribute-Value)
Dare to build vertical design with relational data (Entity-Attribute-Value)Dare to build vertical design with relational data (Entity-Attribute-Value)
Dare to build vertical design with relational data (Entity-Attribute-Value)
 
SQL Outer Joins for Fun and Profit
SQL Outer Joins for Fun and ProfitSQL Outer Joins for Fun and Profit
SQL Outer Joins for Fun and Profit
 
Implementation of EAV pattern for ActiveRecord models
Implementation of EAV pattern for ActiveRecord modelsImplementation of EAV pattern for ActiveRecord models
Implementation of EAV pattern for ActiveRecord models
 
Practical Object Oriented Models In Sql
Practical Object Oriented Models In SqlPractical Object Oriented Models In Sql
Practical Object Oriented Models In Sql
 
Best Practices: Datawarehouse Automation Conference September 20, 2012 - Amst...
Best Practices: Datawarehouse Automation Conference September 20, 2012 - Amst...Best Practices: Datawarehouse Automation Conference September 20, 2012 - Amst...
Best Practices: Datawarehouse Automation Conference September 20, 2012 - Amst...
 
Understanding Linked Data via EAV Model based Structured Descriptions
Understanding Linked Data via EAV Model based Structured DescriptionsUnderstanding Linked Data via EAV Model based Structured Descriptions
Understanding Linked Data via EAV Model based Structured Descriptions
 
Roland bouman modern_data_warehouse_architectures_data_vault_and_anchor_model...
Roland bouman modern_data_warehouse_architectures_data_vault_and_anchor_model...Roland bouman modern_data_warehouse_architectures_data_vault_and_anchor_model...
Roland bouman modern_data_warehouse_architectures_data_vault_and_anchor_model...
 
МиСПИСиТ (литература по курсу)
МиСПИСиТ (литература по курсу)МиСПИСиТ (литература по курсу)
МиСПИСиТ (литература по курсу)
 
Sql query patterns, optimized
Sql query patterns, optimizedSql query patterns, optimized
Sql query patterns, optimized
 
лекция 6
лекция 6лекция 6
лекция 6
 
Modern Data Architecture
Modern Data ArchitectureModern Data Architecture
Modern Data Architecture
 
Data warehouse architecture
Data warehouse architectureData warehouse architecture
Data warehouse architecture
 
Data Warehouse Design and Best Practices
Data Warehouse Design and Best PracticesData Warehouse Design and Best Practices
Data Warehouse Design and Best Practices
 
Building an Effective Data Warehouse Architecture
Building an Effective Data Warehouse ArchitectureBuilding an Effective Data Warehouse Architecture
Building an Effective Data Warehouse Architecture
 

Similar to Eav Data Model Concepts

Amarpal
AmarpalAmarpal
Amarpal
Amar Pal
 
Karthilkeyan-Updated Resume
Karthilkeyan-Updated ResumeKarthilkeyan-Updated Resume
Karthilkeyan-Updated Resume
karthikeyan Engr.Karthikeyan86
 
Nitesh resume
Nitesh resumeNitesh resume
Nitesh resume
Nitesh Rav
 
Predictive Analytics & Business Insights
Predictive Analytics & Business InsightsPredictive Analytics & Business Insights
Predictive Analytics & Business Insights
June Andrews
 
Software development with scrum methodology bhawani nandan prasad
Software development with scrum methodology   bhawani nandan prasadSoftware development with scrum methodology   bhawani nandan prasad
Software development with scrum methodology bhawani nandan prasad
Bhawani N Prasad
 
Big Data Analytics
Big Data AnalyticsBig Data Analytics
Big Data Analytics
Osman Ali
 
Naveen_MSBI_Senior_Developer
Naveen_MSBI_Senior_DeveloperNaveen_MSBI_Senior_Developer
Naveen_MSBI_Senior_Developer
Naveen Meti
 
Naveen_MSBI_Senior_Developer
Naveen_MSBI_Senior_DeveloperNaveen_MSBI_Senior_Developer
Naveen_MSBI_Senior_Developer
Naveen Meti
 
Review on Sentiment Analysis on Customer Reviews
Review on Sentiment Analysis on Customer ReviewsReview on Sentiment Analysis on Customer Reviews
Review on Sentiment Analysis on Customer Reviews
IRJET Journal
 
Best practices for getting started and driving adoption with tableau
Best practices for getting started and driving adoption with tableauBest practices for getting started and driving adoption with tableau
Best practices for getting started and driving adoption with tableau
Alan Morte
 
Mdm introduction
Mdm introductionMdm introduction
Mdm introduction
Nagesh Slj
 
Vatsal b shah
Vatsal b shahVatsal b shah
Vatsal b shah
Vatsal Shah
 
Mahavir Jain
Mahavir JainMahavir Jain
Mahavir Jain
mahavir jain
 
Effective Instrumentation Strategies for Data-driven Product Management
 Effective Instrumentation Strategies for Data-driven Product Management  Effective Instrumentation Strategies for Data-driven Product Management
Effective Instrumentation Strategies for Data-driven Product Management
Pawan Kumar Adda
 
Amod_MCA_M.tech_EXPERT IN CA Security tool _total 9Years+_Exp (2)
Amod_MCA_M.tech_EXPERT IN CA Security tool _total   9Years+_Exp (2)Amod_MCA_M.tech_EXPERT IN CA Security tool _total   9Years+_Exp (2)
Amod_MCA_M.tech_EXPERT IN CA Security tool _total 9Years+_Exp (2)
Amod Upadhyay
 
System Analysis & Design Report on Summer Training System
System Analysis & Design Report on Summer Training SystemSystem Analysis & Design Report on Summer Training System
System Analysis & Design Report on Summer Training System
thededar
 
Resume
ResumeResume
Evidence driven development - a lean methodology to product development
Evidence driven development - a lean methodology to product developmentEvidence driven development - a lean methodology to product development
Evidence driven development - a lean methodology to product development
Joshuah Vincent
 
Online Learning Management System and Analytics using Deep Learning
Online Learning Management System and Analytics using Deep LearningOnline Learning Management System and Analytics using Deep Learning
Online Learning Management System and Analytics using Deep Learning
Dr. Amarjeet Singh
 
Real time insights for better products, customer experience and resilient pla...
Real time insights for better products, customer experience and resilient pla...Real time insights for better products, customer experience and resilient pla...
Real time insights for better products, customer experience and resilient pla...
Balvinder Hira
 

Similar to Eav Data Model Concepts (20)

Amarpal
AmarpalAmarpal
Amarpal
 
Karthilkeyan-Updated Resume
Karthilkeyan-Updated ResumeKarthilkeyan-Updated Resume
Karthilkeyan-Updated Resume
 
Nitesh resume
Nitesh resumeNitesh resume
Nitesh resume
 
Predictive Analytics & Business Insights
Predictive Analytics & Business InsightsPredictive Analytics & Business Insights
Predictive Analytics & Business Insights
 
Software development with scrum methodology bhawani nandan prasad
Software development with scrum methodology   bhawani nandan prasadSoftware development with scrum methodology   bhawani nandan prasad
Software development with scrum methodology bhawani nandan prasad
 
Big Data Analytics
Big Data AnalyticsBig Data Analytics
Big Data Analytics
 
Naveen_MSBI_Senior_Developer
Naveen_MSBI_Senior_DeveloperNaveen_MSBI_Senior_Developer
Naveen_MSBI_Senior_Developer
 
Naveen_MSBI_Senior_Developer
Naveen_MSBI_Senior_DeveloperNaveen_MSBI_Senior_Developer
Naveen_MSBI_Senior_Developer
 
Review on Sentiment Analysis on Customer Reviews
Review on Sentiment Analysis on Customer ReviewsReview on Sentiment Analysis on Customer Reviews
Review on Sentiment Analysis on Customer Reviews
 
Best practices for getting started and driving adoption with tableau
Best practices for getting started and driving adoption with tableauBest practices for getting started and driving adoption with tableau
Best practices for getting started and driving adoption with tableau
 
Mdm introduction
Mdm introductionMdm introduction
Mdm introduction
 
Vatsal b shah
Vatsal b shahVatsal b shah
Vatsal b shah
 
Mahavir Jain
Mahavir JainMahavir Jain
Mahavir Jain
 
Effective Instrumentation Strategies for Data-driven Product Management
 Effective Instrumentation Strategies for Data-driven Product Management  Effective Instrumentation Strategies for Data-driven Product Management
Effective Instrumentation Strategies for Data-driven Product Management
 
Amod_MCA_M.tech_EXPERT IN CA Security tool _total 9Years+_Exp (2)
Amod_MCA_M.tech_EXPERT IN CA Security tool _total   9Years+_Exp (2)Amod_MCA_M.tech_EXPERT IN CA Security tool _total   9Years+_Exp (2)
Amod_MCA_M.tech_EXPERT IN CA Security tool _total 9Years+_Exp (2)
 
System Analysis & Design Report on Summer Training System
System Analysis & Design Report on Summer Training SystemSystem Analysis & Design Report on Summer Training System
System Analysis & Design Report on Summer Training System
 
Resume
ResumeResume
Resume
 
Evidence driven development - a lean methodology to product development
Evidence driven development - a lean methodology to product developmentEvidence driven development - a lean methodology to product development
Evidence driven development - a lean methodology to product development
 
Online Learning Management System and Analytics using Deep Learning
Online Learning Management System and Analytics using Deep LearningOnline Learning Management System and Analytics using Deep Learning
Online Learning Management System and Analytics using Deep Learning
 
Real time insights for better products, customer experience and resilient pla...
Real time insights for better products, customer experience and resilient pla...Real time insights for better products, customer experience and resilient pla...
Real time insights for better products, customer experience and resilient pla...
 

More from Mindfire Solutions

Physician Search and Review
Physician Search and ReviewPhysician Search and Review
Physician Search and Review
Mindfire Solutions
 
diet management app
diet management appdiet management app
diet management app
Mindfire Solutions
 
Business Technology Solution
Business Technology SolutionBusiness Technology Solution
Business Technology Solution
Mindfire Solutions
 
Remote Health Monitoring
Remote Health MonitoringRemote Health Monitoring
Remote Health Monitoring
Mindfire Solutions
 
Influencer Marketing Solution
Influencer Marketing SolutionInfluencer Marketing Solution
Influencer Marketing Solution
Mindfire Solutions
 
ELMAH
ELMAHELMAH
High Availability of Azure Applications
High Availability of Azure ApplicationsHigh Availability of Azure Applications
High Availability of Azure Applications
Mindfire Solutions
 
IOT Hands On
IOT Hands OnIOT Hands On
IOT Hands On
Mindfire Solutions
 
Glimpse of Loops Vs Set
Glimpse of Loops Vs SetGlimpse of Loops Vs Set
Glimpse of Loops Vs Set
Mindfire Solutions
 
Oracle Sql Developer-Getting Started
Oracle Sql Developer-Getting StartedOracle Sql Developer-Getting Started
Oracle Sql Developer-Getting Started
Mindfire Solutions
 
Adaptive Layout In iOS 8
Adaptive Layout In iOS 8Adaptive Layout In iOS 8
Adaptive Layout In iOS 8
Mindfire Solutions
 
Introduction to Auto-layout : iOS/Mac
Introduction to Auto-layout : iOS/MacIntroduction to Auto-layout : iOS/Mac
Introduction to Auto-layout : iOS/Mac
Mindfire Solutions
 
LINQPad - utility Tool
LINQPad - utility ToolLINQPad - utility Tool
LINQPad - utility Tool
Mindfire Solutions
 
Get started with watch kit development
Get started with watch kit developmentGet started with watch kit development
Get started with watch kit development
Mindfire Solutions
 
Swift vs Objective-C
Swift vs Objective-CSwift vs Objective-C
Swift vs Objective-C
Mindfire Solutions
 
Material Design in Android
Material Design in AndroidMaterial Design in Android
Material Design in Android
Mindfire Solutions
 
Introduction to OData
Introduction to ODataIntroduction to OData
Introduction to OData
Mindfire Solutions
 
Ext js Part 2- MVC
Ext js Part 2- MVCExt js Part 2- MVC
Ext js Part 2- MVC
Mindfire Solutions
 
ExtJs Basic Part-1
ExtJs Basic Part-1ExtJs Basic Part-1
ExtJs Basic Part-1
Mindfire Solutions
 
Spring Security Introduction
Spring Security IntroductionSpring Security Introduction
Spring Security Introduction
Mindfire Solutions
 

More from Mindfire Solutions (20)

Physician Search and Review
Physician Search and ReviewPhysician Search and Review
Physician Search and Review
 
diet management app
diet management appdiet management app
diet management app
 
Business Technology Solution
Business Technology SolutionBusiness Technology Solution
Business Technology Solution
 
Remote Health Monitoring
Remote Health MonitoringRemote Health Monitoring
Remote Health Monitoring
 
Influencer Marketing Solution
Influencer Marketing SolutionInfluencer Marketing Solution
Influencer Marketing Solution
 
ELMAH
ELMAHELMAH
ELMAH
 
High Availability of Azure Applications
High Availability of Azure ApplicationsHigh Availability of Azure Applications
High Availability of Azure Applications
 
IOT Hands On
IOT Hands OnIOT Hands On
IOT Hands On
 
Glimpse of Loops Vs Set
Glimpse of Loops Vs SetGlimpse of Loops Vs Set
Glimpse of Loops Vs Set
 
Oracle Sql Developer-Getting Started
Oracle Sql Developer-Getting StartedOracle Sql Developer-Getting Started
Oracle Sql Developer-Getting Started
 
Adaptive Layout In iOS 8
Adaptive Layout In iOS 8Adaptive Layout In iOS 8
Adaptive Layout In iOS 8
 
Introduction to Auto-layout : iOS/Mac
Introduction to Auto-layout : iOS/MacIntroduction to Auto-layout : iOS/Mac
Introduction to Auto-layout : iOS/Mac
 
LINQPad - utility Tool
LINQPad - utility ToolLINQPad - utility Tool
LINQPad - utility Tool
 
Get started with watch kit development
Get started with watch kit developmentGet started with watch kit development
Get started with watch kit development
 
Swift vs Objective-C
Swift vs Objective-CSwift vs Objective-C
Swift vs Objective-C
 
Material Design in Android
Material Design in AndroidMaterial Design in Android
Material Design in Android
 
Introduction to OData
Introduction to ODataIntroduction to OData
Introduction to OData
 
Ext js Part 2- MVC
Ext js Part 2- MVCExt js Part 2- MVC
Ext js Part 2- MVC
 
ExtJs Basic Part-1
ExtJs Basic Part-1ExtJs Basic Part-1
ExtJs Basic Part-1
 
Spring Security Introduction
Spring Security IntroductionSpring Security Introduction
Spring Security Introduction
 

Recently uploaded

Microservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we workMicroservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we work
Sven Peters
 
Unveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdfUnveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdf
brainerhub1
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
Aftab Hussain
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
Aftab Hussain
 
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian CompaniesE-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
Quickdice ERP
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
timtebeek1
 
How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?
ToXSL Technologies
 
Oracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptxOracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptx
Remote DBA Services
 
Requirement Traceability in Xen Functional Safety
Requirement Traceability in Xen Functional SafetyRequirement Traceability in Xen Functional Safety
Requirement Traceability in Xen Functional Safety
Ayan Halder
 
Transform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR SolutionsTransform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR Solutions
TheSMSPoint
 
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
kalichargn70th171
 
Hand Rolled Applicative User Validation Code Kata
Hand Rolled Applicative User ValidationCode KataHand Rolled Applicative User ValidationCode Kata
Hand Rolled Applicative User Validation Code Kata
Philip Schwarz
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
Łukasz Chruściel
 
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
mz5nrf0n
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
Deuglo Infosystem Pvt Ltd
 
UI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design SystemUI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design System
Peter Muessig
 
What is Master Data Management by PiLog Group
What is Master Data Management by PiLog GroupWhat is Master Data Management by PiLog Group
What is Master Data Management by PiLog Group
aymanquadri279
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
Hornet Dynamics
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 
socradar-q1-2024-aviation-industry-report.pdf
socradar-q1-2024-aviation-industry-report.pdfsocradar-q1-2024-aviation-industry-report.pdf
socradar-q1-2024-aviation-industry-report.pdf
SOCRadar
 

Recently uploaded (20)

Microservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we workMicroservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we work
 
Unveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdfUnveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdf
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
 
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian CompaniesE-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
 
How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?
 
Oracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptxOracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptx
 
Requirement Traceability in Xen Functional Safety
Requirement Traceability in Xen Functional SafetyRequirement Traceability in Xen Functional Safety
Requirement Traceability in Xen Functional Safety
 
Transform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR SolutionsTransform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR Solutions
 
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
 
Hand Rolled Applicative User Validation Code Kata
Hand Rolled Applicative User ValidationCode KataHand Rolled Applicative User ValidationCode Kata
Hand Rolled Applicative User Validation Code Kata
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
 
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
 
UI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design SystemUI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design System
 
What is Master Data Management by PiLog Group
What is Master Data Management by PiLog GroupWhat is Master Data Management by PiLog Group
What is Master Data Management by PiLog Group
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 
socradar-q1-2024-aviation-industry-report.pdf
socradar-q1-2024-aviation-industry-report.pdfsocradar-q1-2024-aviation-industry-report.pdf
socradar-q1-2024-aviation-industry-report.pdf
 

Eav Data Model Concepts

  • 1. EAV data model Presenter: Sandeep Kumar Rout, Mindfire Solutions Date: 20/03/2014
  • 2. 1/2/12 Presenter: Sandeep Kumar Rout, Mindfire Solutions Date: 20/03/2014 About Me M70 101 – Magento Certified Developer Skills: PHP, Magento, SugarCRM, CakePHP, oSCommerce, CodeIgniter Connect Me: - Twitter : https://twitter.com/saaandh090 Facebook : https://www.facebook.com/sandeep.rout.359 LinkedIn : http://www.linkedin.com/pub/sandeep-rout/39 Google+ : https://plus.google.com/112206647165680165211/ Contact Me: Email: sandeepr@mindfiresolutions.com Skype: mfsi_sandeepr
  • 3. 1/2/12 Agenda  Introduction  History  EAV hierarchy structure  Data Retrieve  EAV when to use?  Attribute Set  Pros  Cons Presenter: Sandeep Kumar Rout, Mindfire Solutions Date: 20/03/2014
  • 4. 1/2/12 EAV Entity Attribute Value (EAV) is vertical data modeling instead of horizontal data modeling which we regularly use. In mathematics, this model is known as a sparse matrix. EAV is also known as object–attribute–value model, vertical database model and open schema. Presenter: Sandeep Kumar Rout, Mindfire Solutions Date: 20/03/2014
  • 5. 1/2/12 EAV History As a storage method EAV was used in early object-oriented languages like SIMULA 67. Functional languages such as LISP have also use EAV data structure. They contain storage structures that record object information in attribute-value pairs – a principle fundamental to EAV. Presenter: Sandeep Kumar Rout, Mindfire Solutions Date: 20/03/2014
  • 6. 1/2/12 EAV hierarchy structure EAV hierarchy structure includes these components: - Entity : A component with a definitive existence. Objects are entities. For e.g. Products, User etc - Attribute : The fields to which the entities are related. This are similar to column names in horizontal data models. Object properties are attributes i.e. :- Color, Name, Price etc Presenter: Sandeep Kumar Rout, Mindfire Solutions Date: 20/03/2014
  • 7. 1/2/12 - Value : The value to which entity and attribute maps to. They are similar to row value from horizontal database. Example :- John, $22, blue etc Presenter: Sandeep Kumar Rout, Mindfire Solutions Date: 20/03/2014
  • 8. 1/2/12 Presenter: Sandeep Kumar Rout, Mindfire Solutions Date: 20/03/2014
  • 9. 1/2/12 Data Retrieve Case :- To get phone no of employee whose id is 1 Basic model : SELECT phone_no FROM employee WHERE employee_id = 1; Presenter: Sandeep Kumar Rout, Mindfire Solutions Date: 20/03/2014
  • 10. 1/2/12 Presenter: Sandeep Kumar Rout, Mindfire Solutions Date: 20/03/2014 Eav model : SELECT value FROM employee_int as ei JOIN employee as e ON e.employee_id = ei.employee_id JOIN employee_attribute as ea ON ea.attribute_id = ei.attribute_id WHERE e.employee_id = 1 AND ea.attribute_name = 'phone_no'
  • 11. 1/2/12 EAV when to use? Presenter: Sandeep Kumar Rout, Mindfire Solutions Date: 20/03/2014 Consider a case where there is need to add new columns or remove new columns on a regular basis. If using a simple single table it needs frequent alteration of tables also causes complexities With EAV this can be done by simple addition of a new row in attributes table. So, generally eav is used in such cases.
  • 12. 1/2/12 Attribute Set Set of attributes combined to make the entity grouped with their respective attributes only. Example :- An online store having books and shirts. Attributes used by book are different from attributes used by shirt. So, they can be categorized into attributes set. Attribute set Shirt : size, color, price,material, manufacturer etc Attribute set Book : pages, author, type of binding,etc Presenter: Sandeep Kumar Rout, Mindfire Solutions Date: 20/03/2014
  • 13. 1/2/12 Pros  Flexible mechanism for attributes to work with any sort of entities  Scalability – Can change the required data without changing the structure of database tables  Independent of hierarchy of data. Less time to implement Presenter: Sandeep Kumar Rout, Mindfire Solutions Date: 20/03/2014
  • 14. 1/2/12 Cons  Performance  EAV don't store value as datatype specific. Similar type of data are all grouped in one. As int is generally used to store tinyint,int etc.  No grouping of entities Presenter: Sandeep Kumar Rout, Mindfire Solutions Date: 20/03/2014
  • 15. 1/2/12 Indexing This process is used to somehow compensate the poor performance of EAV structure. It is not similar to database indexing  This process is time consuming  In this process data from EAV structured tables are retrieved and store in flat tables  Initially done after all entity types are generated Presenter: Sandeep Kumar Rout, Mindfire Solutions Date: 20/03/2014
  • 16. 1/2/12  Need to perform this process regularly  Need to be performed on addition, updation and deletion of data  Makes the data retrieval easier and faster  It completely eliminates old table and generates new table when re-indexing is performed. Presenter: Sandeep Kumar Rout, Mindfire Solutions Date: 20/03/2014
  • 17. Question and Answer Presenter: Sandeep Kumar Rout, Mindfire Solutions Date: 20/03/2014
  • 18. Thank you Presenter: Sandeep Kumar Rout, Mindfire Solutions Date: 20/03/2014