WSO2Con US 2013 - Keynote: APIs Driving the Stubhub Business

1,152 views
1,013 views

Published on

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,152
On SlideShare
0
From Embeds
0
Number of Embeds
190
Actions
Shares
0
Downloads
57
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

WSO2Con US 2013 - Keynote: APIs Driving the Stubhub Business

  1. 1. APIs driving StubHub Business   Sastry  Malladi   Chief  Architect   StubHub  
  2. 2. Some Fun Facts about StubHub 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   Ø  Ø  Ø  Ø  Ø  Ø  Ø 
  3. 3. Overview Ø  Our Business goal Ø  API centric Architecture Ø  Challenges Ø  Our approach Ø  Leveraging Big Data Platform Ø  Summary
  4. 4. 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
  5. 5. To achieve that goal … Ø  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 …
  6. 6. Overview Ø  Our Business goal Ø  API centric Architecture Ø  Challenges Ø  Our approach Ø  Leveraging Big Data Platform Ø  Summary
  7. 7. Domain decomposition Domain decomposition / Service Orientation BriQle,  hardwired  and  monolithic   applica?on   Shared,  reusable  components   TOMMOROW TODAY 7 FUTURE
  8. 8. Service The functional interface is a contract between two blocks of lego and is referred to as a Service
  9. 9. Service vs. API Ø  Service   Ø  Internal terminology Ø  Re-usable component with a well defined functional contract Ø  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  
  10. 10. 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. 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. 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
  13. 13. API Brands Enhance revenue API  brands  build   mindshare   API  adop?on  builds   community   Mindshare   increases  visibility   Evalua?on  triggers   collabora?on  and   API  adop?on   Visibility  fosters   discovery  and   evalua?on  
  14. 14. Overview Ø  Our Business goal Ø  API centric Architecture Ø  Challenges Ø  Our approach Ø  Leveraging Big Data Platform Ø  Summary
  15. 15. 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    
  16. 16. Overview Ø  Our Business goal Ø  API centric Architecture Ø  Challenges Ø  Our approach Ø  Leveraging Big Data Platform Ø  Summary
  17. 17. Approach 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  
  18. 18. Approach to domain decomposition Domains          Inventory   User   Service Catalog   Search   Reco   Stubhub as an enterprise Purchase   Payment   Ideal decomposition Intersection of any two domains = 0 Sum of all domains = StubHub / Enterprise
  19. 19. Domain Meta Model *In this diagram Functional Domain = Functional Area Domain Architect = Architect responsible for a Functional Area Domain Model = “Domain Model” for “Stubhub
  20. 20. Domain Model: Functional view
  21. 21. End-­‐state  Architecture   Presenta<on   layer   Website   mWeb   Mobile  Apps    Partner    Apps   API  gateway   Services/   APIs  layer   Data  Access     Layer   Purchase   Inventory   Account   Mgmt      Fulfillment   User   Data  en<ty  services  (user,  events,  <ckets)  with  caching   APIs allow innovation, business agility and operational excellence Data     Others  
  22. 22. WSO2 API Gateway: Roles & Functions ²  API - CRUD ²  API Lifecycle ²  User Authentication ²  Key Management ²  JWT Assertion Publisher Identity Server Store / Subscriber Gateway ²  Manage Apps ²  Subscribe To APIs ²  Generate App Keys ²  Routing Rules ²  Rate Limiting ²  Authorization  
  23. 23. External API Invocations
  24. 24. Developer portal
  25. 25. Overview Ø  Our Business goal Ø  API centric Architecture Ø  Challenges Ø  Our approach Ø  Leveraging Big Data Platform Ø  Summary
  26. 26. 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.  
  27. 27. Challenges Ø  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
  28. 28. Few Example data sources Ø  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
  29. 29. Big Data Platform enabling APIs OLTP world Website/Mobile  apps/partner   apps   Solr   Reco svc HBase   other   Solr   oozie   sqoop   Mahout   Hive   HDFS   Data  Adapter   1   Replication Pig   MapReduce   HBase   EDW   Data   Adapter  2   Data   Adapter  N   Data  Sources:  Structured  /  Unstructured   Transac<ons      Click  Stream    Social        weblogs        Catalog      …….   Big Data Platform BI Tools ETL   Replication Analytics engine (R / Mahout) Sandbox data Analytics world
  30. 30. Overview Ø  Our Business goal Ø  API centric Architecture Ø  Challenges Ø  Our approach Ø  Leveraging Big Data Platform Ø  Summary
  31. 31. Summary •  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  
  32. 32. Thank  you  !   smalladi@stubhub.com   Questions ?

×