Le site BigDataParis n’est pas accessible.

Par défaut

Aujourd’hui c’est le premier jour de l’évènement BigDataParis, #BigDataParis.

Malheureusement, le site est actuellement hors-service. Les inscriptions ne sont plus possibles.

Sur Twitter, ils disent qu’ils sont en train de travailler pour la résolution du problème.

C’est probablement du à un accroissement du trafic ou à une action malveillante. A voir.

Systèmes de données complexes et l’intégration de plusieurs outils.

Par défaut

Les professionnels ont parfois tendance à catégoriser les bases de données relationnels ou non relationnels, les files d’attentes, les caches etc. Même si une base de donnée et une messagerie qui basent leurs fonctionnements sur une file d’attente peuvent avoir quelques similarités, les deux conservent la donnée pour un temps défini et ils utilisent des méthodes différentes pour avoir accès à ces données, qui peut conduire à des différences en termes de performances par exemple.

Une pléthore d’outils permettant de gérer le stockage et le traitement des données sont apparus ces dernières années. Ils sont optimisés en fonction de cas d’usage spécifique Par exemple, on a Redis qui est utilisé comme agent de message et il y a aussi des agents de messages qui permettent le traitement complexe et en temps réel des données, comme une base de données. La frontière qui séparent ces différents catégories d’outils devient de plus en plus flou.

Il y a aussi de plus en plus d’applications qui implémentent des fonctionnalités qui ne peuvent être fourni par un seul outil. Dans ce cas le travail est décomposé en plusieurs tâches qui peuvent être exécutés de façon optimale sur un outil spécifique. Les développeurs interviennent ensuite pour ’’gluer’’ tous ca avec le code.

Un exemple, si vous avez une application qui gère le cache comme Memcached et un serveur de search comme ElasticSearch qui sont séparés de votre base de données principale, alors il est le ressort du développeur que je suis 🙂 de faire en sorte que tous ces outils soient synchronisés avec la ou les base de données principales.

Exemple d’un système de données complexe.

Quand vous utilisez plusieurs outils pour fournir un service, l’API qui expose ce service au monde extérieur fait une abstraction ou cache le plus souvent ces différentes implémentations. Lors de la conception d’un tel système, vous devez vous poser plusieurs questions. Par exemple, comment s’assurer qu’il n’y ait pas de dégradation dans la performance, même si vous avez une très grosse charge sur une ou plusieurs parties du système ? Comment montez vous à l’échelle entre autres.

Il y a plusieurs facteurs qui peuvent influencer la conception d’un système comme celui-ci, comme par exemple l’équipe, l’expérience (et le talent:) des développeurs qui y sont impliqués, ensuite il faut aussi se poser la question sur l’intégration avec des applications monolithiques ( et oui ! ), le temps de livraison et bien sur la vulgarisation auprès du métier pour qu’ils prennent en compte tous ces facteurs ( l’impact sur le risque, la gouvernance etc ). C’est un gros travail qui demande une expertise approfondi dans le fonctionnement d’applications et de base de données.

NextCog vous accompagne dans l’audit, l’implémentation et la conception de systèmes de données complexes. Nous sommes en constante veille technologique et nous nous assurons de vous fournir un service complet. N’hésitez pas à prendre contact avec nous et nous reviendrons vers vous au plus vite. 

Faire le choix entre une base de données relationnelle et une base de données orientés document.

Par défaut

Il y a plusieurs différences à considérer quand on fait la comparaison entre une base de données relationnelle et une base de données orientés document, y compris dans leurs tolérances face aux failles et la gestion de la concurrence. Ici je vais me concentrer sur les différences dans le modèle de données.

Les principaux arguments qui sont en avant pour privilégier une base de données orientés document c’est la flexibilité par rapport au schéma, une meilleure performance due à la localisation ( le fait de stocker des données spécifique à la meme endroit si elles sont fréquemment demandés …) et et le fait qu’il y ait une certaine similarité par rapport aux structures de donnés utilisés par certaines applications. Le modèle relationnel par contre offre des avantages sur une meilleure prise en compte des jointures et les supports sur les relations 1 à plusieurs et relations plusieurs à plusieurs.

Quel modèle de données est le moins couteux en lignes de codes ?

Si la donnée présent dans votre application a une structure qui s’apparente à un document ( par exemple un arbre d’une relation 1 à plusieurs), alors il est plus judicieux d’utiliser le modèle document. La technique qui consiste à éparpiller une structure de type document en plusieurs tables peut conduire à des schémas de données complexes et des lignes de codes supplémentaires en plus.

Le modèle document a quelques limitations, par exemple, vous ne pouvez pas faire référence directement à un élément imbriqué dans un document. Donc tant que les documents ne sont pas fortement imbriqués les uns les autres, alors ce n’est pas nécessairement un problème.

Le faible support pour les jointures dans les bases de données orientés document peut, ou ne peut pas être un problème. Cela dépend de l’application. Par exemple, il n’est pas utile d’utiliser les relations plusieurs à plusieurs dans une application qui utilise une base de données orientés document pour enregistrer des évènements associés à une heure.

Cependant, si votre application doit utiliser les relations plusieurs à plusieurs, alors le modèle de données document devient moins intéressant. Il est possible de réduire le besoin pour les jointures en dé-normalisant, mais en contrepartie, l’application doit se charger de fournir un travail supplémentaire pour maintenir la consistence de la données dé-normalisée.

En général, Il n’est pas possible de dire quel modèle de données conduira à un code moins complexe, ca va dépendre des relations qui existent entre les entités de données. Pour les données très interconnectés, le modèle de données document s’avère compliqué à mettre en place alors que le modèle relationnel est acceptable, et les modèles de données graphes le choix ultime !

Exemple : Gain en simplicité avec le code en SQL ( à gauche ) vs Cypher ( langue de requête orientés graphe à droite)

Sql vs Cypher neo4j
Sql vs Cypher neo4j

NextCog vous accompagne dans l’optimisation de vos bases de données transactionnelles et décisionnelles et la transition vers des bases de données non-relationnelles et graphes. Si vous voulez en savoir plus, prenez contact avec nous et nous vous ferons un devis approprié.

Règlement européen sur la protection des données : Comment cette réglementation impact l’environment Big Data ?

Par défaut

Le jeudi 29 novembre 2018, je suis parti à un meet-up organisé par Matem, une SSII basé à Neuilly sur Seine. Le thème du meetup était le suivant « RGPD : Comment cette réglementation impact l’environment Big Data ?« 

Ce fut une occasion pour moi d’en apprendre un peu plus sur cette législation qui impact  tous les sociétés qui gèrent le traitement des données et de leur conservation, transmission et transformation. Les intervenants furent

Abdesatar Hammedi : Practice Manager BI et Big Data chez Matem

Sébastien Oueslati : Directeur adjoint du pole sécurité chez Humanis

Javier Franco Contreras : Président de Watoo

Je vais me concentrer sur les 2 premières interventions dans ce post.

Meetup RGPD

Arrivée dans les locaux : Le meet-up a débuté vers 19.30

imag1469

L’Agenda : 

Pourquoi gouverner les données ? – L’impact du Big Data et du cloud

Programme de mise en conformité – Quand et de quel manière traiter la problématique et les difficultés rencontrées

Présentation des solutions – Axé sur le tatouage numérique

1ère partie : Pourquoi gouverner les données ? – L’impact du Big Data et du cloud

imag1470

Présentation par Abdesatar Hammedi

Pourquoi gouverner les données ?

Avec la transformation numérique, notamment avec la collecte d’informations de divers sources que sont les mobiles, les équipements connectés entre autres, il est devenu indispensable de penser à la mise en place d’une gouvernance des données.

Le data est devenu indispensable pour beaucoup d’entreprises, d’organismes et de gouvernements. La collecte de données privés entrainent des conséquences dans la manière dont le partage de ces données se fait.

imag1472

Pourquoi gouverner les données ?

La valorisation du patrimoine data entraine des usages qui doivent respecter un périmètre bien défini sur les points suivants
Partage des données
Sémantique
Propriété
Confidentialité
Accès
Sécurité
Evolution
imag1473

On a ensuite eu un rappel sur les grands principes du RGPD, notamment sur les fondements que sont

La loi de 1978

La Directive 95 – 86 europe

imag1474

L’importance des acteurs participant dans la gouvernance fut décrit, aussi bien les acteurs internes qu’externes à l’entreprise. Le Chief Data Officer a un role essentiel à jouer dans ce registre.

imag1476

Une liste d’étapes pour se préparer à la GDPR fut décrit, comme un rappel aux entreprises qui ne sont pas encore en conformité

Désigner, Cartographier, Prioriser, Gérer, Organiser, Documenter

Le bilan après 6 mois fut discuté notamment avec des chiffres sur le nombre de controles et de violations notifiés à la CNIL.

imag1479
imag1481

Centralisation des données – une stratégie ?

Avec la diversité de sources, une stratégie de centralisation peut etre une solution.

Recuperation des données de l’application référentiel, des applications métiers et des sources externes. Passer par une étape de Data Ingestion. Ensuite récupérer les données brutes ’’Le Raw Data’’. Viennent ensuite les étapes de normalisation et d’optimisation de ces données.

imag1483

Avoir une SI Data Centric est aussi essentielle dans la mise en oeuvre de cette réglementation, qui englobe les domaines suivants

L’organisation

Roles, les responsibilités, les socles logiciels et données, usages projets.

Pratiques

Architecture, développements, tests

Pratiques d’exploitation ( multi-usage, multi-tenant,DevOps,sauvegardes..)

Gouvernance

Données ( connaissance, cycle de vie, accès, qualité )

Socle ( cycle de vie initier-construire-run, financer, Roadmap )

Usages ( connaissances, réutilisation,évolutions..)

Conformité et règles éthiques

Sécurité

Accès à la donnée, habilitations, usages

Anonymisation, archivage

Technologies

Compétences logiciels ’’Big Data’’

Pratiques de conception-dev associées

Infrastructures

Architecture

Architecture fonctionnelle SI

imag1484

Le thème de la gouvernance des données fut discuté en peu plus en profondeur, notamment sur les nouveaux savoir-faire et process au niveau SI, les usages et la maitrise de l’information.

imag1485
imag1487

La plateforme de conformité, une architecture conceptuelle

imag1489

2ème partie : Programme de mise en conformité – Quand et de quel manière traiter la problématique et les difficultés rencontrées

Présentation par Sébastien Oueslati

Cette deuxième partie fut consacré à un retour d’expérience sur la mise en place du RGPD, au sein du groupe Humanis.

Le contexte fut décrit, notamment sur les métiers du groupe et ses filiales

imag1492
imag1494
imag1495

Un inventaire des données sensibles traités par l’entreprise fut présenté, notamment

Le NIR, l’appartenance syndicale, les données de santé, les données de sécurité, les données relative aux effractions et condamnations pénales et mesure de sureté, conditions de ressources financières ou matérielles, les données relatives aux difficultés sociales des personnes, les données d’identification, les situations de famille et statut, le dossier professionnel, les données relatives aux recrutement et les dossiers d’embauche, la géolocalisation, les données de badgeage, les enregistrements des conversations téléphoniques, correspondances privés.

imag1496

La Démarche

imag1502

Les résultats obtenus et une définition des prioritées

imag1504

Le programme : De quel manière il a été traité ?

imag1505

Le programme : ses thématiques

Les droits des personnes, notamment la gestion du consentement, la gestion des cookies sur les sites et applications, la revue des mentions d’informations

imag1508
imag1509

La responsabilité des acteurs ( Accountability )

imag1510

Le programme et les difficultés rencontrésimag1511

Le cas du consentement des données de santé

imag1513

Comment concilier RGPD et Big Data ?

imag1514

Conclusion

Assez simple…celles qui étaient conformes aux lois informatique et libertés de 1978 et celles qui ne l’ètaient pas.

Dans le premier cas, le RGPD est une évolution réglementaire et dans le deuxième cas, c’est une révolution !

imag1515

Expérience personnelle de la mise en place du RGPD

J’ai eu à participer activement dans la mise d’une partie de cette réglementation au sein du groupe Fnac Darty. J’ai participé à l’évolutions d’une solution web pour la prise en compte de la gestion et du cryptage des mots de passes, la réinitialisation et la récupération du mot de passe et les techniques de blocage et de vérrouillages des comptes.