SlideShare ist ein Scribd-Unternehmen logo
1 von 19
Downloaden Sie, um offline zu lesen
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software
License, version 2.0
introducing
the Testament Architecture
● An architecture for hyper-personalised services in an internet
of things that you can use.
Robert Gibbon – be.linkedin.com/in/robertgibbon
The content of these slides is my own original thinking; or derived from information freely available
in the public domain.
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software
License, version 2.0
who am I?
● I am an independent information technology services consultant
● 15 years in the business
● 5 years doing stuff with big data
● And some more years on web-scale site management duty
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software
License, version 2.0
why did I make this deck?
I made this deck because
● I had a collection of ideas that were buzzing around in my head and I wanted to get them
out onto paper.
● Neither the concepts and technologies, nor the way they are combined and presented in
this architectural paper are related to any of my past or present clients.
● But...if you try to implement a Testament architecture and it doesn't work out for you, don't
blame me!
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software
License, version 2.0
contents
This slide set goes over
● The operational context of the Testament architecture
● The challenges to service delivery that the Testament approach prioritises
● A flythrough of the major features and technologies in a Testament implementation
● Some closing thoughts
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software
License, version 2.0
who stands to benefit from Testament?
Testament is a high level architecture blueprint. It is oriented to multifaceted consumer services that
require
● global reach
● millions of users
● multiple devices per user
● always available
● long data retention times
● processing very big datasets
Testament proposes a set of building blocks on which to found certain aspects of such a service.
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software
License, version 2.0
what challenges does Testament try to
address?
Testament prioritises these aspects of successful hyper-personalized service delivery at web scale.
● serving hyper-personalised data to millions+ concurrent users
● serving and reconciling data with split-brained services and offline-often devices
● serving “single record of truth” datums that must always be kept up to the minute
● cost-critical long term data storage and access for very big data
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software
License, version 2.0
front end: conceptually
Content Distribution Network
Global Service Center 1
User X Database Branches User Y Database Branches
User X Managed Devices
CHICAGO
AMSTERDAM
TOKYO
Global Service Center 2 Global Service Center n
Communal Edge Service Nodes User Y Managed Devices
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software
License, version 2.0
front end: logically
Distributed Filesystem
VCS, DDB, CEP
Offline-often Devices
CHICAGO
AMSTERDAM
TOKYO
VCS, DDB, CEP VCS, DDB, CEP
Hosted Application Servers Offline-often Devices
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
Standalone dbs Standalone dbs
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software
License, version 2.0
front end: exemplar physical model
XtreemFS
Git, Hbase, Storm
Sunglasses, Phones, Wristbands
CHICAGO
AMSTERDAM
TOKYO
Git, Hbase, Storm Git, Hbase, Storm
Games, eShops, Content on-demand, Social TVs, Hi-Fis, Fridges
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
SQLite files SQLite files
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software
License, version 2.0
front end: summary of the bits
Testimonies
● Are a user, session, and device bounded collection of events and facts
● eg. “A testimony of latlongs, browsing events, DNS lookups and app usage activities from Robert's phone for last
Friday”
● These testimonies are built to help better understand the user and consequently better serve the user, over time
Global Service Centers
● Handle asynchronously submitted testimonies
● Pull new testimonies from the CDN
● Automerge and tag them, eg. “Merge this testimony onto the <Robert's phone> branch and tag it <last
Friday>”
● Precompute ahead of pull requests from Edge Service Nodes for updated User Database Branches
● Run “single-version-of-the-truth” database services for those datums that must always be up to the minute, such
as authentication credentials, avatars, screen names etc.
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software
License, version 2.0
front end: summary of the bits
Content Distribution Network
● Common service backplane
● Write-locally, read-globally
● Ship User Database Branches between Global Service Centers and Edge Service Nodes
● Ship Testimonies between Edge Service Nodes and Global Service Centers
User Database Branches
● Provide a self-contained individual user database to enable hyper-personalized service delivery
● eg. attitude/trend/interest/demographic classifiers; motivators, intents and triggers; recencies; rising
and decaying trends
● Form a container for Testimonies to be backshipped via the Content Distribution Network
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software
License, version 2.0
front end: summary of the bits
Communal Edge Service Nodes and Managed Devices
● Deliver actual application services to the user
● eg. Games, grocery shopping, grocery storage, streaming radio, TV on demand, household
automation, remote power/HVAC management, social etc.
● Are two-way, in that they build and backship Testimonies, to help better understand the user
and consequently better serve the user, over time
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software
License, version 2.0
back end: conceptually
Content Distribution Network
Global Service Center 1
CHICAGO
TOKYO
AMSTERDAM
VANCOUVER
HEBRIDES
ATLANTA
Global Service Center 2 Global Service Center n
Nearline Vault 1 Nearline Vault 2 Nearline Vault n
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software
License, version 2.0
back end: logically
Distributed Filesystem
Compute Grid 1
CHICAGO
TOKYO
AMSTERDAM
VANCOUVER
HEBRIDES
ATLANTA
Compute Grid 2 Compute Grid n
Massive Array of Idle Devices Massive Array of Idle Devices Massive Array of Idle Devices
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software
License, version 2.0
back end: exemplar physical model
XtreemFS
Spark on Mesos
CHICAGO
TOKYO
AMSTERDAM
VANCOUVER
HEBRIDES
ATLANTA
Spark on Mesos Spark on Mesos
Depreciated Commodity Systems Depreciated Commodity Systems Depreciated Commodity Systems
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software
License, version 2.0
backend: summary of the bits
Global Service Centers
● Deliver the usual background batch processing services to build, refine and update apt and
timely user insights from available Testimonies, so that front-end applications can better
serve the user
● Identify Testimonies that the Global Service Centers cannot use at this moment and that are
therefore eligible to be archived to the Nearline Vault
● Eg. Analysis technology is not yet sufficiently mature, and/or Testimony content has
decayed in relevance
Content Distribution Network
● Acts as a publish locally, read remotely conduit from Global Service Centers to Nearline Vaults
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software
License, version 2.0
backend: summary of the bits
Nearline Vaults
● Load old Testimonies onto a storage device on a Depreciated Server, spin down the storage
device, and power off the Depreciated Server for long term storage
● Power up the Depreciated Server and spin up the required storage device on demand, for
retrieval of the old Testimonies in the future.
Depreciated Servers
● Old Servers that have depreciated, configured with high storage device density, often
racked and packed in self-contained DC freight containers.
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software
License, version 2.0
closing thoughts
Testament only considers a small subset of architectural facets; its really only a teaser.
There is a spectrum of architectural facets to desigining a successful hyper-personalised, web-scale service that shall
be considered, and that are not considered by Testament.
For example, User Database Branches and Testimonies must be protected and able to defend against unauthorised
access, such as from competing service providers or from malicious users.
Also, the personally identifiable link between Testimonies and the user to which they relate and the legal and ethical
rights of users to sever that link, is another facet that these slides have not considered.
Importantly, “no man is an island”, and handling Testimonies of the relationships between users has not been
discussed in this slide deck.
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software
License, version 2.0
slide deck license
Copyright 2014 Robert Gibbon
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0

Weitere ähnliche Inhalte

Ähnlich wie Testament - a blueprint for hyper-personalized services at web scale

OpenStack State of Fibre Channel
OpenStack State of Fibre ChannelOpenStack State of Fibre Channel
OpenStack State of Fibre Channelhemna6969
 
IBM MQ Light @ Capitalware's MQTC 2.0.1.4 conference
IBM MQ Light @ Capitalware's MQTC 2.0.1.4 conferenceIBM MQ Light @ Capitalware's MQTC 2.0.1.4 conference
IBM MQ Light @ Capitalware's MQTC 2.0.1.4 conferencematthew1001
 
Indefero source code_managment
Indefero source code_managmentIndefero source code_managment
Indefero source code_managmentRoger Xia
 
H2O - the optimized HTTP server
H2O - the optimized HTTP serverH2O - the optimized HTTP server
H2O - the optimized HTTP serverKazuho Oku
 
[2015-11월 정기 세미나] Cloud Native Platform - Pivotal
[2015-11월 정기 세미나] Cloud Native Platform - Pivotal[2015-11월 정기 세미나] Cloud Native Platform - Pivotal
[2015-11월 정기 세미나] Cloud Native Platform - PivotalOpenStack Korea Community
 
Overview of webSpoon @ Pentaho Bay Area Meetup
Overview of webSpoon @ Pentaho Bay Area MeetupOverview of webSpoon @ Pentaho Bay Area Meetup
Overview of webSpoon @ Pentaho Bay Area MeetupHiromu Hota
 
The Business Case for the Mobile Ecosystem - Jon Bostrom, Co-Chair OSGi Allia...
The Business Case for the Mobile Ecosystem - Jon Bostrom, Co-Chair OSGi Allia...The Business Case for the Mobile Ecosystem - Jon Bostrom, Co-Chair OSGi Allia...
The Business Case for the Mobile Ecosystem - Jon Bostrom, Co-Chair OSGi Allia...mfrancis
 
The Microservices and DevOps Journey
The Microservices and DevOps JourneyThe Microservices and DevOps Journey
The Microservices and DevOps JourneyC4Media
 
Http Services in Rust on Containers
Http Services in Rust on ContainersHttp Services in Rust on Containers
Http Services in Rust on ContainersAnton Whalley
 
Respond to the following by writing at least one paragraph for each .pdf
Respond to the following by writing at least one paragraph for each .pdfRespond to the following by writing at least one paragraph for each .pdf
Respond to the following by writing at least one paragraph for each .pdftrishacolsyn25353
 
Pivotal cf for_devops_mkim_20141209
Pivotal cf for_devops_mkim_20141209Pivotal cf for_devops_mkim_20141209
Pivotal cf for_devops_mkim_20141209minseok kim
 
Embedding Reports & Data Visualizations into Applications: JasperReports IO T...
Embedding Reports & Data Visualizations into Applications: JasperReports IO T...Embedding Reports & Data Visualizations into Applications: JasperReports IO T...
Embedding Reports & Data Visualizations into Applications: JasperReports IO T...TIBCO Jaspersoft
 
Rapid Web Development with Python for Absolute Beginners
Rapid Web Development with Python for Absolute BeginnersRapid Web Development with Python for Absolute Beginners
Rapid Web Development with Python for Absolute BeginnersFatih Karatana
 
IBM ConnectED SPOT104: Lightning-Fast Development of Native Mobile Apps for I...
IBM ConnectED SPOT104: Lightning-Fast Development of Native Mobile Apps for I...IBM ConnectED SPOT104: Lightning-Fast Development of Native Mobile Apps for I...
IBM ConnectED SPOT104: Lightning-Fast Development of Native Mobile Apps for I...darwinodb
 
BigBlueButton Platform Components
BigBlueButton Platform ComponentsBigBlueButton Platform Components
BigBlueButton Platform ComponentsRIADVICE
 
Digital Rebar Community Welcome Guide
Digital Rebar Community Welcome GuideDigital Rebar Community Welcome Guide
Digital Rebar Community Welcome GuideRackN
 
Service Discovery and Registration in a Microservices Architecture
Service Discovery and Registration in a Microservices ArchitectureService Discovery and Registration in a Microservices Architecture
Service Discovery and Registration in a Microservices ArchitecturePLUMgrid
 
Neev Open Source Contributions
Neev Open Source ContributionsNeev Open Source Contributions
Neev Open Source ContributionsNeev Technologies
 
第1回福岡SoftLayer勉強会
第1回福岡SoftLayer勉強会第1回福岡SoftLayer勉強会
第1回福岡SoftLayer勉強会Shin Sakamoto
 
PortoTechHub - Hail Hydrate! From Stream to Lake with Apache Pulsar and Friends
PortoTechHub  - Hail Hydrate! From Stream to Lake with Apache Pulsar and FriendsPortoTechHub  - Hail Hydrate! From Stream to Lake with Apache Pulsar and Friends
PortoTechHub - Hail Hydrate! From Stream to Lake with Apache Pulsar and FriendsTimothy Spann
 

Ähnlich wie Testament - a blueprint for hyper-personalized services at web scale (20)

OpenStack State of Fibre Channel
OpenStack State of Fibre ChannelOpenStack State of Fibre Channel
OpenStack State of Fibre Channel
 
IBM MQ Light @ Capitalware's MQTC 2.0.1.4 conference
IBM MQ Light @ Capitalware's MQTC 2.0.1.4 conferenceIBM MQ Light @ Capitalware's MQTC 2.0.1.4 conference
IBM MQ Light @ Capitalware's MQTC 2.0.1.4 conference
 
Indefero source code_managment
Indefero source code_managmentIndefero source code_managment
Indefero source code_managment
 
H2O - the optimized HTTP server
H2O - the optimized HTTP serverH2O - the optimized HTTP server
H2O - the optimized HTTP server
 
[2015-11월 정기 세미나] Cloud Native Platform - Pivotal
[2015-11월 정기 세미나] Cloud Native Platform - Pivotal[2015-11월 정기 세미나] Cloud Native Platform - Pivotal
[2015-11월 정기 세미나] Cloud Native Platform - Pivotal
 
Overview of webSpoon @ Pentaho Bay Area Meetup
Overview of webSpoon @ Pentaho Bay Area MeetupOverview of webSpoon @ Pentaho Bay Area Meetup
Overview of webSpoon @ Pentaho Bay Area Meetup
 
The Business Case for the Mobile Ecosystem - Jon Bostrom, Co-Chair OSGi Allia...
The Business Case for the Mobile Ecosystem - Jon Bostrom, Co-Chair OSGi Allia...The Business Case for the Mobile Ecosystem - Jon Bostrom, Co-Chair OSGi Allia...
The Business Case for the Mobile Ecosystem - Jon Bostrom, Co-Chair OSGi Allia...
 
The Microservices and DevOps Journey
The Microservices and DevOps JourneyThe Microservices and DevOps Journey
The Microservices and DevOps Journey
 
Http Services in Rust on Containers
Http Services in Rust on ContainersHttp Services in Rust on Containers
Http Services in Rust on Containers
 
Respond to the following by writing at least one paragraph for each .pdf
Respond to the following by writing at least one paragraph for each .pdfRespond to the following by writing at least one paragraph for each .pdf
Respond to the following by writing at least one paragraph for each .pdf
 
Pivotal cf for_devops_mkim_20141209
Pivotal cf for_devops_mkim_20141209Pivotal cf for_devops_mkim_20141209
Pivotal cf for_devops_mkim_20141209
 
Embedding Reports & Data Visualizations into Applications: JasperReports IO T...
Embedding Reports & Data Visualizations into Applications: JasperReports IO T...Embedding Reports & Data Visualizations into Applications: JasperReports IO T...
Embedding Reports & Data Visualizations into Applications: JasperReports IO T...
 
Rapid Web Development with Python for Absolute Beginners
Rapid Web Development with Python for Absolute BeginnersRapid Web Development with Python for Absolute Beginners
Rapid Web Development with Python for Absolute Beginners
 
IBM ConnectED SPOT104: Lightning-Fast Development of Native Mobile Apps for I...
IBM ConnectED SPOT104: Lightning-Fast Development of Native Mobile Apps for I...IBM ConnectED SPOT104: Lightning-Fast Development of Native Mobile Apps for I...
IBM ConnectED SPOT104: Lightning-Fast Development of Native Mobile Apps for I...
 
BigBlueButton Platform Components
BigBlueButton Platform ComponentsBigBlueButton Platform Components
BigBlueButton Platform Components
 
Digital Rebar Community Welcome Guide
Digital Rebar Community Welcome GuideDigital Rebar Community Welcome Guide
Digital Rebar Community Welcome Guide
 
Service Discovery and Registration in a Microservices Architecture
Service Discovery and Registration in a Microservices ArchitectureService Discovery and Registration in a Microservices Architecture
Service Discovery and Registration in a Microservices Architecture
 
Neev Open Source Contributions
Neev Open Source ContributionsNeev Open Source Contributions
Neev Open Source Contributions
 
第1回福岡SoftLayer勉強会
第1回福岡SoftLayer勉強会第1回福岡SoftLayer勉強会
第1回福岡SoftLayer勉強会
 
PortoTechHub - Hail Hydrate! From Stream to Lake with Apache Pulsar and Friends
PortoTechHub  - Hail Hydrate! From Stream to Lake with Apache Pulsar and FriendsPortoTechHub  - Hail Hydrate! From Stream to Lake with Apache Pulsar and Friends
PortoTechHub - Hail Hydrate! From Stream to Lake with Apache Pulsar and Friends
 

Kürzlich hochgeladen

AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 

Kürzlich hochgeladen (20)

AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 

Testament - a blueprint for hyper-personalized services at web scale

  • 1. Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0 introducing the Testament Architecture ● An architecture for hyper-personalised services in an internet of things that you can use. Robert Gibbon – be.linkedin.com/in/robertgibbon The content of these slides is my own original thinking; or derived from information freely available in the public domain. Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
  • 2. Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0 who am I? ● I am an independent information technology services consultant ● 15 years in the business ● 5 years doing stuff with big data ● And some more years on web-scale site management duty Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
  • 3. Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0 why did I make this deck? I made this deck because ● I had a collection of ideas that were buzzing around in my head and I wanted to get them out onto paper. ● Neither the concepts and technologies, nor the way they are combined and presented in this architectural paper are related to any of my past or present clients. ● But...if you try to implement a Testament architecture and it doesn't work out for you, don't blame me! Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
  • 4. Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0 contents This slide set goes over ● The operational context of the Testament architecture ● The challenges to service delivery that the Testament approach prioritises ● A flythrough of the major features and technologies in a Testament implementation ● Some closing thoughts Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
  • 5. Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0 who stands to benefit from Testament? Testament is a high level architecture blueprint. It is oriented to multifaceted consumer services that require ● global reach ● millions of users ● multiple devices per user ● always available ● long data retention times ● processing very big datasets Testament proposes a set of building blocks on which to found certain aspects of such a service. Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
  • 6. Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0 what challenges does Testament try to address? Testament prioritises these aspects of successful hyper-personalized service delivery at web scale. ● serving hyper-personalised data to millions+ concurrent users ● serving and reconciling data with split-brained services and offline-often devices ● serving “single record of truth” datums that must always be kept up to the minute ● cost-critical long term data storage and access for very big data Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
  • 7. Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0 front end: conceptually Content Distribution Network Global Service Center 1 User X Database Branches User Y Database Branches User X Managed Devices CHICAGO AMSTERDAM TOKYO Global Service Center 2 Global Service Center n Communal Edge Service Nodes User Y Managed Devices Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
  • 8. Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0 front end: logically Distributed Filesystem VCS, DDB, CEP Offline-often Devices CHICAGO AMSTERDAM TOKYO VCS, DDB, CEP VCS, DDB, CEP Hosted Application Servers Offline-often Devices Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0 Standalone dbs Standalone dbs
  • 9. Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0 front end: exemplar physical model XtreemFS Git, Hbase, Storm Sunglasses, Phones, Wristbands CHICAGO AMSTERDAM TOKYO Git, Hbase, Storm Git, Hbase, Storm Games, eShops, Content on-demand, Social TVs, Hi-Fis, Fridges Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0 SQLite files SQLite files
  • 10. Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0 front end: summary of the bits Testimonies ● Are a user, session, and device bounded collection of events and facts ● eg. “A testimony of latlongs, browsing events, DNS lookups and app usage activities from Robert's phone for last Friday” ● These testimonies are built to help better understand the user and consequently better serve the user, over time Global Service Centers ● Handle asynchronously submitted testimonies ● Pull new testimonies from the CDN ● Automerge and tag them, eg. “Merge this testimony onto the <Robert's phone> branch and tag it <last Friday>” ● Precompute ahead of pull requests from Edge Service Nodes for updated User Database Branches ● Run “single-version-of-the-truth” database services for those datums that must always be up to the minute, such as authentication credentials, avatars, screen names etc. Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
  • 11. Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0 front end: summary of the bits Content Distribution Network ● Common service backplane ● Write-locally, read-globally ● Ship User Database Branches between Global Service Centers and Edge Service Nodes ● Ship Testimonies between Edge Service Nodes and Global Service Centers User Database Branches ● Provide a self-contained individual user database to enable hyper-personalized service delivery ● eg. attitude/trend/interest/demographic classifiers; motivators, intents and triggers; recencies; rising and decaying trends ● Form a container for Testimonies to be backshipped via the Content Distribution Network Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
  • 12. Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0 front end: summary of the bits Communal Edge Service Nodes and Managed Devices ● Deliver actual application services to the user ● eg. Games, grocery shopping, grocery storage, streaming radio, TV on demand, household automation, remote power/HVAC management, social etc. ● Are two-way, in that they build and backship Testimonies, to help better understand the user and consequently better serve the user, over time Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
  • 13. Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0 back end: conceptually Content Distribution Network Global Service Center 1 CHICAGO TOKYO AMSTERDAM VANCOUVER HEBRIDES ATLANTA Global Service Center 2 Global Service Center n Nearline Vault 1 Nearline Vault 2 Nearline Vault n Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
  • 14. Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0 back end: logically Distributed Filesystem Compute Grid 1 CHICAGO TOKYO AMSTERDAM VANCOUVER HEBRIDES ATLANTA Compute Grid 2 Compute Grid n Massive Array of Idle Devices Massive Array of Idle Devices Massive Array of Idle Devices Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
  • 15. Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0 back end: exemplar physical model XtreemFS Spark on Mesos CHICAGO TOKYO AMSTERDAM VANCOUVER HEBRIDES ATLANTA Spark on Mesos Spark on Mesos Depreciated Commodity Systems Depreciated Commodity Systems Depreciated Commodity Systems Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
  • 16. Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0 backend: summary of the bits Global Service Centers ● Deliver the usual background batch processing services to build, refine and update apt and timely user insights from available Testimonies, so that front-end applications can better serve the user ● Identify Testimonies that the Global Service Centers cannot use at this moment and that are therefore eligible to be archived to the Nearline Vault ● Eg. Analysis technology is not yet sufficiently mature, and/or Testimony content has decayed in relevance Content Distribution Network ● Acts as a publish locally, read remotely conduit from Global Service Centers to Nearline Vaults Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
  • 17. Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0 backend: summary of the bits Nearline Vaults ● Load old Testimonies onto a storage device on a Depreciated Server, spin down the storage device, and power off the Depreciated Server for long term storage ● Power up the Depreciated Server and spin up the required storage device on demand, for retrieval of the old Testimonies in the future. Depreciated Servers ● Old Servers that have depreciated, configured with high storage device density, often racked and packed in self-contained DC freight containers. Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
  • 18. Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0 closing thoughts Testament only considers a small subset of architectural facets; its really only a teaser. There is a spectrum of architectural facets to desigining a successful hyper-personalised, web-scale service that shall be considered, and that are not considered by Testament. For example, User Database Branches and Testimonies must be protected and able to defend against unauthorised access, such as from competing service providers or from malicious users. Also, the personally identifiable link between Testimonies and the user to which they relate and the legal and ethical rights of users to sever that link, is another facet that these slides have not considered. Importantly, “no man is an island”, and handling Testimonies of the relationships between users has not been discussed in this slide deck. Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0
  • 19. Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0 slide deck license Copyright 2014 Robert Gibbon Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. Copyright 2014 Robert Gibbon. This content is licensed under the terms of the Apache Software License, version 2.0