Datadog permet de créer des métriques automatiques à partir d’événements d’observabilité front-end (Real User Monitoring). Par exemple, compter les sessions utilisateurs qui passent par la page d’un produit puis qui finissent par l’acheter après avoir vu les avis.
Dans ce talk, nous allons voir comment le backend du produit RUM fait pour compter des documents qui évoluent dans le temps, tout en supportant une volumétrie à l’échelle de 100% du trafic de nos clients.
On parlera donc de flot d’ingestion basé Kafka, de dé-duplication d’événements et d’agrégation de métriques à grande échelle via des structures de données probabilistes ou approximatives, et comment le backend RUM associe toutes ces techniques pour offrir une solution flexible et hautement scalable.
Au cours de cette session, nous plongerons avec vous dans le quotidien d’une startup qui vient de se lancer sur le Net.
Alors que les premiers utilisateurs affluent vers ses serveurs, l’équipe se retrouve confrontée à ses premiers problèmes de performance. Le prix du succès… ! Nous verrons avec eux comment simuler une arrivée massive d’utilisateurs pour “stresser” leur plateforme. Nous utiliserons les outils d’APM pour monitorer les serveurs et applications Java mais aussi évaluer l’expérience utilisateur. Enfin, nous proposerons une démarche et des outils pour tester la performance en continue.
Avec de nombreuses démos en live, cette session en français s’adresse aux développeurs, architectes et décideurs sur les projets IT.
Animé avec Landry DEFO KUATE (OCTO)
Présentation et deep dive de Microsoft Advanced Threat Analytics
Cette présentation à était donnée par moi même lors du MS cloud Summit 2017 à Paris.
Cette présentation présente la solution, vous donne toute les bonne pratique pour l’aspect installation, design, déploiement et opérations.
Merci :)
Seyfallah Tagrerout
Les équipes de développement se tournent de plus en plus vers des architectures orientées conteneurs.
Une fois les POCs validés, il faut songer à la mise en production de ces solutions. Jonathan est administrateur systéme, il a mis en place et exploité des solutions conteneurisées dont certaines architectures dites ‘star wars’ (cf Devoxx 2015). Jean-Pascal est développeur backend, il a développé Kodo Kojo, une solution de provisionning d’usine logicielle fortement basée sur des conteneurs.
Au cours de cette présentation, ils vont vous présenter les solutions permettant de connaître l’état de vos clusters de conteneurs à un instant T.
3 Microsoft Advanced Threat Analytics - GenèveaOS Community
Session qui va décrire et présenter la technologie Azure Site Recovery. Ce service dans Azure propose un PRA pour les systèmes d'informations avec comme source plusieurs technologies ( Hyper-V , VMware) cette session va présenter ASR dans les moindres détails en passant par la phase design , déploiement et administration.
Cette session propoe de découvrir via des études de cas, comment la mise en oeuvre de System Center Operations Manager et d'Orchestrator vont permettre aux équipes d'expliotation d'améliorer leur qualité de service
Bonitasoft - Vue générale de l’architecture de la plateforme BonitaBonitasoft
Vous découvrez Bonita ? Ou peut être avez vous déjà eu l’occasion de réaliser une première application ? Quelque soit votre niveau d’expertise sur la plateforme Bonita, cette présentation va vous permettre d’avoir un aperçu de ce que Bonita permet de faire.
Au cours de cette session, nous plongerons avec vous dans le quotidien d’une startup qui vient de se lancer sur le Net.
Alors que les premiers utilisateurs affluent vers ses serveurs, l’équipe se retrouve confrontée à ses premiers problèmes de performance. Le prix du succès… ! Nous verrons avec eux comment simuler une arrivée massive d’utilisateurs pour “stresser” leur plateforme. Nous utiliserons les outils d’APM pour monitorer les serveurs et applications Java mais aussi évaluer l’expérience utilisateur. Enfin, nous proposerons une démarche et des outils pour tester la performance en continue.
Avec de nombreuses démos en live, cette session en français s’adresse aux développeurs, architectes et décideurs sur les projets IT.
Animé avec Landry DEFO KUATE (OCTO)
Présentation et deep dive de Microsoft Advanced Threat Analytics
Cette présentation à était donnée par moi même lors du MS cloud Summit 2017 à Paris.
Cette présentation présente la solution, vous donne toute les bonne pratique pour l’aspect installation, design, déploiement et opérations.
Merci :)
Seyfallah Tagrerout
Les équipes de développement se tournent de plus en plus vers des architectures orientées conteneurs.
Une fois les POCs validés, il faut songer à la mise en production de ces solutions. Jonathan est administrateur systéme, il a mis en place et exploité des solutions conteneurisées dont certaines architectures dites ‘star wars’ (cf Devoxx 2015). Jean-Pascal est développeur backend, il a développé Kodo Kojo, une solution de provisionning d’usine logicielle fortement basée sur des conteneurs.
Au cours de cette présentation, ils vont vous présenter les solutions permettant de connaître l’état de vos clusters de conteneurs à un instant T.
3 Microsoft Advanced Threat Analytics - GenèveaOS Community
Session qui va décrire et présenter la technologie Azure Site Recovery. Ce service dans Azure propose un PRA pour les systèmes d'informations avec comme source plusieurs technologies ( Hyper-V , VMware) cette session va présenter ASR dans les moindres détails en passant par la phase design , déploiement et administration.
Cette session propoe de découvrir via des études de cas, comment la mise en oeuvre de System Center Operations Manager et d'Orchestrator vont permettre aux équipes d'expliotation d'améliorer leur qualité de service
Bonitasoft - Vue générale de l’architecture de la plateforme BonitaBonitasoft
Vous découvrez Bonita ? Ou peut être avez vous déjà eu l’occasion de réaliser une première application ? Quelque soit votre niveau d’expertise sur la plateforme Bonita, cette présentation va vous permettre d’avoir un aperçu de ce que Bonita permet de faire.
Denodo, pilier central de votre stratégie APIDenodo
https://bit.ly/2TGvsG9
L'une des idées fondamentales derrière la virtualisation des données est le découplage des sources de données avec les méthodes de consommation. Pourquoi le besoin en requêtes de données dans JSON sur HTTP devrait-il nécessiter du développement supplémentaire? Denodo fournit un accès immédiat à ses ensembles de données via REST, OData 4, GeoJSON et d'autres protocoles, sans codage requis. Facile à faire évoluer, cloud-compatible et directement intégrable aux plateformes de gestion d'API, Denodo est l'outil idéal pour réussir votre stratégie API !
Dans cette session, nous aborderons les points suivants :
- Le rôle de Denodo dans une stratégie API
- L’intégration entre Denodo et les autres éléments du stack API, comme les plateformes de gestion d'API
- La facilité d'accès à Denodo en tant que fournisseur d’API REST
- Les options avancées des services Web Denodo: authentification via OAuth ou SAML, documentation OpenAPI, capacités géographiques, etc.
Rudder is an easy to use, web-driven, role-based solution for IT Infrastructure Automation and Compliance. With a focus on continuously checking configurations and centralising real-time status data, Rudder can show a high-level summary (“ISO 27001 rules are at 100%!”) and break down noncompliance issues to a deep technical level (“Host prod-web-03: SSH server configuration allows root logins”).
A few things that make Rudder stand out:
- A simple framework allows you to extend the built-in rules to implement specific low-level configuration patterns, however complex they may be, using simple building blocks (“ensure package installed in version X,” “ensure file content,” “ensure line in file,” etc.). A graphical builder lowers the technical level required to use this.
- Each policy can be independently set to be automatically checked or enforced on a policy or host level. In Enforce mode, each remediation action is recorded, showing the value of these invisible fixes.
- Rudder works on almost every kind of device, so you’ll be managing physical and virtual servers in the data center, cloud instances, and embedded IoT devices in the same way.
- Rudder is designed for critical environments where a security breach can mean more than a blip in the sales stats. Built-in features include change requests, audit logs, and strong authentication.
- Rudder relies on an agent that needs to be installed on all hosts to audit. The agent is very lightweight (10 to 20 MB of RAM at peak) and blazingly fast (it’s written in C and takes less than 10 seconds to verify 100 rules). Installation is self-contained, via a single package, and can auto-update to limit agent management burden.
- Rudder is a true and professional open source solution—the team behind Rudder doesn’t believe in the dual-speed licensing approach that makes you reinstall everything and promotes open source as little more than a “demo version.”
Rudder is an established project with several 10000s of node managed, in companies from small to biggest-in-their-field. Typical deployments manage 100s to 1000s of nodes. The biggest known deployment in 2016 is about 7000 nodes.
Sql Saturday Paris 2016 - De StreamInsight à Azure Stream Analytics Marius Zaharia
Le chemin du CEP (Complex Event Processing) vers le Cloud - de StreamInsight à Azure Stream Analytics. Concepte de traitement d'évènements en temps réel et CEP as a Service dans Azure.
REX Cassandra et Spark au service de la musique en ligne (Français)DataStax Academy
Lors de cette session vous sera présenté le business case et son contexte d'entreprise, avant de rentrer plus en détail dans la démarche suivie en phase de PoC, puis construction de la plateforme cible, en termes de :
• Infrastructure en mode Cloud
• Stack logicielle
• Architecture applicative
• Flux de données
• Dimensions, mesures et performances
Pour finir avec quelques conseils et leçons apprises du projet.
Migration des réseaux d agence : les apports de Windows Server 2012 R2Microsoft
Dans cette session, vous découvrirez comment Windows Server 2012 et 2012 R2 couplé à System Center 2012 R2 vous permet de gérer en central vos environnements d’agence. Nous aborderons en particulier les sujets de la virtualisation, orchestration, supervision, gestion de configuration, sauvegarde et le traitement des impressions en agence.
Speakers : Nicolas Escalas (Alfun), Jean-Marie Savin (Microsoft)
Competitic - Hebergement - numerique en entreprise 2015COMPETITIC
Choisir son hébergeur de site internet, connaître les critères importants pour choisir l'offre la plus adaptée, bien border les contrats pour avoir les meilleures garanties.
Pour bénéficier pleinement du Cloud Computing, les entreprises doivent développer une infrastructure hautement performante et robuste. Le nuage public ou privé repose sur les mêmes composants: réseaux haut débit et centres informatiques sécurisés, mutualisation des ressources informatiques, virtualisation et automatisation, services à la demande et facturation à l’usage. Découvrez dans cette session Microsoft Private Cloud : la vision et les solutions proposées par Microsoft avec Windows Server 2012 Hyper-V et System Center 2012 pour faire évoluer votre infrastructure vers un centre de services.
#OSSPARIS19 - Stream processing : de la base de données classique au streamin...Paris Open Source Summit
#Data management & #Blockchain - Track - Data : from stream processing to data lakes and data science
Toute organisation a un système d’information réparti sur un nombre d’applications plus ou moins important. Aujourd’hui elle cherche à obtenir une vision homogène, fédérée, quasi temps réel de son activité, si bien que nous avons des demandes client pour lesquelles il est question de fournir aux métiers une information « instantanée » et non plus vielle de 5 minutes !
Capturer les changements dans les bases de données, le CDC, cela existe depuis longtemps, mais avec une mise en œuvre ô combien complexe, et couteuse en performance !
Debezium est une plateforme distribuée et open source dédié au CDC. Sa simplicité de mise en œuvre, son ouverture (open source, multi bases de données, multi plateformes de streaming…), ses performances la rendent unique et la placent telle une brique incontournable du système d’information. Avec Debezium, les métiers vont enfin avoir des indicateurs de leurs processus instantanément, couvrant ainsi de nombreux cas d’usage (personnalisation client, audit, vision client 360° instantanée, monitoring temps réel...)
Notre talk a pour but de faire connaître Debezium, une couche manquante à Apache Kafka pour mieux dialoguer avec les systèmes d’information actuels (legacy) et apporter du « streaming » aux bases de données classiques.
L’explosion des objets connectés dans notre quotidien oblige le modèle de l’intégration à s’adapter. Les problématiques ne sont plus les mêmes, on passe d’une intégration déclarative à prescriptive, capable d’observer des comportements selon différentes facettes. Quelles sont les réponses de Microsoft ?
"Comment administrer ses OS et applications Microsoft et ses serveurs HP ProLiant depuis MS System Center uniquement. Gagnez en simlicité et en efficacité". Session présentée par le partenaire : HP.
Speakers : Olivier Petit (HP)
AWS Summit Paris - Track 4 - Session 2 - Migration Cloud, modernisation des a...Amazon Web Services
Avec le cloud la vitesse, l’agilité et le coûts des projets informatiques ont radicalement évolué.
Pour les enterprises, la stratégie et la vitesse de migration sont capitales pour tirer des bénéfices rapidement, innover et se différencier des autres acteurs. Dans cette session, nous couvrirons les éléments clef de migration vers le Cloud AWS.
Denodo, pilier central de votre stratégie APIDenodo
https://bit.ly/2TGvsG9
L'une des idées fondamentales derrière la virtualisation des données est le découplage des sources de données avec les méthodes de consommation. Pourquoi le besoin en requêtes de données dans JSON sur HTTP devrait-il nécessiter du développement supplémentaire? Denodo fournit un accès immédiat à ses ensembles de données via REST, OData 4, GeoJSON et d'autres protocoles, sans codage requis. Facile à faire évoluer, cloud-compatible et directement intégrable aux plateformes de gestion d'API, Denodo est l'outil idéal pour réussir votre stratégie API !
Dans cette session, nous aborderons les points suivants :
- Le rôle de Denodo dans une stratégie API
- L’intégration entre Denodo et les autres éléments du stack API, comme les plateformes de gestion d'API
- La facilité d'accès à Denodo en tant que fournisseur d’API REST
- Les options avancées des services Web Denodo: authentification via OAuth ou SAML, documentation OpenAPI, capacités géographiques, etc.
Rudder is an easy to use, web-driven, role-based solution for IT Infrastructure Automation and Compliance. With a focus on continuously checking configurations and centralising real-time status data, Rudder can show a high-level summary (“ISO 27001 rules are at 100%!”) and break down noncompliance issues to a deep technical level (“Host prod-web-03: SSH server configuration allows root logins”).
A few things that make Rudder stand out:
- A simple framework allows you to extend the built-in rules to implement specific low-level configuration patterns, however complex they may be, using simple building blocks (“ensure package installed in version X,” “ensure file content,” “ensure line in file,” etc.). A graphical builder lowers the technical level required to use this.
- Each policy can be independently set to be automatically checked or enforced on a policy or host level. In Enforce mode, each remediation action is recorded, showing the value of these invisible fixes.
- Rudder works on almost every kind of device, so you’ll be managing physical and virtual servers in the data center, cloud instances, and embedded IoT devices in the same way.
- Rudder is designed for critical environments where a security breach can mean more than a blip in the sales stats. Built-in features include change requests, audit logs, and strong authentication.
- Rudder relies on an agent that needs to be installed on all hosts to audit. The agent is very lightweight (10 to 20 MB of RAM at peak) and blazingly fast (it’s written in C and takes less than 10 seconds to verify 100 rules). Installation is self-contained, via a single package, and can auto-update to limit agent management burden.
- Rudder is a true and professional open source solution—the team behind Rudder doesn’t believe in the dual-speed licensing approach that makes you reinstall everything and promotes open source as little more than a “demo version.”
Rudder is an established project with several 10000s of node managed, in companies from small to biggest-in-their-field. Typical deployments manage 100s to 1000s of nodes. The biggest known deployment in 2016 is about 7000 nodes.
Sql Saturday Paris 2016 - De StreamInsight à Azure Stream Analytics Marius Zaharia
Le chemin du CEP (Complex Event Processing) vers le Cloud - de StreamInsight à Azure Stream Analytics. Concepte de traitement d'évènements en temps réel et CEP as a Service dans Azure.
REX Cassandra et Spark au service de la musique en ligne (Français)DataStax Academy
Lors de cette session vous sera présenté le business case et son contexte d'entreprise, avant de rentrer plus en détail dans la démarche suivie en phase de PoC, puis construction de la plateforme cible, en termes de :
• Infrastructure en mode Cloud
• Stack logicielle
• Architecture applicative
• Flux de données
• Dimensions, mesures et performances
Pour finir avec quelques conseils et leçons apprises du projet.
Migration des réseaux d agence : les apports de Windows Server 2012 R2Microsoft
Dans cette session, vous découvrirez comment Windows Server 2012 et 2012 R2 couplé à System Center 2012 R2 vous permet de gérer en central vos environnements d’agence. Nous aborderons en particulier les sujets de la virtualisation, orchestration, supervision, gestion de configuration, sauvegarde et le traitement des impressions en agence.
Speakers : Nicolas Escalas (Alfun), Jean-Marie Savin (Microsoft)
Competitic - Hebergement - numerique en entreprise 2015COMPETITIC
Choisir son hébergeur de site internet, connaître les critères importants pour choisir l'offre la plus adaptée, bien border les contrats pour avoir les meilleures garanties.
Pour bénéficier pleinement du Cloud Computing, les entreprises doivent développer une infrastructure hautement performante et robuste. Le nuage public ou privé repose sur les mêmes composants: réseaux haut débit et centres informatiques sécurisés, mutualisation des ressources informatiques, virtualisation et automatisation, services à la demande et facturation à l’usage. Découvrez dans cette session Microsoft Private Cloud : la vision et les solutions proposées par Microsoft avec Windows Server 2012 Hyper-V et System Center 2012 pour faire évoluer votre infrastructure vers un centre de services.
#OSSPARIS19 - Stream processing : de la base de données classique au streamin...Paris Open Source Summit
#Data management & #Blockchain - Track - Data : from stream processing to data lakes and data science
Toute organisation a un système d’information réparti sur un nombre d’applications plus ou moins important. Aujourd’hui elle cherche à obtenir une vision homogène, fédérée, quasi temps réel de son activité, si bien que nous avons des demandes client pour lesquelles il est question de fournir aux métiers une information « instantanée » et non plus vielle de 5 minutes !
Capturer les changements dans les bases de données, le CDC, cela existe depuis longtemps, mais avec une mise en œuvre ô combien complexe, et couteuse en performance !
Debezium est une plateforme distribuée et open source dédié au CDC. Sa simplicité de mise en œuvre, son ouverture (open source, multi bases de données, multi plateformes de streaming…), ses performances la rendent unique et la placent telle une brique incontournable du système d’information. Avec Debezium, les métiers vont enfin avoir des indicateurs de leurs processus instantanément, couvrant ainsi de nombreux cas d’usage (personnalisation client, audit, vision client 360° instantanée, monitoring temps réel...)
Notre talk a pour but de faire connaître Debezium, une couche manquante à Apache Kafka pour mieux dialoguer avec les systèmes d’information actuels (legacy) et apporter du « streaming » aux bases de données classiques.
L’explosion des objets connectés dans notre quotidien oblige le modèle de l’intégration à s’adapter. Les problématiques ne sont plus les mêmes, on passe d’une intégration déclarative à prescriptive, capable d’observer des comportements selon différentes facettes. Quelles sont les réponses de Microsoft ?
"Comment administrer ses OS et applications Microsoft et ses serveurs HP ProLiant depuis MS System Center uniquement. Gagnez en simlicité et en efficacité". Session présentée par le partenaire : HP.
Speakers : Olivier Petit (HP)
AWS Summit Paris - Track 4 - Session 2 - Migration Cloud, modernisation des a...Amazon Web Services
Avec le cloud la vitesse, l’agilité et le coûts des projets informatiques ont radicalement évolué.
Pour les enterprises, la stratégie et la vitesse de migration sont capitales pour tirer des bénéfices rapidement, innover et se différencier des autres acteurs. Dans cette session, nous couvrirons les éléments clef de migration vers le Cloud AWS.
3. 3
Logiques métier
standards
High Scale
Distributed Systems
Difficultés
CAP Theorem, Eventual
Consistency, Shared states,
Streaming, Network, Other
teams, etc
Difficultés
No data loss, Spike surges,
keeping a state, migrations,
slow rollout, profiling, etc
Difficultés
Comprendre le client, sortir un
MVP, itérer sur des
fonctionnalités, etc
9. 9
600+ INTEGRATIONS
Containers
Serverless
Network
Performance
Monitoring
Network Device
Monitoring
Cloud Cost
Management
Distributed
Tracing
Universal Service
Monitoring
Continuous
Profiler
Database
Monitoring
Data Streams
Monitoring
Synthetics
Real User
Monitoring
Session Replay
Error Tracking
Observability
Pipelines
Sensitive
Data Scanner
Audit Trails
Log Forwarding
Cloud Security
Management
Application
Security
Management
Cloud SIEM
Infrastructure
Monitoring
Application
Performance
Monitoring
Digital Experience
Monitoring
Log
Management
Security
CI Visibility
Continuous
Testing
Software
Delivery
Shared Platform Services
Collaboration ● Dashboards ● Mobile ● Agents ● Notebook ● Workflows ● Open Telemetry ● Service Catalog
UNIFIED METRICS, LOGS, TRACES
Watchdog AI
Insights ● Impact Analysis ● Root Cause Analysis ● Anomaly Detection ● Alerts ● Correlation ● Optimizations
10. 10
600+ INTEGRATIONS
Containers
Serverless
Network
Performance
Monitoring
Network Device
Monitoring
Cloud Cost
Management
Distributed
Tracing
Universal Service
Monitoring
Continuous
Profiler
Database
Monitoring
Data Streams
Monitoring
Synthetics
Real User
Monitoring
Session Replay
Error Tracking
Observability
Pipelines
Sensitive
Data Scanner
Audit Trails
Log Forwarding
Cloud Security
Management
Application
Security
Management
Cloud SIEM
Infrastructure
Monitoring
Application
Performance
Monitoring
Digital Experience
Monitoring
Log
Management
Security
CI Visibility
Continuous
Testing
Software
Delivery
Shared Platform Services
Collaboration ● Dashboards ● Mobile ● Agents ● Notebook ● Workflows ● Open Telemetry ● Service Catalog
UNIFIED METRICS, LOGS, TRACES
Watchdog AI
Insights ● Impact Analysis ● Root Cause Analysis ● Anomaly Detection ● Alerts ● Correlation ● Optimizations
11. Real User Monitoring - Observabilité d’utilisateurs réels
11
Le pitch :
Datadog’s Real User Monitoring (RUM) gives you
end-to-end visibility into the real-time activity
and experience of individual users.
12. Real User Monitoring - Observabilité d’utilisateurs réels
12
Error
Management
Performance
Monitoring
Customer
Support
Usage
& Analytics
16. Mobile SDK
Browser SDK
Datadog RUM Backend
Intake Query
Real User
on Customer’s
Mobile App
Real User
on Customer’s
Web App
Datadog Web UI
DD Customer
*slaps hood*
That can fit so
many events
Backend specs:
● Ingesting events reliably at scale through HTTP
● Handling streams of data points
● Storing events at scale
● Querying and aggregating events at scale
● A lot of at least once guarantees
16
23. Recap
23
Real User Monitoring (RUM)
• Observabilité Frontend
• Web ou Mobile
• Pour APM, Product Analytics,
Support et Error Tracking
Kafka
• Système de gestion de flux
(streaming)
• Append-only Event-Store
Datadog
• Plateforme d’observabilité
Fonctions :
• Collecter des signaux variés
• Comprendre ce qui se passe
• Être alerté en cas de problèmes
Fonctions :
• Comprendre ce qui se passe
• Comprendre ses utilisateurs
• Être alerté en cas de problèmes
Fonctions :
• Stocker fiablement ses
événements
• Créer des pipelines
• Partitionner ses flux
25. RUM to Metrics
“Compter le nombre de vues utilisateur avec au moins une erreur”
“Mesurer la distribution des temps de chargement par version”
“Compter le nombre d’utilisateurs ayant utilisé tel ou tel produit”
“Mesurer la distribution du nombre de temps passé sur une page”
25
36. Événements
Structurés
Metrics
Platform
Metric
Definitions
Connait
Pourquoi c’est pas si dur
Aggregation
Envelope
Si l'événement correspond à
“type:error browser.name:chrome” +1 sur “metric.name” avec tag
“view.name:/cart” au timestamp 66
type:error
view.name:/cart
browser.name:chrome
ts:66
36
Event to Metrics
Event to Metrics
Event to Metrics
38. Event to Metrics
Event to Metrics
Event to Metrics
Événements
Structurés
Metrics
Platform
Metric
Definitions
Connait
Pourquoi c’est un peu plus dur
●
S
e
s
s
i
o
n
s
●
V
i
e
w
s
Aggregation
Envelope
Si l'événement correspond à
“type:session browser.name:chrome” +1 sur “metric.name” au ts:$ts
ET LES MISES À
JOUR ?
38
39. 39
High Scale Resilience
Bazillion points per day - Maintenance - Migrations
Service Level Objective
5 millions événements / seconde par cluster
Low Latency (Alertes et Visualisations)
Ces métriques sont utilisées par des alertes, qui doivent sonner quand il faut et pas quand il faut
pas.
Pourquoi c’est juste dur
41. Événements
Structurés
Event to Metrics
Reducer Metrics
Platform
Metric
Definitions
Connait
Marquer ce qu’on compte
●
S
e
s
s
i
o
n
s
●
V
i
e
w
s
Aggregation
Envelope
State
KV Store
(RocksDB)
41
42. Événements
Structurés
Event to Metrics
Reducer Metrics
Platform
Metric
Definitions
Connait
Marquer ce qu’on compte
Aggregation
Envelope
State
type:session
Id:42
version:3
ts:66
+1 sur “metric.name” au ts:66
KV Store
42
V3
43. Événements
Structurés
Event to Metrics
Reducer Metrics
Platform
Metric
Definitions
Connait
Se rappeler de ce qu’on a déjà compté
Aggregation
Envelope
State
type:session
id:42
version:4
ts:66
KV Store
43
V4
44. Événements
Structurés
Event to Metrics
Reducer Metrics
Platform
Metric
Definitions
Connait
Se rappeler de ce qu’on a déjà compté
Aggregation
Envelope
State
type:session
id:42
version:4
ts:66
KV Store
44
V4
47. Événements
Pour métriques
stateful
Event to Metrics
Reducer Metrics
Platform
Metric
Definitions
Connait
Traffic partitionné = State plus réaliste
●
S
e
s
s
i
o
n
s
●
V
i
e
w
s
Aggregation
Envelope
State
KV Store
47
48. Événements
Pour métriques
stateful
Event to Metrics
Reducer Metrics
Platform
Metric
Definitions
Connait
Traffic partitionné = State plus réaliste
●
S
e
s
s
i
o
n
s
●
V
i
e
w
s
Aggregation
Envelope
State
KV Store
48
49. State
6 5 4 3 2 1 0
Checkpointing
Checkpoint: Association d’un state et d’un offset Kafka
On peut périodiquement sauver le checkpoint quelque part.
Check
point
Au redémarrage, on charge le dernier checkpoint :
● Charger le state
● On rembobine depuis l’offset où a
été fait le state.
49
50. State
A B C A B D A
Checkpointing
Checkpoint: Association d’un state et d’un offset Kafka
On peut périodiquement sauver le checkpoint quelque part.
Check
point
Au redémarrage, on charge le dernier checkpoint :
● Charger le state
● On rembobine depuis l’offset où a
été fait le state.
50
51. State
6 5 4 3 2 1 0
Check
point
Event to Metrics
Reducer
Sur-comptage lors du re-processing
51
53. Événements
Pour métriques
stateful
Event to Metrics
Reducer Metrics
Platform
●
S
e
s
s
i
o
n
s
●
V
i
e
w
s
Last Write
Wins Envelope
State
Sketch
Reducer
State
Demandes
d’aggrégations
53
54. Événements
Pour métriques
stateful
Event to Metrics
Reducer Metrics
Platform
●
S
e
s
s
i
o
n
s
●
V
i
e
w
s
Last Write
Wins Envelope
State
Sketch
Reducer
State
Demandes
d’aggrégations
Key:
● Metric name
● Tags
● Rollup Timestamp
Value:
● Bac temporel
54
55. Événements
Pour métriques
stateful
Event to Metrics
Reducer Metrics
Platform
●
S
e
s
s
i
o
n
s
●
V
i
e
w
s
Last Write
Wins Envelope
State
Sketch
Reducer
State
Demandes
d’aggrégations
par metric name,
tags, timestamp
Key:
● Metric name
● Tags
● Rollup Timestamp
Value:
● Bac temporel
55
56. Demande d’aggrégation
Roll-up timestamp
Metric name
List of tags
Deterministic Unique Identifier
Individuals
Bac temporel
Roll-up timestamp
Metric name
List of tags
DDSketch
Bins
Basic
Count, Sum, Min, Max
Deduplication system
v=23.2 v=34.25 v=1337
v=3.2
v=22.2
v=89
v=14.6 v=76.01 v=90.1
56
59. Bins
Basic
Count, Sum, Min, Max
Un DDSketch peut donner :
• La cardinalité des individus
• La somme, minimum et maximum des individus
• Un percentile avec plus ou moins de précision
Il peut s’agréger avec un autre DDSketch (vite)
59
61. Demande d’aggrégation
Roll-up timestamp
Metric name
List of tags
Deterministic Unique Identifier
Individuals
Bac temporel
Roll-up timestamp
Metric name
List of tags
DDSketch
Bins
Basic
Count, Sum, Min, Max
Deduplication system
v=23.2 v=34.25 v=1337
v=3.2
v=22.2
v=89
v=14.6 v=76.01 v=90.1
61
62. Hash Set
Deduplication system
Hash Set of Unique Identifiers
Compromis :
• Très précis (100%)
• Très rapide… jusqu’à une certaine taille
• Avec 50 Millions de clefs…
(SLO 5M evt/s * 10s Rollup)
62
69. Bloom filter
Un Bloom Filter peut tester la présence d’un élément :
● Dire qu’il est peut être présent
● Dire qu’il est pour sûr absent
Il est hautement configurable (mémoire, cardinalité, etc)
Il a une propension aux faux positifs en se remplissant.
69
72. Scalable Bloom filter
Basé sur https://gsd.di.uminho.pt/members/cbm/ps/dbloom.pdf
p(faux positif) < 0.01
p < 10^-2
k = 2 Insertion et Test
72
73. Scalable Bloom filter
Basé sur https://gsd.di.uminho.pt/members/cbm/ps/dbloom.pdf
p(faux positif) < 0.01
p < 10^-2
k = 2
p < 10^-3
k = 4 Insertion
Test
73
74. Scalable Bloom filter
Basé sur https://gsd.di.uminho.pt/members/cbm/ps/dbloom.pdf
p(faux positif) < 0.01
p < 10^-2
k = 2
p < 10^-3
k = 4
p < 10^-4
k = 8
Insertion
Test
74
76. Deduplication system
Hash Set of Unique Identifiers
Deduplication system
Scalable bloom filter
Précision :
De 100% à
99.999% @ 10k evt/s
99.99% @ 100k evt/s
99.9% @ 5M evt/s
77. Ensuite
“Le problème avec le futur, c’est qu’il n’arrête pas de devenir
le présent.” - Bill Watterson
77
78. Count unique
“Nombre d’utilisateurs distincts ayant visité une page donnée”
Compter les user_id distincts de toutes les sessions
“Nombre de ressources distinctes chargées dans une page donnée”
Compter les noms de ressources distincts de toutes les ressources
Solution : HyperLogLog
78
79. Comment compter des éléments unique de façon distribuée ?
Probabilité de Xn : “Obtenir n piles en n lancers de pièces”
Combien de fois je dois retenter l’épreuve afin de le réussir en moyenne ?
Loi Yn “Réussir Xn en k essais” = loi géométrique de probabilité
Donc pour le cas n=2,
on fera en moyenne
2n
= 4 essais.
Petite parenthèse sur les lancers de pièces
79