SlideShare a Scribd company logo
Introducing Social Networking Into an e-commerce Platform Tomer Gabel |  SHC Israel 03.02.2011
Social Commerce: An Introduction The last few years have seen tremendous growth in social networks Some estimates place Facebook above Google Even if not, we’re talking millions of daily unique visitors So the obvious question is… where’s the money? 2
Social Commerce: An Introduction 3
Social Commerce: Business Case What’s wrong with traditional e-commerce? Discovery/recommendation features are extremely hard to get right Overly broad market targeting means lost sales and disgruntled, ad-weary customers The trust model is inherently broken Impossible to gauge truth and accuracy in customer reviews “Wisdom of the masses” does not always apply Not fun! Shopping is a social experience (going to the mall, holiday shopping sprees) This does not translate to existing e-commerce sites! 4
Social Commerce: Business Case “Social commerce” aims to address these deficiencies Correlating interests and products is more accurate and significantly easier when based on social context Social circles are inherently constructed on shared interests and perspectives A customer’s social network is much smaller in scope than generating a global, statistical recommendation model More accurate personalized data exposes new opportunities Personalized discovery allows more opportunity to tap the long tail Social interaction makes it easy to identify domain experts A single opinion provided by a friend, family member or acquaintance is more trustworthy than dozens of unrelated product reviews/ratings 5
Social Commerce: Business Case Most crucially, social commerce is all about user engagement and collaboration: Should I buy an iPhone, Blackberry or Android phone? Which wedding dress looks best?  Which video games are suitable for a preschooler? 6 Ask your friends!
Social Commerce: The Axiom Social features increase user engagement Increased conversion Profit! 7
8 Enter: Delver
Enter: Delver The Delver team has two products on the market Two sides of the same coin, really: sears.com is a traditional e-commerce website with a social twist delver.com is a traditional social website with an e-commerce twist 9
The Technical Challenge sears.com is a fully blown commercial retail site Over 1 million page-views daily Over 270,000 visitors daily Traffic can easily spike up to ten times in the holiday season! 10
The Technical Challenge Processing social networks is not an easy proposition Massive amounts of branching data No data locality Very few assumptions can be made about the data Let’s address each of these in turn 11 Source: NetworkWeaver
The Technical Challenge Massive amounts of branching data: Imagine every Facebook user (500 million) Imagine each person is only connected to 100 others (conservative estimate) How is user X connected with Y? X has 100 friends Each of them has 100 friends 10,001 nodes visited! 101 reads from the underlying storage system! 12 X Y
The Technical Challenge No data locality: Any object may be connected to any other object in no particular order How to split the data? Some research is being done in the area (SPAR) 13
The Technical Challenge No easy assumptions: No “typical user” Not enough data to draw archetypes Significant, unavoidable long tail Difficult to pre-tune data structures 14
The Technical Challenge The crux of the problem: High branch factor necessitates many loads to serve even a simple request No data locality + high branch factor means very high random I/O Traditional storage models (RDBMS, flat files etc.) are a poor fit Serious research into graph storage, social network composition etc. only dates back a few years No best practices or “accepted truths” to build on 15
Use Case for GigaSpaces To solve the graph storage and traversal problem, we arrived at the following requirements: Completely in-memory storage No data locality means caching is inefficient Massive amounts of random I/O cannot scale vertically, and hardware (basically, spindle count) cost quickly becomes prohibitive If data access is sufficiently fast, data can be randomly partitioned Horizontal scaling with a well-known scale-up strategy Add more memory or more nodes to handle data growth Add more CPUs or additional nodes to handle load growth 16
Use Case for GigaSpaces Additional requirements include: Map/Reduce execution framework Graph traversal and data analysis requirements lend well to the map/reduce paradigm Code execution on the data nodes Because of the massive amounts of data involved, the network interface will be quickly saturated by retrievals Memory retrieval is at least two orders of magnitude faster than network throughput (DDR2-800 on a dual channel memory controller has a theoretical throughput maximum of 102.4Gb/s) 17
Use Case for GigaSpaces As an operations tech I had a few things to add to the list, namely… Nonfunctional requirements: Built-in fault tolerance and high availability Zero-configuration (or as close to it as it gets) setup; in particular, component discovery and assignment must be automated Well-documented deployment, configuration and tuning process Monitoring API Administrative client for diagnosis, trouble resolution and manual intervention 18
Use Case for GigaSpaces GigaSpaces features map well to our requirements Data grid Compute grid High availability Horizontal data and load scaling Management API Very few viable alternatives: Hadoop, neo4j are disk-based Terracotta is overly simplistic and has no execution framework Oracle Coherence is expensive and has a limited feature set 19
Delver Architecture We ended up with a hybrid platform: GigaSpaces for graph storage, traversal and analysis MySQL for traditional, “simple” data as well as a backing store for GigaSpaces .NET-based front-end, Java-based back-end We had to factor our organization accordingly Data access team provides abstracted interfaces on top of GigaSpaces and MySQL Back-end “heavy lifting” services (e.g. recommendation engine) work directly against GigaSpaces Most other components either use the abstracted DAL or are simple enough to work directly against MySQL using (N)Hibernate 20
Delver Architecture 21
Key Benefits Significantly reduced integration costs GigaSpaces does a lot of what we need out of the box An alternative solution would require integrating several products, incurring significant integration and development overhead Broad feature set Social commerce is an emerging, dynamic market requiring rapid experimentation and adaptation The large feature set allows us to introduce new features into the system at a furious pace While primarily intended for graph storage, we also use GigaSpaces as a message queue, distributed lock server and distributed scheduler 22

More Related Content

What's hot

5 Big Data Visualization Maps that Will Make Your HEAD EXPLODE
5 Big Data Visualization Maps that Will Make Your HEAD EXPLODE5 Big Data Visualization Maps that Will Make Your HEAD EXPLODE
5 Big Data Visualization Maps that Will Make Your HEAD EXPLODE
BI Brainz
 
A Primer for a layman about Big Data, Business Analytics and Cloud
A Primer for a layman  about Big Data, Business Analytics and CloudA Primer for a layman  about Big Data, Business Analytics and Cloud
A Primer for a layman about Big Data, Business Analytics and Cloud
Rajagopalan V
 
Notes from the Observation Deck // A Data Revolution
Notes from the Observation Deck // A Data Revolution Notes from the Observation Deck // A Data Revolution
Notes from the Observation Deck // A Data Revolution
gngeorge
 
BBDO Proximity: Big-data May 2013
BBDO Proximity: Big-data May 2013BBDO Proximity: Big-data May 2013
BBDO Proximity: Big-data May 2013Brian Crotty
 
Big MDM Part 2: Using a Graph Database for MDM and Relationship Management
Big MDM Part 2: Using a Graph Database for MDM and Relationship ManagementBig MDM Part 2: Using a Graph Database for MDM and Relationship Management
Big MDM Part 2: Using a Graph Database for MDM and Relationship Management
Caserta
 
The Web Revolution: Data, Design & Driving Results
The Web Revolution: Data, Design & Driving ResultsThe Web Revolution: Data, Design & Driving Results
The Web Revolution: Data, Design & Driving Results
Hubbard One
 
Big data overview external
Big data overview externalBig data overview external
Big data overview external
Brett Colbert
 
Big Data Case study - caixa bank
Big Data Case study - caixa bankBig Data Case study - caixa bank
Big Data Case study - caixa bank
Chungsik Yun
 
IBM Governed Data Lake
IBM Governed Data LakeIBM Governed Data Lake
IBM Governed Data Lake
Karan Sachdeva
 
How AI will impact Web and Social Media Intelligence - Uljan Sharka (Crystal.io)
How AI will impact Web and Social Media Intelligence - Uljan Sharka (Crystal.io)How AI will impact Web and Social Media Intelligence - Uljan Sharka (Crystal.io)
How AI will impact Web and Social Media Intelligence - Uljan Sharka (Crystal.io)
Data Driven Innovation
 

What's hot (11)

5 Big Data Visualization Maps that Will Make Your HEAD EXPLODE
5 Big Data Visualization Maps that Will Make Your HEAD EXPLODE5 Big Data Visualization Maps that Will Make Your HEAD EXPLODE
5 Big Data Visualization Maps that Will Make Your HEAD EXPLODE
 
A Primer for a layman about Big Data, Business Analytics and Cloud
A Primer for a layman  about Big Data, Business Analytics and CloudA Primer for a layman  about Big Data, Business Analytics and Cloud
A Primer for a layman about Big Data, Business Analytics and Cloud
 
Notes from the Observation Deck // A Data Revolution
Notes from the Observation Deck // A Data Revolution Notes from the Observation Deck // A Data Revolution
Notes from the Observation Deck // A Data Revolution
 
The state of the Big Data market
The state of the Big Data marketThe state of the Big Data market
The state of the Big Data market
 
BBDO Proximity: Big-data May 2013
BBDO Proximity: Big-data May 2013BBDO Proximity: Big-data May 2013
BBDO Proximity: Big-data May 2013
 
Big MDM Part 2: Using a Graph Database for MDM and Relationship Management
Big MDM Part 2: Using a Graph Database for MDM and Relationship ManagementBig MDM Part 2: Using a Graph Database for MDM and Relationship Management
Big MDM Part 2: Using a Graph Database for MDM and Relationship Management
 
The Web Revolution: Data, Design & Driving Results
The Web Revolution: Data, Design & Driving ResultsThe Web Revolution: Data, Design & Driving Results
The Web Revolution: Data, Design & Driving Results
 
Big data overview external
Big data overview externalBig data overview external
Big data overview external
 
Big Data Case study - caixa bank
Big Data Case study - caixa bankBig Data Case study - caixa bank
Big Data Case study - caixa bank
 
IBM Governed Data Lake
IBM Governed Data LakeIBM Governed Data Lake
IBM Governed Data Lake
 
How AI will impact Web and Social Media Intelligence - Uljan Sharka (Crystal.io)
How AI will impact Web and Social Media Intelligence - Uljan Sharka (Crystal.io)How AI will impact Web and Social Media Intelligence - Uljan Sharka (Crystal.io)
How AI will impact Web and Social Media Intelligence - Uljan Sharka (Crystal.io)
 

Similar to SHC Israel: GigaSpaces Case Study

Introducing social networking into an e commerce platform - (delver) sears ho...
Introducing social networking into an e commerce platform - (delver) sears ho...Introducing social networking into an e commerce platform - (delver) sears ho...
Introducing social networking into an e commerce platform - (delver) sears ho...Nati Shalom
 
Big Data PPT by Rohit Dubey
Big Data PPT by Rohit DubeyBig Data PPT by Rohit Dubey
Big Data PPT by Rohit DubeyRohit Dubey
 
Improve your Tech Quotient
Improve your Tech QuotientImprove your Tech Quotient
Improve your Tech Quotient
Tarence DSouza
 
NoSQL Basics - a quick tour
NoSQL Basics - a quick tourNoSQL Basics - a quick tour
NoSQL Basics - a quick tour
Bikram Sinha. MBA, PMP
 
Big Data
Big DataBig Data
Big Data
NGDATA
 
Big Data is changing abruptly, and where it is likely heading
Big Data is changing abruptly, and where it is likely headingBig Data is changing abruptly, and where it is likely heading
Big Data is changing abruptly, and where it is likely heading
Paco Nathan
 
Big Data By Vijay Bhaskar Semwal
Big Data By Vijay Bhaskar SemwalBig Data By Vijay Bhaskar Semwal
Big Data By Vijay Bhaskar Semwal
IIIT Allahabad
 
Big Data using NoSQL Technologies
Big Data using NoSQL TechnologiesBig Data using NoSQL Technologies
Big Data using NoSQL Technologies
Amit Singh
 
The Growth Of Data Centers
The Growth Of Data CentersThe Growth Of Data Centers
The Growth Of Data Centers
Gina Buck
 
Big Data Basic Concepts | Presented in 2014
Big Data Basic Concepts  | Presented in 2014Big Data Basic Concepts  | Presented in 2014
Big Data Basic Concepts | Presented in 2014
Kenneth Igiri
 
Future of Data Strategy (ASEAN)
Future of Data Strategy (ASEAN)Future of Data Strategy (ASEAN)
Future of Data Strategy (ASEAN)
Denodo
 
Big Data, NoSQL, NewSQL & The Future of Data Management
Big Data, NoSQL, NewSQL & The Future of Data ManagementBig Data, NoSQL, NewSQL & The Future of Data Management
Big Data, NoSQL, NewSQL & The Future of Data Management
Tony Bain
 
To mesh or mess up your data organisation - Jochem van Grondelle (Prosus/OLX ...
To mesh or mess up your data organisation - Jochem van Grondelle (Prosus/OLX ...To mesh or mess up your data organisation - Jochem van Grondelle (Prosus/OLX ...
To mesh or mess up your data organisation - Jochem van Grondelle (Prosus/OLX ...
Jochem van Grondelle
 
How to Place Data at the Center of Digital Transformation in BFSI
How to Place Data at the Center of Digital Transformation in BFSIHow to Place Data at the Center of Digital Transformation in BFSI
How to Place Data at the Center of Digital Transformation in BFSI
Denodo
 
Exercise solution of chapter3 of datawarehouse cs614(solution of exercise)
Exercise solution of chapter3 of datawarehouse cs614(solution of exercise)Exercise solution of chapter3 of datawarehouse cs614(solution of exercise)
Exercise solution of chapter3 of datawarehouse cs614(solution of exercise)
AYESHA JAVED
 
The future of scaling forrester research - GigaSpaces Road Show 2011
The future of scaling forrester research - GigaSpaces Road Show 2011The future of scaling forrester research - GigaSpaces Road Show 2011
The future of scaling forrester research - GigaSpaces Road Show 2011Nati Shalom
 
Introduction Big data
Introduction Big data  Introduction Big data
Introduction Big data
مروان الوجيه
 
Cloudera Breakfast: Advanced Analytics Part II: Do More With Your Data
Cloudera Breakfast: Advanced Analytics Part II: Do More With Your DataCloudera Breakfast: Advanced Analytics Part II: Do More With Your Data
Cloudera Breakfast: Advanced Analytics Part II: Do More With Your Data
Cloudera, Inc.
 

Similar to SHC Israel: GigaSpaces Case Study (20)

Introducing social networking into an e commerce platform - (delver) sears ho...
Introducing social networking into an e commerce platform - (delver) sears ho...Introducing social networking into an e commerce platform - (delver) sears ho...
Introducing social networking into an e commerce platform - (delver) sears ho...
 
Big Data PPT by Rohit Dubey
Big Data PPT by Rohit DubeyBig Data PPT by Rohit Dubey
Big Data PPT by Rohit Dubey
 
Improve your Tech Quotient
Improve your Tech QuotientImprove your Tech Quotient
Improve your Tech Quotient
 
NoSQL Basics - a quick tour
NoSQL Basics - a quick tourNoSQL Basics - a quick tour
NoSQL Basics - a quick tour
 
Big Data
Big DataBig Data
Big Data
 
Big Data is changing abruptly, and where it is likely heading
Big Data is changing abruptly, and where it is likely headingBig Data is changing abruptly, and where it is likely heading
Big Data is changing abruptly, and where it is likely heading
 
Big Data By Vijay Bhaskar Semwal
Big Data By Vijay Bhaskar SemwalBig Data By Vijay Bhaskar Semwal
Big Data By Vijay Bhaskar Semwal
 
Big Data using NoSQL Technologies
Big Data using NoSQL TechnologiesBig Data using NoSQL Technologies
Big Data using NoSQL Technologies
 
The Growth Of Data Centers
The Growth Of Data CentersThe Growth Of Data Centers
The Growth Of Data Centers
 
Big Data Basic Concepts | Presented in 2014
Big Data Basic Concepts  | Presented in 2014Big Data Basic Concepts  | Presented in 2014
Big Data Basic Concepts | Presented in 2014
 
Future of Data Strategy (ASEAN)
Future of Data Strategy (ASEAN)Future of Data Strategy (ASEAN)
Future of Data Strategy (ASEAN)
 
Big Data, NoSQL, NewSQL & The Future of Data Management
Big Data, NoSQL, NewSQL & The Future of Data ManagementBig Data, NoSQL, NewSQL & The Future of Data Management
Big Data, NoSQL, NewSQL & The Future of Data Management
 
To mesh or mess up your data organisation - Jochem van Grondelle (Prosus/OLX ...
To mesh or mess up your data organisation - Jochem van Grondelle (Prosus/OLX ...To mesh or mess up your data organisation - Jochem van Grondelle (Prosus/OLX ...
To mesh or mess up your data organisation - Jochem van Grondelle (Prosus/OLX ...
 
How to Place Data at the Center of Digital Transformation in BFSI
How to Place Data at the Center of Digital Transformation in BFSIHow to Place Data at the Center of Digital Transformation in BFSI
How to Place Data at the Center of Digital Transformation in BFSI
 
Big data business case
Big data   business caseBig data   business case
Big data business case
 
Exercise solution of chapter3 of datawarehouse cs614(solution of exercise)
Exercise solution of chapter3 of datawarehouse cs614(solution of exercise)Exercise solution of chapter3 of datawarehouse cs614(solution of exercise)
Exercise solution of chapter3 of datawarehouse cs614(solution of exercise)
 
The future of scaling forrester research - GigaSpaces Road Show 2011
The future of scaling forrester research - GigaSpaces Road Show 2011The future of scaling forrester research - GigaSpaces Road Show 2011
The future of scaling forrester research - GigaSpaces Road Show 2011
 
Introduction Big data
Introduction Big data  Introduction Big data
Introduction Big data
 
Cloudera Breakfast: Advanced Analytics Part II: Do More With Your Data
Cloudera Breakfast: Advanced Analytics Part II: Do More With Your DataCloudera Breakfast: Advanced Analytics Part II: Do More With Your Data
Cloudera Breakfast: Advanced Analytics Part II: Do More With Your Data
 
SegmentOfOne
SegmentOfOneSegmentOfOne
SegmentOfOne
 

More from Tomer Gabel

How shit works: Time
How shit works: TimeHow shit works: Time
How shit works: Time
Tomer Gabel
 
Nondeterministic Software for the Rest of Us
Nondeterministic Software for the Rest of UsNondeterministic Software for the Rest of Us
Nondeterministic Software for the Rest of Us
Tomer Gabel
 
Slaying Sacred Cows: Deconstructing Dependency Injection
Slaying Sacred Cows: Deconstructing Dependency InjectionSlaying Sacred Cows: Deconstructing Dependency Injection
Slaying Sacred Cows: Deconstructing Dependency Injection
Tomer Gabel
 
An Abridged Guide to Event Sourcing
An Abridged Guide to Event SourcingAn Abridged Guide to Event Sourcing
An Abridged Guide to Event Sourcing
Tomer Gabel
 
How shit works: the CPU
How shit works: the CPUHow shit works: the CPU
How shit works: the CPU
Tomer Gabel
 
How Shit Works: Storage
How Shit Works: StorageHow Shit Works: Storage
How Shit Works: Storage
Tomer Gabel
 
Java 8 and Beyond, a Scala Story
Java 8 and Beyond, a Scala StoryJava 8 and Beyond, a Scala Story
Java 8 and Beyond, a Scala Story
Tomer Gabel
 
The Wix Microservice Stack
The Wix Microservice StackThe Wix Microservice Stack
The Wix Microservice Stack
Tomer Gabel
 
Scala Refactoring for Fun and Profit (Japanese subtitles)
Scala Refactoring for Fun and Profit (Japanese subtitles)Scala Refactoring for Fun and Profit (Japanese subtitles)
Scala Refactoring for Fun and Profit (Japanese subtitles)
Tomer Gabel
 
Scala Refactoring for Fun and Profit
Scala Refactoring for Fun and ProfitScala Refactoring for Fun and Profit
Scala Refactoring for Fun and Profit
Tomer Gabel
 
Onboarding at Scale
Onboarding at ScaleOnboarding at Scale
Onboarding at Scale
Tomer Gabel
 
Scala in the Wild
Scala in the WildScala in the Wild
Scala in the Wild
Tomer Gabel
 
Speaking Scala: Refactoring for Fun and Profit (Workshop)
Speaking Scala: Refactoring for Fun and Profit (Workshop)Speaking Scala: Refactoring for Fun and Profit (Workshop)
Speaking Scala: Refactoring for Fun and Profit (Workshop)
Tomer Gabel
 
Put Your Thinking CAP On
Put Your Thinking CAP OnPut Your Thinking CAP On
Put Your Thinking CAP On
Tomer Gabel
 
Leveraging Scala Macros for Better Validation
Leveraging Scala Macros for Better ValidationLeveraging Scala Macros for Better Validation
Leveraging Scala Macros for Better Validation
Tomer Gabel
 
A Field Guide to DSL Design in Scala
A Field Guide to DSL Design in ScalaA Field Guide to DSL Design in Scala
A Field Guide to DSL Design in Scala
Tomer Gabel
 
Functional Leap of Faith (Keynote at JDay Lviv 2014)
Functional Leap of Faith (Keynote at JDay Lviv 2014)Functional Leap of Faith (Keynote at JDay Lviv 2014)
Functional Leap of Faith (Keynote at JDay Lviv 2014)
Tomer Gabel
 
Scala Back to Basics: Type Classes
Scala Back to Basics: Type ClassesScala Back to Basics: Type Classes
Scala Back to Basics: Type Classes
Tomer Gabel
 
5 Bullets to Scala Adoption
5 Bullets to Scala Adoption5 Bullets to Scala Adoption
5 Bullets to Scala Adoption
Tomer Gabel
 
Nashorn: JavaScript that doesn’t suck (ILJUG)
Nashorn: JavaScript that doesn’t suck (ILJUG)Nashorn: JavaScript that doesn’t suck (ILJUG)
Nashorn: JavaScript that doesn’t suck (ILJUG)
Tomer Gabel
 

More from Tomer Gabel (20)

How shit works: Time
How shit works: TimeHow shit works: Time
How shit works: Time
 
Nondeterministic Software for the Rest of Us
Nondeterministic Software for the Rest of UsNondeterministic Software for the Rest of Us
Nondeterministic Software for the Rest of Us
 
Slaying Sacred Cows: Deconstructing Dependency Injection
Slaying Sacred Cows: Deconstructing Dependency InjectionSlaying Sacred Cows: Deconstructing Dependency Injection
Slaying Sacred Cows: Deconstructing Dependency Injection
 
An Abridged Guide to Event Sourcing
An Abridged Guide to Event SourcingAn Abridged Guide to Event Sourcing
An Abridged Guide to Event Sourcing
 
How shit works: the CPU
How shit works: the CPUHow shit works: the CPU
How shit works: the CPU
 
How Shit Works: Storage
How Shit Works: StorageHow Shit Works: Storage
How Shit Works: Storage
 
Java 8 and Beyond, a Scala Story
Java 8 and Beyond, a Scala StoryJava 8 and Beyond, a Scala Story
Java 8 and Beyond, a Scala Story
 
The Wix Microservice Stack
The Wix Microservice StackThe Wix Microservice Stack
The Wix Microservice Stack
 
Scala Refactoring for Fun and Profit (Japanese subtitles)
Scala Refactoring for Fun and Profit (Japanese subtitles)Scala Refactoring for Fun and Profit (Japanese subtitles)
Scala Refactoring for Fun and Profit (Japanese subtitles)
 
Scala Refactoring for Fun and Profit
Scala Refactoring for Fun and ProfitScala Refactoring for Fun and Profit
Scala Refactoring for Fun and Profit
 
Onboarding at Scale
Onboarding at ScaleOnboarding at Scale
Onboarding at Scale
 
Scala in the Wild
Scala in the WildScala in the Wild
Scala in the Wild
 
Speaking Scala: Refactoring for Fun and Profit (Workshop)
Speaking Scala: Refactoring for Fun and Profit (Workshop)Speaking Scala: Refactoring for Fun and Profit (Workshop)
Speaking Scala: Refactoring for Fun and Profit (Workshop)
 
Put Your Thinking CAP On
Put Your Thinking CAP OnPut Your Thinking CAP On
Put Your Thinking CAP On
 
Leveraging Scala Macros for Better Validation
Leveraging Scala Macros for Better ValidationLeveraging Scala Macros for Better Validation
Leveraging Scala Macros for Better Validation
 
A Field Guide to DSL Design in Scala
A Field Guide to DSL Design in ScalaA Field Guide to DSL Design in Scala
A Field Guide to DSL Design in Scala
 
Functional Leap of Faith (Keynote at JDay Lviv 2014)
Functional Leap of Faith (Keynote at JDay Lviv 2014)Functional Leap of Faith (Keynote at JDay Lviv 2014)
Functional Leap of Faith (Keynote at JDay Lviv 2014)
 
Scala Back to Basics: Type Classes
Scala Back to Basics: Type ClassesScala Back to Basics: Type Classes
Scala Back to Basics: Type Classes
 
5 Bullets to Scala Adoption
5 Bullets to Scala Adoption5 Bullets to Scala Adoption
5 Bullets to Scala Adoption
 
Nashorn: JavaScript that doesn’t suck (ILJUG)
Nashorn: JavaScript that doesn’t suck (ILJUG)Nashorn: JavaScript that doesn’t suck (ILJUG)
Nashorn: JavaScript that doesn’t suck (ILJUG)
 

Recently uploaded

How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
Paul Groth
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 

Recently uploaded (20)

How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 

SHC Israel: GigaSpaces Case Study

  • 1. Introducing Social Networking Into an e-commerce Platform Tomer Gabel | SHC Israel 03.02.2011
  • 2. Social Commerce: An Introduction The last few years have seen tremendous growth in social networks Some estimates place Facebook above Google Even if not, we’re talking millions of daily unique visitors So the obvious question is… where’s the money? 2
  • 3. Social Commerce: An Introduction 3
  • 4. Social Commerce: Business Case What’s wrong with traditional e-commerce? Discovery/recommendation features are extremely hard to get right Overly broad market targeting means lost sales and disgruntled, ad-weary customers The trust model is inherently broken Impossible to gauge truth and accuracy in customer reviews “Wisdom of the masses” does not always apply Not fun! Shopping is a social experience (going to the mall, holiday shopping sprees) This does not translate to existing e-commerce sites! 4
  • 5. Social Commerce: Business Case “Social commerce” aims to address these deficiencies Correlating interests and products is more accurate and significantly easier when based on social context Social circles are inherently constructed on shared interests and perspectives A customer’s social network is much smaller in scope than generating a global, statistical recommendation model More accurate personalized data exposes new opportunities Personalized discovery allows more opportunity to tap the long tail Social interaction makes it easy to identify domain experts A single opinion provided by a friend, family member or acquaintance is more trustworthy than dozens of unrelated product reviews/ratings 5
  • 6. Social Commerce: Business Case Most crucially, social commerce is all about user engagement and collaboration: Should I buy an iPhone, Blackberry or Android phone? Which wedding dress looks best? Which video games are suitable for a preschooler? 6 Ask your friends!
  • 7. Social Commerce: The Axiom Social features increase user engagement Increased conversion Profit! 7
  • 9. Enter: Delver The Delver team has two products on the market Two sides of the same coin, really: sears.com is a traditional e-commerce website with a social twist delver.com is a traditional social website with an e-commerce twist 9
  • 10. The Technical Challenge sears.com is a fully blown commercial retail site Over 1 million page-views daily Over 270,000 visitors daily Traffic can easily spike up to ten times in the holiday season! 10
  • 11. The Technical Challenge Processing social networks is not an easy proposition Massive amounts of branching data No data locality Very few assumptions can be made about the data Let’s address each of these in turn 11 Source: NetworkWeaver
  • 12. The Technical Challenge Massive amounts of branching data: Imagine every Facebook user (500 million) Imagine each person is only connected to 100 others (conservative estimate) How is user X connected with Y? X has 100 friends Each of them has 100 friends 10,001 nodes visited! 101 reads from the underlying storage system! 12 X Y
  • 13. The Technical Challenge No data locality: Any object may be connected to any other object in no particular order How to split the data? Some research is being done in the area (SPAR) 13
  • 14. The Technical Challenge No easy assumptions: No “typical user” Not enough data to draw archetypes Significant, unavoidable long tail Difficult to pre-tune data structures 14
  • 15. The Technical Challenge The crux of the problem: High branch factor necessitates many loads to serve even a simple request No data locality + high branch factor means very high random I/O Traditional storage models (RDBMS, flat files etc.) are a poor fit Serious research into graph storage, social network composition etc. only dates back a few years No best practices or “accepted truths” to build on 15
  • 16. Use Case for GigaSpaces To solve the graph storage and traversal problem, we arrived at the following requirements: Completely in-memory storage No data locality means caching is inefficient Massive amounts of random I/O cannot scale vertically, and hardware (basically, spindle count) cost quickly becomes prohibitive If data access is sufficiently fast, data can be randomly partitioned Horizontal scaling with a well-known scale-up strategy Add more memory or more nodes to handle data growth Add more CPUs or additional nodes to handle load growth 16
  • 17. Use Case for GigaSpaces Additional requirements include: Map/Reduce execution framework Graph traversal and data analysis requirements lend well to the map/reduce paradigm Code execution on the data nodes Because of the massive amounts of data involved, the network interface will be quickly saturated by retrievals Memory retrieval is at least two orders of magnitude faster than network throughput (DDR2-800 on a dual channel memory controller has a theoretical throughput maximum of 102.4Gb/s) 17
  • 18. Use Case for GigaSpaces As an operations tech I had a few things to add to the list, namely… Nonfunctional requirements: Built-in fault tolerance and high availability Zero-configuration (or as close to it as it gets) setup; in particular, component discovery and assignment must be automated Well-documented deployment, configuration and tuning process Monitoring API Administrative client for diagnosis, trouble resolution and manual intervention 18
  • 19. Use Case for GigaSpaces GigaSpaces features map well to our requirements Data grid Compute grid High availability Horizontal data and load scaling Management API Very few viable alternatives: Hadoop, neo4j are disk-based Terracotta is overly simplistic and has no execution framework Oracle Coherence is expensive and has a limited feature set 19
  • 20. Delver Architecture We ended up with a hybrid platform: GigaSpaces for graph storage, traversal and analysis MySQL for traditional, “simple” data as well as a backing store for GigaSpaces .NET-based front-end, Java-based back-end We had to factor our organization accordingly Data access team provides abstracted interfaces on top of GigaSpaces and MySQL Back-end “heavy lifting” services (e.g. recommendation engine) work directly against GigaSpaces Most other components either use the abstracted DAL or are simple enough to work directly against MySQL using (N)Hibernate 20
  • 22. Key Benefits Significantly reduced integration costs GigaSpaces does a lot of what we need out of the box An alternative solution would require integrating several products, incurring significant integration and development overhead Broad feature set Social commerce is an emerging, dynamic market requiring rapid experimentation and adaptation The large feature set allows us to introduce new features into the system at a furious pace While primarily intended for graph storage, we also use GigaSpaces as a message queue, distributed lock server and distributed scheduler 22
  • 23. Now is a good time for… Questions?COMMENTS? 23
  • 24. Endgame Experience our work! Visit Delver at http://www.delver.com/in?invite=friends-and-family Visit Sears Social at http://catalog.sears.com Read about our work at http://blog.delver.com Have anything to discuss? Contact me at tomer@delver.com Visit my blog at http://www.tomergabel.com Follow me on Twitter at http://www.twitter.com/tomerg Thank you for your time! 24

Editor's Notes

  1. Image sources (also linked):* Facebook US traffic estimates (http://www.insidefacebook.com/2011/01/03/november-2010-facebook-traffic/)* Top 20 visited websites (http://www.hitwise.com/us/datacenter/main/)
  2. Sources:Sumeet Jain: http://vator.tv/news/2010-12-27-2011-location-and-social-will-rule-commerceAndy Leaver: http://www.currybet.net/cbet_blog/2009/11/notes-and-quotes-from-ecommerc-2.phpGordon Gould: http://socialcommercetoday.com/will-2010-be-the-year-of-social-commerce/
  3. Case in point:Discovery and recommendation features: when was the last time YOU “might be interested in this product”? How accurate are the typical recommendation systems for you?Just how relevant is the typical ad or marketing campaign? When was the last time you went into Amazon and got a coupon for a truly relevant occasion or product? How tired are you of flashing banners?
  4. Public data source: http://bizinformation.ca/www.sears.com#visitors
  5. Massive amounts of data:* Imagine modeling every person on the planet (say, 6 billion). Now say each person is connected to just 100 others (a conservative estimate)Image source: http://networkweaver.blogspot.com/2010/03/overlapping-boards.html
  6. SPAR presentation: http://www.slideshare.net/jmpujol/the-little-engines-that-could-scaling-online-social-networksImage source: http://paysa09.wikispaces.com/Networks
  7. Time distribution image source: http://blog.nielsen.com/nielsenwire/global/social-norms-twitter-users-follow-the-797-rule-in-the-u-k/Twitter following distribution image source: http://www.personalizemedia.com/twitter-long-tail-broadcastization-pre-twitter-reputation/
  8. Inevitably, someone will ask: what are the problems you encountered?Barrier of entry:Ops: setting up a GigaSpaces cluster is not a hassle-free affair. Lots of work went into a robust, efficient bootstrapping procedure and we had to content with quite a few unexpected snags. I believe things are a lot better with the current version than they were a while ago. Furthermore, the overall cost of setting up and deploying GigaSpaces is significantly less than the total overhead for using specific products to tackle our various needs (compared to a traditional system, the cost of setting up e.g. MySQL+RHCS+client configuration; more likely we’d have had to use some sort of 3rd party graph storage, clustering and persistence solution)Devs: working against GigaSpacesis considerably harder than vanilla, commonplace RDBMS. To counter the barrier of entry we modeled our organization so that a core team of developers handle graph storage and data analysis, with most other teams either integrating with this subsystem or handling their own requirements with regular Hibernate/NHibernate over MySQL.Hard to handle migration paths, zero-time deployment and schema evolution. Features in 8.0 should help remedy the situation (cue Nati Shalom)