SlideShare a Scribd company logo
Hybris Data Modeling
(Presented as part of the ‘Hybris Hackathon Workshop Series’ - December 2014)
Hybris Hackathon - Data Modeling
More About RazorfishNeev
• Publicis Groupe announced Neev acquisition in April 2013.
• Executed 200+ projects over last 10 years.
• Full Product/Application Lifecycle capabilities.
• Strong skills around Web, Mobile and Cloud technologies primarily in Java and other
Open Source products/frameworks.
• Strong culture of innovation and problem solving.
• Ability to provide 24X7 services.
• Ability to execute deliver under tight timelines; most projects use Agile methodology.
School
Students
Teachers
Marks
Hotel
Food items
Employees
Expenditure
• A process of creating database structure and analysing it for meeting the project requirements.
What is Data Modeling?
Example 1:
Example 2:
▪ Tables creation
▪ Relation between tables
System Id Employee Id Issue Date
INBLRNEEV248 60570 Jan 2014
System Id RAM
Hard Disk
Capacity
INBLRNEEV248 16 gb 320 gb
Employee Id Employee Name Designation
60570 Raghav Desu Hybris Dev
INBLRNEEV248 – Raghav – Jan 2014
Raghav – 60570 – jan 2014 – Hybris developer
Inblrneev248 – 16gb ram – 320 gb harddisk
Why Data Modeling?
Unstructured Data Structured Data
Data Modeling in Hybris
• Hybris Data Modeling is the answer to questions like, “How Hybris is going to
handle the database?” or “how can we create new tables or entire database in
Hybris?”
• Hybris data modeling helps you in developing your database.
• Hybris data modeling can take care of the database connections and database
queries.
• Hybris will take care of deploying a table in Database, altering it and updating it
with new records.
• Hybris service layer provides all services for database handling.
Items.xml: File used for data modelling.
Item types: Creating Tables
Relation types: Creating relation between the tables
Atomic types: Atomic Types
Enum types: Enums
Map types: Maps
Collection types: Collections
Type System in Hybris
Type System
Data Modeling in Hybris is designed with the help of Type System in Hybris
The Hybris Type system supports the following types.
Each type has its own significance in the type system .
Source: Hybris Wiki
<atomictypes>
<atomictype class="java.lang.Object" autocreate="true" generate="false"/>
<atomictype class="java.lang.Boolean" extends="java.lang.Object"
autocreate="true" generate="false"/>
<atomictype class="java.lang.Double" extends="java.lang.Number"
autocreate="true" generate="false"/>
<atomictype class="java.lang.String" extends="java.lang.Object"
autocreate="true" generate="false"/>
</atomictypes>
Core-items.xml
Atomic Types
Atomic Types are basic types in Hybris which will have Java number and string object types, such as
java.lang.Integer or java.lang.String
Item Types
• Item Types are foundation for the
Hybris Type System.
• Item Types are responsible for
creating new tables or updating the
existing tables.
• The table structure is configured over
this type with the help of attributes.
• Each attribute in Item type definition
will represent a column in the table.
<itemtype code="Customer“ extends="User"
jaloclass="de.hybris.platform.jalo.user.Customer"
autocreate="true“ generate="true">
<attributes>
<attribute autocreate="true"
qualifier="customerID"
type="java.lang.String">
<modifiers read="true" write="true"
search="true"
optional="true"/>
<persistence type="property"/>
</attribute>
</attributes>
</itemtype>
<relation code="Country2RegionRelation" generate="true" localized="false" autocreate="true">
<sourceElement type="Country" qualifier="country" cardinality="one">
<modifiers read="true" write="true" search="true" optional="false"
unique="true"/>
</sourceElement>
<targetElement type="Region" qualifier="regions" cardinality="many">
<modifiers read="true" write="true" search="true" partof="true"/>
</targetElement>
</relation>
Relation Types
Relation Types creates link between tables. For e.g.: Country and regions are linked together, where
the link is created with the help of relation types.
Enumeration Types
<enumtype code="CreditCardType" autocreate="true"
generate="true">
<value code="amex"/>
<value code="visa"/>
<value code="master"/>
<value code="diners"/>
</enumtype>
Enumeration Types represent the enumeration in Java. These are used for preparing particular set of
values. For e.g. : Days in a week or months in a year.
Collection Types
Collection Types are the types which represent group of element types like a group of products or a group
of customers.
<collectiontype code="ProductCollection" elementtype="Product" autocreate="true" generate="true"/>
<collectiontype code="LanguageList" elementtype="Language" autocreate="true" generate="true"
type="list"/>
<collectiontype code="LanguageSet" elementtype="Language" autocreate="true" generate="true"
type="set"/>
<maptype code="localized:java.lang.String“ argumenttype="Language“
returntype="java.lang.String“ autocreate="true“ generate="false"/>
Map Types
• Map Types used to store key value pairs in Hybris. Each key will represent its own
value.
• For e.g. : The localized fields require separate value for each language.
For Example:
<attribute autocreate="true" qualifier="name"
type="localized:java.lang.String">
<modifiers read="true" write="true" search="true"
optional="true"/>
</attribute>
<deployment table="Products" typecode="1" />
• Table creation
• Ancestors attributes
• Default extend for all tables, if no deployment
Deployment
• commons extension (132xx)
• print extension (234xx,239xx)
• processing extension (327xx)
• Legacy xprint extension (244xx,245xx)
• b2bcommerce extension (100xx)
Hybris Conventions for Deployment Codes
• In Hybris, the table deployment in database is defined by deployment tag.
• If we add a deployment tag to Item type definition, it will isolate that table from its parent table and
deploy separately.
• If we don’t add deployment to it, it will deploy Item type along with its parent table.
• Hybris supports updating the existing table (adding new columns, re-declaring the columns) and
creating own tables.
• Ant all
• Ant clean all
How it Works?
Source: Hybris Wiki
Features
Multi Database Support:
<attribute type="localized:java.lang.String"
qualifier="content">
<persistence type="property">
<columntype database="oracle">
<value>varchar2(4000)</value>
</columntype>
<columntype database="mysql">
<value>text</value>
</columntype>
<columntype
database="sqlserver">
<value>nvarchar(max)</value>
</columntype>
<columntype database="hsqldb">
<value>LONGVARCHAR</value>
</columntype>
</persistence>
</attribute>
Tenants allow customizing:
• currency
• currency format
• date format
Kinds of Tenants
Creating New Tenants
installed.tenants=junit,foo,t1,t2
Local_tenant_junit.properties
db.tableprefix=myjunit_
Multi Tenant Support
Source: Hybris Wiki
Features
Dynamic Attributes:
Dynamic Enums:
<enumtype code="CreditCardType" autocreate="true"
generate="true“ dynamic=“true”>
<value code="amex"/>
<value code="visa"/>
<value code="master"/>
<value code="diners"/>
</enumtype>
<persistence type="dynamic" attributeHandler="dynamicAttributesProdCatTimeRanges"/>
implements DynamicAttributeHandler<attributeType, ItemType>
Features
References
• https://wiki.hybris.com/display/release5/items.xml
• https://wiki.hybris.com/display/release5/Type+System+Documentation
• https://wiki.hybris.com/display/release5/Dynamic+Attributes
• https://wiki.hybris.com/display/release5/Specifying+a+Deployment+for+hybris+Platform+Types
Our Top Customers
We partner with the best...
The Razorfish India Edge
– End-to-end consultative approach for software solutions through needs assessment, process consulting
and strategic advice.
– Internal QMS are ISO 9001-2008 certified and CMM level 3 compliant.
– Continuous process and service level improvements through deployment of best-of-breed processes and
technologies.
– International Standards and best practices on Project Management including PMI, ISO and Prince-2.
– Proven EDC Model of delivery to provide predictable results.
– Scrum based Agile development methodology.
Contact us
India - Bangalore
The Estate, # 121,
6th Floor,
Dickenson Road
Bangalore - 560042
Phone :+91-80-25594416
India - Gurgaon
90 D, Sector 18, Udyog
Vihar Phase 5,
Gurgaon -122015
Phone: 91-98 1101 5736
16th Floor, Urmi Estate,
Ganapatrao Kadam Marg,
Mumbai - 400013
Phone: +91-9811015736
India - Mumbai
For more info on our offerings, visit www.neevtech.com
Reach out | sales@neevtech.com

More Related Content

What's hot

Real-time Stream Processing with Apache Flink
Real-time Stream Processing with Apache FlinkReal-time Stream Processing with Apache Flink
Real-time Stream Processing with Apache Flink
DataWorks Summit
 
Real Time Data Processing Using AWS Lambda
Real Time Data Processing Using AWS LambdaReal Time Data Processing Using AWS Lambda
Real Time Data Processing Using AWS Lambda
Amazon Web Services
 
Big Data Redis Mongodb Dynamodb Sharding
Big Data Redis Mongodb Dynamodb ShardingBig Data Redis Mongodb Dynamodb Sharding
Big Data Redis Mongodb Dynamodb Sharding
Araf Karsh Hamid
 
Flink vs. Spark
Flink vs. SparkFlink vs. Spark
Flink vs. Spark
Slim Baltagi
 
Real-time Analytics with Upsert Using Apache Kafka and Apache Pinot | Yupeng ...
Real-time Analytics with Upsert Using Apache Kafka and Apache Pinot | Yupeng ...Real-time Analytics with Upsert Using Apache Kafka and Apache Pinot | Yupeng ...
Real-time Analytics with Upsert Using Apache Kafka and Apache Pinot | Yupeng ...
HostedbyConfluent
 
Flexible and Real-Time Stream Processing with Apache Flink
Flexible and Real-Time Stream Processing with Apache FlinkFlexible and Real-Time Stream Processing with Apache Flink
Flexible and Real-Time Stream Processing with Apache Flink
DataWorks Summit
 
Real-time Analytics with Presto and Apache Pinot
Real-time Analytics with Presto and Apache PinotReal-time Analytics with Presto and Apache Pinot
Real-time Analytics with Presto and Apache Pinot
Xiang Fu
 
[DSC Europe 22] Overview of the Databricks Platform - Petar Zecevic
[DSC Europe 22] Overview of the Databricks Platform - Petar Zecevic[DSC Europe 22] Overview of the Databricks Platform - Petar Zecevic
[DSC Europe 22] Overview of the Databricks Platform - Petar Zecevic
DataScienceConferenc1
 
Data infrastructure at Facebook
Data infrastructure at Facebook Data infrastructure at Facebook
Data infrastructure at Facebook
AhmedDoukh
 
Serverless Kafka and Spark in a Multi-Cloud Lakehouse Architecture
Serverless Kafka and Spark in a Multi-Cloud Lakehouse ArchitectureServerless Kafka and Spark in a Multi-Cloud Lakehouse Architecture
Serverless Kafka and Spark in a Multi-Cloud Lakehouse Architecture
Kai Wähner
 
Productizing Structured Streaming Jobs
Productizing Structured Streaming JobsProductizing Structured Streaming Jobs
Productizing Structured Streaming Jobs
Databricks
 
SAP HANA Database
SAP HANA DatabaseSAP HANA Database
SAP HANA Database
Mayuree Srikulwong
 
Differentiate Big Data vs Data Warehouse use cases for a cloud solution
Differentiate Big Data vs Data Warehouse use cases for a cloud solutionDifferentiate Big Data vs Data Warehouse use cases for a cloud solution
Differentiate Big Data vs Data Warehouse use cases for a cloud solution
James Serra
 
DevNation Live: Kafka and Debezium
DevNation Live: Kafka and DebeziumDevNation Live: Kafka and Debezium
DevNation Live: Kafka and Debezium
Red Hat Developers
 
Introducing Databricks Delta
Introducing Databricks DeltaIntroducing Databricks Delta
Introducing Databricks Delta
Databricks
 
Stream processing with Apache Flink (Timo Walther - Ververica)
Stream processing with Apache Flink (Timo Walther - Ververica)Stream processing with Apache Flink (Timo Walther - Ververica)
Stream processing with Apache Flink (Timo Walther - Ververica)
KafkaZone
 
Metabase
MetabaseMetabase
Metabase
Wagner Alves
 
Open Metadata and Governance with Apache Atlas
Open Metadata and Governance with Apache AtlasOpen Metadata and Governance with Apache Atlas
Open Metadata and Governance with Apache Atlas
DataWorks Summit
 
Real-Life Use Cases & Architectures for Event Streaming with Apache Kafka
Real-Life Use Cases & Architectures for Event Streaming with Apache KafkaReal-Life Use Cases & Architectures for Event Streaming with Apache Kafka
Real-Life Use Cases & Architectures for Event Streaming with Apache Kafka
Kai Wähner
 
Scalable Monitoring Using Apache Spark and Friends with Utkarsh Bhatnagar
Scalable Monitoring Using Apache Spark and Friends with Utkarsh BhatnagarScalable Monitoring Using Apache Spark and Friends with Utkarsh Bhatnagar
Scalable Monitoring Using Apache Spark and Friends with Utkarsh Bhatnagar
Databricks
 

What's hot (20)

Real-time Stream Processing with Apache Flink
Real-time Stream Processing with Apache FlinkReal-time Stream Processing with Apache Flink
Real-time Stream Processing with Apache Flink
 
Real Time Data Processing Using AWS Lambda
Real Time Data Processing Using AWS LambdaReal Time Data Processing Using AWS Lambda
Real Time Data Processing Using AWS Lambda
 
Big Data Redis Mongodb Dynamodb Sharding
Big Data Redis Mongodb Dynamodb ShardingBig Data Redis Mongodb Dynamodb Sharding
Big Data Redis Mongodb Dynamodb Sharding
 
Flink vs. Spark
Flink vs. SparkFlink vs. Spark
Flink vs. Spark
 
Real-time Analytics with Upsert Using Apache Kafka and Apache Pinot | Yupeng ...
Real-time Analytics with Upsert Using Apache Kafka and Apache Pinot | Yupeng ...Real-time Analytics with Upsert Using Apache Kafka and Apache Pinot | Yupeng ...
Real-time Analytics with Upsert Using Apache Kafka and Apache Pinot | Yupeng ...
 
Flexible and Real-Time Stream Processing with Apache Flink
Flexible and Real-Time Stream Processing with Apache FlinkFlexible and Real-Time Stream Processing with Apache Flink
Flexible and Real-Time Stream Processing with Apache Flink
 
Real-time Analytics with Presto and Apache Pinot
Real-time Analytics with Presto and Apache PinotReal-time Analytics with Presto and Apache Pinot
Real-time Analytics with Presto and Apache Pinot
 
[DSC Europe 22] Overview of the Databricks Platform - Petar Zecevic
[DSC Europe 22] Overview of the Databricks Platform - Petar Zecevic[DSC Europe 22] Overview of the Databricks Platform - Petar Zecevic
[DSC Europe 22] Overview of the Databricks Platform - Petar Zecevic
 
Data infrastructure at Facebook
Data infrastructure at Facebook Data infrastructure at Facebook
Data infrastructure at Facebook
 
Serverless Kafka and Spark in a Multi-Cloud Lakehouse Architecture
Serverless Kafka and Spark in a Multi-Cloud Lakehouse ArchitectureServerless Kafka and Spark in a Multi-Cloud Lakehouse Architecture
Serverless Kafka and Spark in a Multi-Cloud Lakehouse Architecture
 
Productizing Structured Streaming Jobs
Productizing Structured Streaming JobsProductizing Structured Streaming Jobs
Productizing Structured Streaming Jobs
 
SAP HANA Database
SAP HANA DatabaseSAP HANA Database
SAP HANA Database
 
Differentiate Big Data vs Data Warehouse use cases for a cloud solution
Differentiate Big Data vs Data Warehouse use cases for a cloud solutionDifferentiate Big Data vs Data Warehouse use cases for a cloud solution
Differentiate Big Data vs Data Warehouse use cases for a cloud solution
 
DevNation Live: Kafka and Debezium
DevNation Live: Kafka and DebeziumDevNation Live: Kafka and Debezium
DevNation Live: Kafka and Debezium
 
Introducing Databricks Delta
Introducing Databricks DeltaIntroducing Databricks Delta
Introducing Databricks Delta
 
Stream processing with Apache Flink (Timo Walther - Ververica)
Stream processing with Apache Flink (Timo Walther - Ververica)Stream processing with Apache Flink (Timo Walther - Ververica)
Stream processing with Apache Flink (Timo Walther - Ververica)
 
Metabase
MetabaseMetabase
Metabase
 
Open Metadata and Governance with Apache Atlas
Open Metadata and Governance with Apache AtlasOpen Metadata and Governance with Apache Atlas
Open Metadata and Governance with Apache Atlas
 
Real-Life Use Cases & Architectures for Event Streaming with Apache Kafka
Real-Life Use Cases & Architectures for Event Streaming with Apache KafkaReal-Life Use Cases & Architectures for Event Streaming with Apache Kafka
Real-Life Use Cases & Architectures for Event Streaming with Apache Kafka
 
Scalable Monitoring Using Apache Spark and Friends with Utkarsh Bhatnagar
Scalable Monitoring Using Apache Spark and Friends with Utkarsh BhatnagarScalable Monitoring Using Apache Spark and Friends with Utkarsh Bhatnagar
Scalable Monitoring Using Apache Spark and Friends with Utkarsh Bhatnagar
 

Viewers also liked

Hybris integration solution pack
Hybris integration solution packHybris integration solution pack
Hybris integration solution pack
SatyaSuman Lakkimsetty
 
Hybris 6.0.0 to 6.3.0 comparision
Hybris 6.0.0 to 6.3.0 comparisionHybris 6.0.0 to 6.3.0 comparision
Hybris 6.0.0 to 6.3.0 comparision
Shinu Suresh
 
SAP hybris Caching and Monitoring
SAP hybris Caching and MonitoringSAP hybris Caching and Monitoring
SAP hybris Caching and Monitoring
Zhuo Huang
 
SAP hybris - User Account Management
SAP hybris - User Account ManagementSAP hybris - User Account Management
SAP hybris - User Account Management
Zhuo Huang
 
Developing enterprise ecommerce solutions using hybris by Drazen Nikolic - Be...
Developing enterprise ecommerce solutions using hybris by Drazen Nikolic - Be...Developing enterprise ecommerce solutions using hybris by Drazen Nikolic - Be...
Developing enterprise ecommerce solutions using hybris by Drazen Nikolic - Be...
youngculture
 
Developing enterprise ecommerce solutions using hybris by Drazen Nikolic
Developing enterprise ecommerce solutions using hybris by Drazen NikolicDeveloping enterprise ecommerce solutions using hybris by Drazen Nikolic
Developing enterprise ecommerce solutions using hybris by Drazen Nikolic
youngculture
 
Hybris @ Neev
Hybris @ NeevHybris @ Neev
Hybris @ Neev
Neev Technologies
 
Hybris presenatation sydney
Hybris presenatation sydneyHybris presenatation sydney
Hybris presenatation sydney
Michael Buckley
 
Data modeling
Data modelingData modeling
Data modeling
Atanu Chatterjee
 
Data-Ed Online: A Practical Approach to Data Modeling
Data-Ed Online: A Practical Approach to Data ModelingData-Ed Online: A Practical Approach to Data Modeling
Data-Ed Online: A Practical Approach to Data Modeling
DATAVERSITY
 
China EC framework
China EC frameworkChina EC framework
China EC framework
Cozy Mizoguchi
 
東南アジアへのネット通販・越境EC支援プラットフォーム”EC-PORT”
東南アジアへのネット通販・越境EC支援プラットフォーム”EC-PORT”東南アジアへのネット通販・越境EC支援プラットフォーム”EC-PORT”
東南アジアへのネット通販・越境EC支援プラットフォーム”EC-PORT”
SOCIAL AGENT, Inc
 
Best Practices of Data Modeling with InfoSphere Data Architect
Best Practices of Data Modeling with InfoSphere Data ArchitectBest Practices of Data Modeling with InfoSphere Data Architect
Best Practices of Data Modeling with InfoSphere Data Architect
Vladimir Bacvanski, PhD
 
東南アジアへの越境ECプラットフォーム"EC-PORT”サービス紹介資料
東南アジアへの越境ECプラットフォーム"EC-PORT”サービス紹介資料東南アジアへの越境ECプラットフォーム"EC-PORT”サービス紹介資料
東南アジアへの越境ECプラットフォーム"EC-PORT”サービス紹介資料
SOCIAL AGENT, Inc
 
The Definitive Guide to Data Modeling for Business Intelligence
The Definitive Guide to Data Modeling for Business IntelligenceThe Definitive Guide to Data Modeling for Business Intelligence
The Definitive Guide to Data Modeling for Business Intelligence
Eran Levy
 
AWS Summit Tokyo 2015_NTTデータセッション(前半:クラウドを活用したオムニチャネル基盤構築)
AWS Summit Tokyo 2015_NTTデータセッション(前半:クラウドを活用したオムニチャネル基盤構築)AWS Summit Tokyo 2015_NTTデータセッション(前半:クラウドを活用したオムニチャネル基盤構築)
AWS Summit Tokyo 2015_NTTデータセッション(前半:クラウドを活用したオムニチャネル基盤構築)
Hinemos
 

Viewers also liked (16)

Hybris integration solution pack
Hybris integration solution packHybris integration solution pack
Hybris integration solution pack
 
Hybris 6.0.0 to 6.3.0 comparision
Hybris 6.0.0 to 6.3.0 comparisionHybris 6.0.0 to 6.3.0 comparision
Hybris 6.0.0 to 6.3.0 comparision
 
SAP hybris Caching and Monitoring
SAP hybris Caching and MonitoringSAP hybris Caching and Monitoring
SAP hybris Caching and Monitoring
 
SAP hybris - User Account Management
SAP hybris - User Account ManagementSAP hybris - User Account Management
SAP hybris - User Account Management
 
Developing enterprise ecommerce solutions using hybris by Drazen Nikolic - Be...
Developing enterprise ecommerce solutions using hybris by Drazen Nikolic - Be...Developing enterprise ecommerce solutions using hybris by Drazen Nikolic - Be...
Developing enterprise ecommerce solutions using hybris by Drazen Nikolic - Be...
 
Developing enterprise ecommerce solutions using hybris by Drazen Nikolic
Developing enterprise ecommerce solutions using hybris by Drazen NikolicDeveloping enterprise ecommerce solutions using hybris by Drazen Nikolic
Developing enterprise ecommerce solutions using hybris by Drazen Nikolic
 
Hybris @ Neev
Hybris @ NeevHybris @ Neev
Hybris @ Neev
 
Hybris presenatation sydney
Hybris presenatation sydneyHybris presenatation sydney
Hybris presenatation sydney
 
Data modeling
Data modelingData modeling
Data modeling
 
Data-Ed Online: A Practical Approach to Data Modeling
Data-Ed Online: A Practical Approach to Data ModelingData-Ed Online: A Practical Approach to Data Modeling
Data-Ed Online: A Practical Approach to Data Modeling
 
China EC framework
China EC frameworkChina EC framework
China EC framework
 
東南アジアへのネット通販・越境EC支援プラットフォーム”EC-PORT”
東南アジアへのネット通販・越境EC支援プラットフォーム”EC-PORT”東南アジアへのネット通販・越境EC支援プラットフォーム”EC-PORT”
東南アジアへのネット通販・越境EC支援プラットフォーム”EC-PORT”
 
Best Practices of Data Modeling with InfoSphere Data Architect
Best Practices of Data Modeling with InfoSphere Data ArchitectBest Practices of Data Modeling with InfoSphere Data Architect
Best Practices of Data Modeling with InfoSphere Data Architect
 
東南アジアへの越境ECプラットフォーム"EC-PORT”サービス紹介資料
東南アジアへの越境ECプラットフォーム"EC-PORT”サービス紹介資料東南アジアへの越境ECプラットフォーム"EC-PORT”サービス紹介資料
東南アジアへの越境ECプラットフォーム"EC-PORT”サービス紹介資料
 
The Definitive Guide to Data Modeling for Business Intelligence
The Definitive Guide to Data Modeling for Business IntelligenceThe Definitive Guide to Data Modeling for Business Intelligence
The Definitive Guide to Data Modeling for Business Intelligence
 
AWS Summit Tokyo 2015_NTTデータセッション(前半:クラウドを活用したオムニチャネル基盤構築)
AWS Summit Tokyo 2015_NTTデータセッション(前半:クラウドを活用したオムニチャネル基盤構築)AWS Summit Tokyo 2015_NTTデータセッション(前半:クラウドを活用したオムニチャネル基盤構築)
AWS Summit Tokyo 2015_NTTデータセッション(前半:クラウドを活用したオムニチャネル基盤構築)
 

Similar to Hybris Hackathon - Data Modeling

Plone Interactivity
Plone InteractivityPlone Interactivity
Plone Interactivity
Eric Steele
 
Elasticsearch Introduction at BigData meetup
Elasticsearch Introduction at BigData meetupElasticsearch Introduction at BigData meetup
Elasticsearch Introduction at BigData meetup
Eric Rodriguez (Hiring in Lex)
 
Microservices and the Art of Taming the Dependency Hell Monster
Microservices and the Art of Taming the Dependency Hell MonsterMicroservices and the Art of Taming the Dependency Hell Monster
Microservices and the Art of Taming the Dependency Hell Monster
C4Media
 
JavaScript!
JavaScript!JavaScript!
JavaScript!
RTigger
 
Hibernate
HibernateHibernate
Hibernate
Prashant Kalkar
 
HTML5: Introduction
HTML5: IntroductionHTML5: Introduction
HTML5: Introduction
Guillermo Paz
 
Django introduction @ UGent
Django introduction @ UGentDjango introduction @ UGent
Django introduction @ UGent
kevinvw
 
Performing Data Science with HBase
Performing Data Science with HBasePerforming Data Science with HBase
Performing Data Science with HBase
WibiData
 
Real World MVC
Real World MVCReal World MVC
Real World MVC
James Johnson
 
jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)
jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)
jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)
Doris Chen
 
Knowledge.Wiki Semantics Conference 2022
Knowledge.Wiki Semantics Conference 2022Knowledge.Wiki Semantics Conference 2022
Knowledge.Wiki Semantics Conference 2022
Bernhard Krabina
 
Elasticsearch an overview
Elasticsearch   an overviewElasticsearch   an overview
Elasticsearch an overview
Amit Juneja
 
Introducing DocumentDB
Introducing DocumentDB Introducing DocumentDB
Introducing DocumentDB
James Serra
 
Jquery fundamentals
Jquery fundamentalsJquery fundamentals
Jquery fundamentals
Salvatore Fazio
 
Java script
Java scriptJava script
Java script
Abhishek Kesharwani
 
Rp 6 session 2 naresh bhatia
Rp 6  session 2 naresh bhatiaRp 6  session 2 naresh bhatia
Rp 6 session 2 naresh bhatia
sapientindia
 
Introduction to Backbone.js for Rails developers
Introduction to Backbone.js for Rails developersIntroduction to Backbone.js for Rails developers
Introduction to Backbone.js for Rails developers
AoteaStudios
 
Become a Full Stack Web Developer (.NET) - Thisiswali
Become a Full Stack Web Developer (.NET) - ThisiswaliBecome a Full Stack Web Developer (.NET) - Thisiswali
Become a Full Stack Web Developer (.NET) - Thisiswali
thisiswali
 
Building Rich Internet Applications with Ext JS
Building Rich Internet Applications  with Ext JSBuilding Rich Internet Applications  with Ext JS
Building Rich Internet Applications with Ext JS
Mats Bryntse
 
Application Platforms and Developer Communities - New software tools and app...
Application Platforms and Developer Communities -  New software tools and app...Application Platforms and Developer Communities -  New software tools and app...
Application Platforms and Developer Communities - New software tools and app...
Michael Habib
 

Similar to Hybris Hackathon - Data Modeling (20)

Plone Interactivity
Plone InteractivityPlone Interactivity
Plone Interactivity
 
Elasticsearch Introduction at BigData meetup
Elasticsearch Introduction at BigData meetupElasticsearch Introduction at BigData meetup
Elasticsearch Introduction at BigData meetup
 
Microservices and the Art of Taming the Dependency Hell Monster
Microservices and the Art of Taming the Dependency Hell MonsterMicroservices and the Art of Taming the Dependency Hell Monster
Microservices and the Art of Taming the Dependency Hell Monster
 
JavaScript!
JavaScript!JavaScript!
JavaScript!
 
Hibernate
HibernateHibernate
Hibernate
 
HTML5: Introduction
HTML5: IntroductionHTML5: Introduction
HTML5: Introduction
 
Django introduction @ UGent
Django introduction @ UGentDjango introduction @ UGent
Django introduction @ UGent
 
Performing Data Science with HBase
Performing Data Science with HBasePerforming Data Science with HBase
Performing Data Science with HBase
 
Real World MVC
Real World MVCReal World MVC
Real World MVC
 
jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)
jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)
jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)
 
Knowledge.Wiki Semantics Conference 2022
Knowledge.Wiki Semantics Conference 2022Knowledge.Wiki Semantics Conference 2022
Knowledge.Wiki Semantics Conference 2022
 
Elasticsearch an overview
Elasticsearch   an overviewElasticsearch   an overview
Elasticsearch an overview
 
Introducing DocumentDB
Introducing DocumentDB Introducing DocumentDB
Introducing DocumentDB
 
Jquery fundamentals
Jquery fundamentalsJquery fundamentals
Jquery fundamentals
 
Java script
Java scriptJava script
Java script
 
Rp 6 session 2 naresh bhatia
Rp 6  session 2 naresh bhatiaRp 6  session 2 naresh bhatia
Rp 6 session 2 naresh bhatia
 
Introduction to Backbone.js for Rails developers
Introduction to Backbone.js for Rails developersIntroduction to Backbone.js for Rails developers
Introduction to Backbone.js for Rails developers
 
Become a Full Stack Web Developer (.NET) - Thisiswali
Become a Full Stack Web Developer (.NET) - ThisiswaliBecome a Full Stack Web Developer (.NET) - Thisiswali
Become a Full Stack Web Developer (.NET) - Thisiswali
 
Building Rich Internet Applications with Ext JS
Building Rich Internet Applications  with Ext JSBuilding Rich Internet Applications  with Ext JS
Building Rich Internet Applications with Ext JS
 
Application Platforms and Developer Communities - New software tools and app...
Application Platforms and Developer Communities -  New software tools and app...Application Platforms and Developer Communities -  New software tools and app...
Application Platforms and Developer Communities - New software tools and app...
 

More from Neev Technologies

Razorfish India (Neev) Corporate Profile
Razorfish India (Neev) Corporate ProfileRazorfish India (Neev) Corporate Profile
Razorfish India (Neev) Corporate Profile
Neev Technologies
 
Adobe Experience Manager (Adobe CQ) Capabilities and Experience @ Neev
Adobe Experience Manager (Adobe CQ) Capabilities and Experience @ NeevAdobe Experience Manager (Adobe CQ) Capabilities and Experience @ Neev
Adobe Experience Manager (Adobe CQ) Capabilities and Experience @ Neev
Neev Technologies
 
Hybris Hackathon - Split Payments in Hybris
Hybris Hackathon - Split Payments in HybrisHybris Hackathon - Split Payments in Hybris
Hybris Hackathon - Split Payments in Hybris
Neev Technologies
 
RazorfishNeev Engagement Process
RazorfishNeev Engagement ProcessRazorfishNeev Engagement Process
RazorfishNeev Engagement Process
Neev Technologies
 
Gameathon @ Neev
Gameathon @ NeevGameathon @ Neev
Gameathon @ Neev
Neev Technologies
 
Building A Jewelry e-store - Now, sell your jewelry to the world!
Building A Jewelry e-store - Now, sell your jewelry to the world!Building A Jewelry e-store - Now, sell your jewelry to the world!
Building A Jewelry e-store - Now, sell your jewelry to the world!
Neev Technologies
 
Neev Load Testing Services
Neev Load Testing ServicesNeev Load Testing Services
Neev Load Testing Services
Neev Technologies
 
How to add Custom Font to your iOS-based App?
How to add Custom Font to your iOS-based App?How to add Custom Font to your iOS-based App?
How to add Custom Font to your iOS-based App?
Neev Technologies
 
Our Experience on Google Map Integration with Apps
Our Experience on Google Map Integration with AppsOur Experience on Google Map Integration with Apps
Our Experience on Google Map Integration with Apps
Neev Technologies
 
Neev Application Performance Management Services
Neev Application Performance Management ServicesNeev Application Performance Management Services
Neev Application Performance Management Services
Neev Technologies
 
Drupal Capabilities @ Neev
Drupal Capabilities @ NeevDrupal Capabilities @ Neev
Drupal Capabilities @ Neev
Neev Technologies
 
Neev CakePHP Managed Services Offerings
Neev CakePHP Managed Services OfferingsNeev CakePHP Managed Services Offerings
Neev CakePHP Managed Services Offerings
Neev Technologies
 
Neev AngularJS Capabilities
Neev AngularJS CapabilitiesNeev AngularJS Capabilities
Neev AngularJS Capabilities
Neev Technologies
 
Mobile Responsive Design @ Neev
Mobile Responsive Design @ NeevMobile Responsive Design @ Neev
Mobile Responsive Design @ Neev
Neev Technologies
 
Business Intelligence Capabilities @ Neev
Business Intelligence Capabilities @ NeevBusiness Intelligence Capabilities @ Neev
Business Intelligence Capabilities @ Neev
Neev Technologies
 
Neev Conversion Strategy Capabilities
Neev Conversion Strategy CapabilitiesNeev Conversion Strategy Capabilities
Neev Conversion Strategy Capabilities
Neev Technologies
 
RazorfishNeev - An Overview
RazorfishNeev - An OverviewRazorfishNeev - An Overview
RazorfishNeev - An Overview
Neev Technologies
 
A Digital Mirror for Luxury Jewelry Stores
A Digital Mirror for Luxury Jewelry StoresA Digital Mirror for Luxury Jewelry Stores
A Digital Mirror for Luxury Jewelry Stores
Neev Technologies
 
Neev Open Source Contributions
Neev Open Source ContributionsNeev Open Source Contributions
Neev Open Source Contributions
Neev Technologies
 
Native Mobile Platforms vs Phonegap – A Comparison
Native Mobile Platforms vs Phonegap – A ComparisonNative Mobile Platforms vs Phonegap – A Comparison
Native Mobile Platforms vs Phonegap – A Comparison
Neev Technologies
 

More from Neev Technologies (20)

Razorfish India (Neev) Corporate Profile
Razorfish India (Neev) Corporate ProfileRazorfish India (Neev) Corporate Profile
Razorfish India (Neev) Corporate Profile
 
Adobe Experience Manager (Adobe CQ) Capabilities and Experience @ Neev
Adobe Experience Manager (Adobe CQ) Capabilities and Experience @ NeevAdobe Experience Manager (Adobe CQ) Capabilities and Experience @ Neev
Adobe Experience Manager (Adobe CQ) Capabilities and Experience @ Neev
 
Hybris Hackathon - Split Payments in Hybris
Hybris Hackathon - Split Payments in HybrisHybris Hackathon - Split Payments in Hybris
Hybris Hackathon - Split Payments in Hybris
 
RazorfishNeev Engagement Process
RazorfishNeev Engagement ProcessRazorfishNeev Engagement Process
RazorfishNeev Engagement Process
 
Gameathon @ Neev
Gameathon @ NeevGameathon @ Neev
Gameathon @ Neev
 
Building A Jewelry e-store - Now, sell your jewelry to the world!
Building A Jewelry e-store - Now, sell your jewelry to the world!Building A Jewelry e-store - Now, sell your jewelry to the world!
Building A Jewelry e-store - Now, sell your jewelry to the world!
 
Neev Load Testing Services
Neev Load Testing ServicesNeev Load Testing Services
Neev Load Testing Services
 
How to add Custom Font to your iOS-based App?
How to add Custom Font to your iOS-based App?How to add Custom Font to your iOS-based App?
How to add Custom Font to your iOS-based App?
 
Our Experience on Google Map Integration with Apps
Our Experience on Google Map Integration with AppsOur Experience on Google Map Integration with Apps
Our Experience on Google Map Integration with Apps
 
Neev Application Performance Management Services
Neev Application Performance Management ServicesNeev Application Performance Management Services
Neev Application Performance Management Services
 
Drupal Capabilities @ Neev
Drupal Capabilities @ NeevDrupal Capabilities @ Neev
Drupal Capabilities @ Neev
 
Neev CakePHP Managed Services Offerings
Neev CakePHP Managed Services OfferingsNeev CakePHP Managed Services Offerings
Neev CakePHP Managed Services Offerings
 
Neev AngularJS Capabilities
Neev AngularJS CapabilitiesNeev AngularJS Capabilities
Neev AngularJS Capabilities
 
Mobile Responsive Design @ Neev
Mobile Responsive Design @ NeevMobile Responsive Design @ Neev
Mobile Responsive Design @ Neev
 
Business Intelligence Capabilities @ Neev
Business Intelligence Capabilities @ NeevBusiness Intelligence Capabilities @ Neev
Business Intelligence Capabilities @ Neev
 
Neev Conversion Strategy Capabilities
Neev Conversion Strategy CapabilitiesNeev Conversion Strategy Capabilities
Neev Conversion Strategy Capabilities
 
RazorfishNeev - An Overview
RazorfishNeev - An OverviewRazorfishNeev - An Overview
RazorfishNeev - An Overview
 
A Digital Mirror for Luxury Jewelry Stores
A Digital Mirror for Luxury Jewelry StoresA Digital Mirror for Luxury Jewelry Stores
A Digital Mirror for Luxury Jewelry Stores
 
Neev Open Source Contributions
Neev Open Source ContributionsNeev Open Source Contributions
Neev Open Source Contributions
 
Native Mobile Platforms vs Phonegap – A Comparison
Native Mobile Platforms vs Phonegap – A ComparisonNative Mobile Platforms vs Phonegap – A Comparison
Native Mobile Platforms vs Phonegap – A Comparison
 

Recently uploaded

Improving Learning Content Efficiency with Reusable Learning Content
Improving Learning Content Efficiency with Reusable Learning ContentImproving Learning Content Efficiency with Reusable Learning Content
Improving Learning Content Efficiency with Reusable Learning Content
Enterprise Knowledge
 
The History of Embeddings & Multimodal Embeddings
The History of Embeddings & Multimodal EmbeddingsThe History of Embeddings & Multimodal Embeddings
The History of Embeddings & Multimodal Embeddings
Zilliz
 
Uncharted Together- Navigating AI's New Frontiers in Libraries
Uncharted Together- Navigating AI's New Frontiers in LibrariesUncharted Together- Navigating AI's New Frontiers in Libraries
Uncharted Together- Navigating AI's New Frontiers in Libraries
Brian Pichman
 
NVIDIA at Breakthrough Discuss for Space Exploration
NVIDIA at Breakthrough Discuss for Space ExplorationNVIDIA at Breakthrough Discuss for Space Exploration
NVIDIA at Breakthrough Discuss for Space Exploration
Alison B. Lowndes
 
It's your unstructured data: How to get your GenAI app to production (and spe...
It's your unstructured data: How to get your GenAI app to production (and spe...It's your unstructured data: How to get your GenAI app to production (and spe...
It's your unstructured data: How to get your GenAI app to production (and spe...
Zilliz
 
Connector Corner: Leveraging Snowflake Integration for Smarter Decision Making
Connector Corner: Leveraging Snowflake Integration for Smarter Decision MakingConnector Corner: Leveraging Snowflake Integration for Smarter Decision Making
Connector Corner: Leveraging Snowflake Integration for Smarter Decision Making
DianaGray10
 
UX Webinar Series: Essentials for Adopting Passkeys as the Foundation of your...
UX Webinar Series: Essentials for Adopting Passkeys as the Foundation of your...UX Webinar Series: Essentials for Adopting Passkeys as the Foundation of your...
UX Webinar Series: Essentials for Adopting Passkeys as the Foundation of your...
FIDO Alliance
 
Camunda Chapter NY Meetup July 2024.pptx
Camunda Chapter NY Meetup July 2024.pptxCamunda Chapter NY Meetup July 2024.pptx
Camunda Chapter NY Meetup July 2024.pptx
ZachWylie3
 
Zaitechno Handheld Raman Spectrometer.pdf
Zaitechno Handheld Raman Spectrometer.pdfZaitechno Handheld Raman Spectrometer.pdf
Zaitechno Handheld Raman Spectrometer.pdf
AmandaCheung15
 
Intel Unveils Core Ultra 200V Lunar chip .pdf
Intel Unveils Core Ultra 200V Lunar chip .pdfIntel Unveils Core Ultra 200V Lunar chip .pdf
Intel Unveils Core Ultra 200V Lunar chip .pdf
Tech Guru
 
Redefining Cybersecurity with AI Capabilities
Redefining Cybersecurity with AI CapabilitiesRedefining Cybersecurity with AI Capabilities
Redefining Cybersecurity with AI Capabilities
Priyanka Aash
 
UX Webinar Series: Drive Revenue and Decrease Costs with Passkeys for Consume...
UX Webinar Series: Drive Revenue and Decrease Costs with Passkeys for Consume...UX Webinar Series: Drive Revenue and Decrease Costs with Passkeys for Consume...
UX Webinar Series: Drive Revenue and Decrease Costs with Passkeys for Consume...
FIDO Alliance
 
Tailored CRM Software Development for Enhanced Customer Insights
Tailored CRM Software Development for Enhanced Customer InsightsTailored CRM Software Development for Enhanced Customer Insights
Tailored CRM Software Development for Enhanced Customer Insights
SynapseIndia
 
kk vathada _digital transformation frameworks_2024.pdf
kk vathada _digital transformation frameworks_2024.pdfkk vathada _digital transformation frameworks_2024.pdf
kk vathada _digital transformation frameworks_2024.pdf
KIRAN KV
 
Mastering OnlyFans Clone App Development: Key Strategies for Success
Mastering OnlyFans Clone App Development: Key Strategies for SuccessMastering OnlyFans Clone App Development: Key Strategies for Success
Mastering OnlyFans Clone App Development: Key Strategies for Success
David Wilson
 
Premium Girls Call Mumbai 9920725232 Unlimited Short Providing Girls Service ...
Premium Girls Call Mumbai 9920725232 Unlimited Short Providing Girls Service ...Premium Girls Call Mumbai 9920725232 Unlimited Short Providing Girls Service ...
Premium Girls Call Mumbai 9920725232 Unlimited Short Providing Girls Service ...
shanihomely
 
BLOCKCHAIN TECHNOLOGY - Advantages and Disadvantages
BLOCKCHAIN TECHNOLOGY - Advantages and DisadvantagesBLOCKCHAIN TECHNOLOGY - Advantages and Disadvantages
BLOCKCHAIN TECHNOLOGY - Advantages and Disadvantages
SAI KAILASH R
 
Garbage In, Garbage Out: Why poor data curation is killing your AI models (an...
Garbage In, Garbage Out: Why poor data curation is killing your AI models (an...Garbage In, Garbage Out: Why poor data curation is killing your AI models (an...
Garbage In, Garbage Out: Why poor data curation is killing your AI models (an...
Zilliz
 
MAKE MONEY ONLINE Unlock Your Income Potential Today.pptx
MAKE MONEY ONLINE Unlock Your Income Potential Today.pptxMAKE MONEY ONLINE Unlock Your Income Potential Today.pptx
MAKE MONEY ONLINE Unlock Your Income Potential Today.pptx
janagijoythi
 
Semantic-Aware Code Model: Elevating the Future of Software Development
Semantic-Aware Code Model: Elevating the Future of Software DevelopmentSemantic-Aware Code Model: Elevating the Future of Software Development
Semantic-Aware Code Model: Elevating the Future of Software Development
Baishakhi Ray
 

Recently uploaded (20)

Improving Learning Content Efficiency with Reusable Learning Content
Improving Learning Content Efficiency with Reusable Learning ContentImproving Learning Content Efficiency with Reusable Learning Content
Improving Learning Content Efficiency with Reusable Learning Content
 
The History of Embeddings & Multimodal Embeddings
The History of Embeddings & Multimodal EmbeddingsThe History of Embeddings & Multimodal Embeddings
The History of Embeddings & Multimodal Embeddings
 
Uncharted Together- Navigating AI's New Frontiers in Libraries
Uncharted Together- Navigating AI's New Frontiers in LibrariesUncharted Together- Navigating AI's New Frontiers in Libraries
Uncharted Together- Navigating AI's New Frontiers in Libraries
 
NVIDIA at Breakthrough Discuss for Space Exploration
NVIDIA at Breakthrough Discuss for Space ExplorationNVIDIA at Breakthrough Discuss for Space Exploration
NVIDIA at Breakthrough Discuss for Space Exploration
 
It's your unstructured data: How to get your GenAI app to production (and spe...
It's your unstructured data: How to get your GenAI app to production (and spe...It's your unstructured data: How to get your GenAI app to production (and spe...
It's your unstructured data: How to get your GenAI app to production (and spe...
 
Connector Corner: Leveraging Snowflake Integration for Smarter Decision Making
Connector Corner: Leveraging Snowflake Integration for Smarter Decision MakingConnector Corner: Leveraging Snowflake Integration for Smarter Decision Making
Connector Corner: Leveraging Snowflake Integration for Smarter Decision Making
 
UX Webinar Series: Essentials for Adopting Passkeys as the Foundation of your...
UX Webinar Series: Essentials for Adopting Passkeys as the Foundation of your...UX Webinar Series: Essentials for Adopting Passkeys as the Foundation of your...
UX Webinar Series: Essentials for Adopting Passkeys as the Foundation of your...
 
Camunda Chapter NY Meetup July 2024.pptx
Camunda Chapter NY Meetup July 2024.pptxCamunda Chapter NY Meetup July 2024.pptx
Camunda Chapter NY Meetup July 2024.pptx
 
Zaitechno Handheld Raman Spectrometer.pdf
Zaitechno Handheld Raman Spectrometer.pdfZaitechno Handheld Raman Spectrometer.pdf
Zaitechno Handheld Raman Spectrometer.pdf
 
Intel Unveils Core Ultra 200V Lunar chip .pdf
Intel Unveils Core Ultra 200V Lunar chip .pdfIntel Unveils Core Ultra 200V Lunar chip .pdf
Intel Unveils Core Ultra 200V Lunar chip .pdf
 
Redefining Cybersecurity with AI Capabilities
Redefining Cybersecurity with AI CapabilitiesRedefining Cybersecurity with AI Capabilities
Redefining Cybersecurity with AI Capabilities
 
UX Webinar Series: Drive Revenue and Decrease Costs with Passkeys for Consume...
UX Webinar Series: Drive Revenue and Decrease Costs with Passkeys for Consume...UX Webinar Series: Drive Revenue and Decrease Costs with Passkeys for Consume...
UX Webinar Series: Drive Revenue and Decrease Costs with Passkeys for Consume...
 
Tailored CRM Software Development for Enhanced Customer Insights
Tailored CRM Software Development for Enhanced Customer InsightsTailored CRM Software Development for Enhanced Customer Insights
Tailored CRM Software Development for Enhanced Customer Insights
 
kk vathada _digital transformation frameworks_2024.pdf
kk vathada _digital transformation frameworks_2024.pdfkk vathada _digital transformation frameworks_2024.pdf
kk vathada _digital transformation frameworks_2024.pdf
 
Mastering OnlyFans Clone App Development: Key Strategies for Success
Mastering OnlyFans Clone App Development: Key Strategies for SuccessMastering OnlyFans Clone App Development: Key Strategies for Success
Mastering OnlyFans Clone App Development: Key Strategies for Success
 
Premium Girls Call Mumbai 9920725232 Unlimited Short Providing Girls Service ...
Premium Girls Call Mumbai 9920725232 Unlimited Short Providing Girls Service ...Premium Girls Call Mumbai 9920725232 Unlimited Short Providing Girls Service ...
Premium Girls Call Mumbai 9920725232 Unlimited Short Providing Girls Service ...
 
BLOCKCHAIN TECHNOLOGY - Advantages and Disadvantages
BLOCKCHAIN TECHNOLOGY - Advantages and DisadvantagesBLOCKCHAIN TECHNOLOGY - Advantages and Disadvantages
BLOCKCHAIN TECHNOLOGY - Advantages and Disadvantages
 
Garbage In, Garbage Out: Why poor data curation is killing your AI models (an...
Garbage In, Garbage Out: Why poor data curation is killing your AI models (an...Garbage In, Garbage Out: Why poor data curation is killing your AI models (an...
Garbage In, Garbage Out: Why poor data curation is killing your AI models (an...
 
MAKE MONEY ONLINE Unlock Your Income Potential Today.pptx
MAKE MONEY ONLINE Unlock Your Income Potential Today.pptxMAKE MONEY ONLINE Unlock Your Income Potential Today.pptx
MAKE MONEY ONLINE Unlock Your Income Potential Today.pptx
 
Semantic-Aware Code Model: Elevating the Future of Software Development
Semantic-Aware Code Model: Elevating the Future of Software DevelopmentSemantic-Aware Code Model: Elevating the Future of Software Development
Semantic-Aware Code Model: Elevating the Future of Software Development
 

Hybris Hackathon - Data Modeling

  • 1. Hybris Data Modeling (Presented as part of the ‘Hybris Hackathon Workshop Series’ - December 2014)
  • 3. More About RazorfishNeev • Publicis Groupe announced Neev acquisition in April 2013. • Executed 200+ projects over last 10 years. • Full Product/Application Lifecycle capabilities. • Strong skills around Web, Mobile and Cloud technologies primarily in Java and other Open Source products/frameworks. • Strong culture of innovation and problem solving. • Ability to provide 24X7 services. • Ability to execute deliver under tight timelines; most projects use Agile methodology.
  • 4. School Students Teachers Marks Hotel Food items Employees Expenditure • A process of creating database structure and analysing it for meeting the project requirements. What is Data Modeling? Example 1: Example 2:
  • 5. ▪ Tables creation ▪ Relation between tables System Id Employee Id Issue Date INBLRNEEV248 60570 Jan 2014 System Id RAM Hard Disk Capacity INBLRNEEV248 16 gb 320 gb Employee Id Employee Name Designation 60570 Raghav Desu Hybris Dev INBLRNEEV248 – Raghav – Jan 2014 Raghav – 60570 – jan 2014 – Hybris developer Inblrneev248 – 16gb ram – 320 gb harddisk Why Data Modeling? Unstructured Data Structured Data
  • 6. Data Modeling in Hybris • Hybris Data Modeling is the answer to questions like, “How Hybris is going to handle the database?” or “how can we create new tables or entire database in Hybris?” • Hybris data modeling helps you in developing your database. • Hybris data modeling can take care of the database connections and database queries. • Hybris will take care of deploying a table in Database, altering it and updating it with new records. • Hybris service layer provides all services for database handling.
  • 7. Items.xml: File used for data modelling. Item types: Creating Tables Relation types: Creating relation between the tables Atomic types: Atomic Types Enum types: Enums Map types: Maps Collection types: Collections Type System in Hybris Type System Data Modeling in Hybris is designed with the help of Type System in Hybris The Hybris Type system supports the following types. Each type has its own significance in the type system . Source: Hybris Wiki
  • 8. <atomictypes> <atomictype class="java.lang.Object" autocreate="true" generate="false"/> <atomictype class="java.lang.Boolean" extends="java.lang.Object" autocreate="true" generate="false"/> <atomictype class="java.lang.Double" extends="java.lang.Number" autocreate="true" generate="false"/> <atomictype class="java.lang.String" extends="java.lang.Object" autocreate="true" generate="false"/> </atomictypes> Core-items.xml Atomic Types Atomic Types are basic types in Hybris which will have Java number and string object types, such as java.lang.Integer or java.lang.String
  • 9. Item Types • Item Types are foundation for the Hybris Type System. • Item Types are responsible for creating new tables or updating the existing tables. • The table structure is configured over this type with the help of attributes. • Each attribute in Item type definition will represent a column in the table. <itemtype code="Customer“ extends="User" jaloclass="de.hybris.platform.jalo.user.Customer" autocreate="true“ generate="true"> <attributes> <attribute autocreate="true" qualifier="customerID" type="java.lang.String"> <modifiers read="true" write="true" search="true" optional="true"/> <persistence type="property"/> </attribute> </attributes> </itemtype>
  • 10. <relation code="Country2RegionRelation" generate="true" localized="false" autocreate="true"> <sourceElement type="Country" qualifier="country" cardinality="one"> <modifiers read="true" write="true" search="true" optional="false" unique="true"/> </sourceElement> <targetElement type="Region" qualifier="regions" cardinality="many"> <modifiers read="true" write="true" search="true" partof="true"/> </targetElement> </relation> Relation Types Relation Types creates link between tables. For e.g.: Country and regions are linked together, where the link is created with the help of relation types.
  • 11. Enumeration Types <enumtype code="CreditCardType" autocreate="true" generate="true"> <value code="amex"/> <value code="visa"/> <value code="master"/> <value code="diners"/> </enumtype> Enumeration Types represent the enumeration in Java. These are used for preparing particular set of values. For e.g. : Days in a week or months in a year.
  • 12. Collection Types Collection Types are the types which represent group of element types like a group of products or a group of customers. <collectiontype code="ProductCollection" elementtype="Product" autocreate="true" generate="true"/> <collectiontype code="LanguageList" elementtype="Language" autocreate="true" generate="true" type="list"/> <collectiontype code="LanguageSet" elementtype="Language" autocreate="true" generate="true" type="set"/>
  • 13. <maptype code="localized:java.lang.String“ argumenttype="Language“ returntype="java.lang.String“ autocreate="true“ generate="false"/> Map Types • Map Types used to store key value pairs in Hybris. Each key will represent its own value. • For e.g. : The localized fields require separate value for each language. For Example: <attribute autocreate="true" qualifier="name" type="localized:java.lang.String"> <modifiers read="true" write="true" search="true" optional="true"/> </attribute>
  • 14. <deployment table="Products" typecode="1" /> • Table creation • Ancestors attributes • Default extend for all tables, if no deployment Deployment • commons extension (132xx) • print extension (234xx,239xx) • processing extension (327xx) • Legacy xprint extension (244xx,245xx) • b2bcommerce extension (100xx) Hybris Conventions for Deployment Codes • In Hybris, the table deployment in database is defined by deployment tag. • If we add a deployment tag to Item type definition, it will isolate that table from its parent table and deploy separately. • If we don’t add deployment to it, it will deploy Item type along with its parent table. • Hybris supports updating the existing table (adding new columns, re-declaring the columns) and creating own tables.
  • 15. • Ant all • Ant clean all How it Works? Source: Hybris Wiki
  • 16. Features Multi Database Support: <attribute type="localized:java.lang.String" qualifier="content"> <persistence type="property"> <columntype database="oracle"> <value>varchar2(4000)</value> </columntype> <columntype database="mysql"> <value>text</value> </columntype> <columntype database="sqlserver"> <value>nvarchar(max)</value> </columntype> <columntype database="hsqldb"> <value>LONGVARCHAR</value> </columntype> </persistence> </attribute>
  • 17. Tenants allow customizing: • currency • currency format • date format Kinds of Tenants Creating New Tenants installed.tenants=junit,foo,t1,t2 Local_tenant_junit.properties db.tableprefix=myjunit_ Multi Tenant Support Source: Hybris Wiki Features
  • 18. Dynamic Attributes: Dynamic Enums: <enumtype code="CreditCardType" autocreate="true" generate="true“ dynamic=“true”> <value code="amex"/> <value code="visa"/> <value code="master"/> <value code="diners"/> </enumtype> <persistence type="dynamic" attributeHandler="dynamicAttributesProdCatTimeRanges"/> implements DynamicAttributeHandler<attributeType, ItemType> Features
  • 19. References • https://wiki.hybris.com/display/release5/items.xml • https://wiki.hybris.com/display/release5/Type+System+Documentation • https://wiki.hybris.com/display/release5/Dynamic+Attributes • https://wiki.hybris.com/display/release5/Specifying+a+Deployment+for+hybris+Platform+Types
  • 21. We partner with the best...
  • 22. The Razorfish India Edge – End-to-end consultative approach for software solutions through needs assessment, process consulting and strategic advice. – Internal QMS are ISO 9001-2008 certified and CMM level 3 compliant. – Continuous process and service level improvements through deployment of best-of-breed processes and technologies. – International Standards and best practices on Project Management including PMI, ISO and Prince-2. – Proven EDC Model of delivery to provide predictable results. – Scrum based Agile development methodology.
  • 23. Contact us India - Bangalore The Estate, # 121, 6th Floor, Dickenson Road Bangalore - 560042 Phone :+91-80-25594416 India - Gurgaon 90 D, Sector 18, Udyog Vihar Phase 5, Gurgaon -122015 Phone: 91-98 1101 5736 16th Floor, Urmi Estate, Ganapatrao Kadam Marg, Mumbai - 400013 Phone: +91-9811015736 India - Mumbai For more info on our offerings, visit www.neevtech.com Reach out | sales@neevtech.com