Upload
wso2
View
111
Download
5
Tags:
Embed Size (px)
DESCRIPTION
Citation preview
Ø An eBay owned company Ø Over 25 million users and growing Ø We sell one ?cket per second Ø ~8.5 million page views a day, on an average Ø ~ 3 million addi?onal page views per day on Mobile devices Ø ~10 M ?ckets for sale in sports, concerts and others. Ø ~ 1 TB of data processed monthly by the analy?cs infrastructure
– This number will significantly go up as we bring in data from many of the unstructured data sources
Ø ~300 Million SQL execu?ons/day
Some Fun Facts about StubHub
Ø Our Business goal Ø API centric Architecture Ø Challenges Ø Our approach Ø Leveraging Big Data Platform Ø Summary
Overview
Our business goal
Make StubHub the worldwide destination for an end-to-end experience for all fans – this
includes discovery, access and sharing post event experiences
Ø We need to build an echo system and developer community to drive more traffic to our business (not necessarily website)
Ø Integrate with many partners in the life cycle of discovery and event going experience
Ø Go to places where people/apps are as opposed to expecting them all to come to our site
Ø But … Ø We had a monolithic architecture/codebase …
To achieve that goal …
Ø Our Business goal Ø API centric Architecture Ø Challenges Ø Our approach Ø Leveraging Big Data Platform Ø Summary
Overview
7
TODAY TOMMOROW
FUTURE
BriQle, hardwired and monolithic applica?on
Shared, reusable components
Domain decomposition Domain decomposition / Service Orientation
The functional interface is a contract between two blocks of lego and is referred to as a Service
Service
Ø Service Ø Internal terminology Ø Re-usable component with a well defined
functional contract
Service vs. API
Ø API
Ø Externally exposed “Service” – external developer terminology Ø Includes a developer program Ø Typically has a “func?onal” as well as a “non-‐func?onal” (e.g SLA)
contract Ø Poten?ally orchestrated across mul?ple services
API Centric Architecture
Ø An API is a business capability delivered over the network to internal or external consumers Ø Network accessible func?on Ø Available using standard web protocols Ø With well-‐defined interfaces Ø Designed for access by third-‐par?es
Ø A Managed API is:
Ø Ac?vely adver?sed and subscribe-‐able Ø Available with SLAs Ø Secured, authen?cated, authorized and protected Ø Monitored and mone?zed with analy?cs
11
API Centric Architecture - Increases Business Benefits
Ø Business agility Ø Faster ?me to market on building brand new experiences -‐ mobile,
tablet, etc. Ø Faster ?me to market on user experience changes on the site
Ø Seller Benefits Ø Sellers have flexibility to build their own customized solu?ons Ø Scales well to inventory and traffic from large brokers
Ø Buyer Benefits Ø Faster ?me to market on partner integra?ons Ø Opens new door on partner integra?ons Ø Allows developer community to extend SH fan experience
12
API Centric Architecture – Builds Scale for Organization
Ø Productivity Ø Parallel development Ø Parallel deployment Ø Reduced complexity of the code Ø Increased maintainability of the application
Ø Testability Ø Easier to automate testing for smaller components Ø Easier to identify and triage bugs Ø Increases overall quality of product
API Brands Enhance revenue
API brands build mindshare
Mindshare increases visibility
Visibility fosters discovery and evalua?on
Evalua?on triggers collabora?on and API adop?on
API adop?on builds community
Ø Our Business goal Ø API centric Architecture Ø Challenges Ø Our approach Ø Leveraging Big Data Platform Ø Summary
Overview
Challenges
Ø Changing / re-‐architec?ng a running business (mid-‐flight) Ø Consump?on paQerns are not fully baked at the ?me of building
an API Ø Dealing with cross domain calls – CORS Ø SLAs and Chargeback models aren’t clearly published / baked in
most cases Ø Preven?ng Fraudsters leveraging the API, and impersona?ng
and collec?ng confiden?al data Ø Products in this space are Maturing and constantly evolving
Ø Our Business goal Ø API centric Architecture Ø Challenges Ø Our approach Ø Leveraging Big Data Platform Ø Summary
Overview
Ø Do the domain decomposi?on and build the APIs, with a thin UI layer for crea?ng experiences
Ø Re-‐Build Na?ve mobile apps and a unified experience for mobile and desktop
Ø Use WSO2 ESB and API Manager to Publish, Protect and manage the APIs Ø For CORS problem
Ø Using a combina?on of F5 rules and API gateway mediators to support CORS protocol
Ø For Fraud preven?on Ø Use risk scores and profiles based on contextual data sent along with API requests Ø Analysis of the paQerns using Big Data plaform
Approach overview
Approach to domain decomposition
User Inventory
Catalog
Search Purchase
Reco Payment
Domains
Ideal decomposition Intersection of any two domains = 0
Sum of all domains = StubHub / Enterprise
Stubhub as an enterprise
Service
Domain Meta Model
*In this diagram Functional Domain = Functional Area Domain Architect = Architect responsible for a Functional Area Domain Model = “Domain Model” for “Stubhub
End-‐state Architecture
Purchase Inventory Account Mgmt Fulfillment Services/
APIs layer
Data en<ty services (user, events, <ckets) with caching Data Access Layer
Presenta<on layer
Website mWeb Mobile Apps Partner Apps
Data
API gateway
User Others
APIs allow innovation, business agility and operational excellence
WSO2 API Gateway: Roles & Functions
Publisher Store / Subscriber
Identity Server Gateway
² API - CRUD ² API Lifecycle
² Manage Apps ² Subscribe To APIs ² Generate App
Keys
² User Authentication ² Key Management ² JWT Assertion
² Routing Rules ² Rate Limiting ² Authorization
Ø Our Business goal Ø API centric Architecture Ø Challenges Ø Our approach Ø Leveraging Big Data Platform Ø Summary
Overview
APIs needed for these use cases
Personaliza<on / Recommenda<ons • Buyer Recommenda?ons: Personalized experience • Seller Recommenda?ons Ticket Pricing
Social Interac<ons • Support an enriched experience for a Fan for the complete event life cycle – from
discovery to access to post event experience. Business Analy<cs
• Making data available for tradi?onal business analy?cs repor?ng, including fraud analysis
Customer 360 / Insights • A mul?-‐faceted view of a customer, including buying and / or selling preferences,
sea?ng preferences, pricing preferences, preferred events, friends, likes/dislikes, transac?on history etc.
Ø Many external and internal data sources Ø Both structured, semi-‐structured as well as unstructured data Ø Feeding the aggregate data back into OLTP environment as real-‐
?me as possible Ø Aggregate data is served through the tradi?onal EDW, but not
all data (e.g. graphs) can be represented there. Ø Building a platform for the future while continuing to
support existing platform/tools Ø Re-platforming a 10 year old data platform patched up
over the years
Challenges
Ø Structured Ø Transactional Data (orders, listings) Ø Catalog data Ø CS / Siebel HR data
Ø Semi to Unstructured Ø Click stream data Ø External user segmentation data Ø External survey data Ø Email data Ø Social data Ø Meta classification data Ø Referral data
Few Example data sources
Big Data Platform enabling APIs
ETL Data Adapter
1 Data
Adapter 2 Data
Adapter N
EDW
Data Sources: Structured / Unstructured
Transac<ons Click Stream Social weblogs Catalog …….
Hive oozie Pig
HDFS Mahout
sqoop MapReduce
HBase
Solr
Big Data Platform
Solr
HBase
Website/Mobile apps/partner apps
Reco svc
other Replication
OLTP world
Analytics world
Analytics engine (R / Mahout)
BI Tools
Sandbox data
Replication
Ø Our Business goal Ø API centric Architecture Ø Challenges Ø Our approach Ø Leveraging Big Data Platform Ø Summary
Overview
• Building on domain models and API centric architecture is a key enabler for business agility and growth
• But there are challenges, as is the case with any ini?a?ve. The good news is that you are not alone.
• Most of the challenges can be overcome. Need to follow quick “test and learn” itera?ve approach.
• Laying down a solid founda?onal architecture upfront helps to a great extent.
• Leveraging Big Data comes in handy for many use cases, and helps provide appropriate data through the API
Summary