Un algorithme de déduplication pour les bases et entrepôts de données

Dimension: px
Commencer à balayer dès la page:

Download "Un algorithme de déduplication pour les bases et entrepôts de données"

Transcription

1 Un algorithme de déduplication pour les bases et entrepôts de données Faouzi Boufarès *, Aïcha Ben Salem *,**, Sebastiao Correia ** Laboratoire LIPN - UMR 7030 CNRS, Université Paris 13, Av. J. B. Clement Villetaneuse France * {boufares, bensalem}@lipn.univ-paris13.fr Société Talend, Av. Pagès Suresness France ** {abensalem, scorreia}@talend.com RÉSUMÉ. La déduplication des données est une étape très importante dans le processus d'intégration de données hétérogènes. Elle assure une meilleure qualité pour les données résultats. Ainsi, l'extraction de connaissances à partir de ces dernières sera plus précise. Nous présentons dans cet article, un algorithme séquentiel pour l élimination des données similaires. Celui-ci est basé sur les fonctions Match et Merge que nous avons définies. La fonction Match repose sur le calcul de distance de similarité en fonction du type de données. Tandis que la fonction Merge utilise des règles logiques pour fusionner les données. Nous évaluons expérimentalement différentes versions d implémentation de notre algorithme en utilisant un jeu de données généré aléatoirement. ABSTRACT. Data deduplication is a very important step in the process of integration of heterogeneous data. It ensures a better quality of data results. Thus, the extraction of knowledge from these data is more accurate. We present in this paper, a sequential algorithm to eliminate similar data. This algorithm is based on the Match and Merge functions that we have defined. The match function is based on calculations of similarity distances depending on the type of data. The Merge function uses logical rules. We experimentally evaluate different versions of the implementation of our algorithm using a random generated data. MOTS-CLÉS : Qualité des données, Distance de similarité, Elimination des similaires, Déduplication, Match, Merge. KEYWORDS: Data Quality, Similarity Distance, Similar Data Elimination, Deduplication, Match, Merge.

2 1. Introduction De nos jours les travaux sur l'extraction et la gestion de connaissance à partir de gros volumes de données (contenus dans un entrepôt issu de sources hétérogènes et distribuées), se basent principalement sur la recherche d'informations potentiellement utiles et jusque-là inconnue. La qualité de l'information recueillie dépend de ces données (Berti-Équille, 2006). Une bonne qualité des données stockées dans les bases et entrepôts de données (BDs et EDs), est devenue une nécessité absolue dans une organisation. Contrairement à ce que l on peut penser, les données rassemblées aujourd'hui dans les BDs et EDs, contiennent de nombreux problèmes tels que les données similaires, les doublons, les valeurs aberrantes, les valeurs nulles. Il s ensuit une mauvaise qualité des données pour des fins décisionnelles (Boufarès et al,, 2011). Les conséquences de la non-qualité des données peuvent être très coûteuses. Par conséquent, il est important de nettoyer les données (éliminer les doublons et les similaires) dans un délai raisonnable. Le problème de l'élimination des données similaires est très difficile (Bilenko et al,, 2003), (Cohen et al,, 2004). Il s'agit de vérifier la correspondance des données (Match) et ensuite de les fusionner (Merge). Nous proposons dans ce papier un algorithme, inspiré de (Benjalloun et al,, 2009), pour détecter, supprimer ces doublons et enrichir en information les enregistrements restants. L'objectif de notre algorithme est de dédoublonner les données provenant du processus d'intégration et de les enrichir afin de fournir aux utilisateurs des données de bonne qualité et plus complètes. Ce papier sera présenté comme suit. Dans la deuxième section, nous présentons le processus de comparaison et de fusion de données (les fonctions Match et Merge). L algorithme d'élimination des similaires ainsi que des mesures de performance entre différentes versions d implémentation seront présentés, dans les sections 3 et 4. Dans les sections suivantes, un bref aperçu sur les travaux connexes ainsi que nos travaux futurs sont abordés. 2. Le processus de comparaison et de fusion (Fonctions Match et Merge) L élimination de données similaires nécessite le développement de deux fonctions «Match» (Comparer) et «Merge» (fusionner) (Hernandez, 1998). La fonction Match permet de définir si deux tuples dans une table sont similaires et la fonction Merge génère un nouveau tuple en fusionnant les deux supposés similaires. Différents algorithmes de calcul de distance de similarité existent dans la littérature tels que ceux de Levenshtein, de Jaro-Winkler, de Jaccard (Berti-Équille, 2006). Ces algorithmes sont utilisés dans le processus de comparaison. Introduisons à présent quelques notations. Une table T(A 1...A n ) est interprétée par l'ensemble [[T]] de tous les {A 1...A n }-tuples sur [[D k ]] k=1,n avec A={A 1...A n } l ensemble des attributs de T. [[D k ]] est l'ensemble de valeurs concrètes d'un tuple de données tels que les chaînes de caractères alphanumériques (String), les numériques

3 (Number), les dates, les booléens (Boolean) ou encore des listes et des intervalles de valeurs. [[T]] est l'ensemble des fonctions t : {A 1...A n } [[D k ]] k=1,n, tel que t(a k ) noté t.a k est un élément de [[D k ]]. Chaque élément t de [[T]] est un tuple de la table T et chaque t.a k est une valeur de l'attribut dans t, que l on notera aussi v k. Définition 1 : Similarité entre valeurs (notée ) Pour un attribut A k, on note t.a k t'.a k (ou v v'), ssi d k s k, avec d k la distance calculée de similarité et s k est le seuil fixé par l utilisateur (s k [0,1], s k S, k=1..n). Exemple 1: Adr 1 t 1.Adr et Adr 2 t 2.Adr ; Nom 1 t 1.Nom et Nom 2 t 2.Nom ; Mail 1 t 1.Mail et Mail 2 t 2.Mail ; Tél 1 t 1.Tél et Tél 2 t 2.Tél. Les deux adresses suivantes Adr 1 = "20 BOULEVARD CHAMPS ÉLYSÉES PARIS" et Adr 2 = "20 BOULEVARD CHAMPS-ELYSÉES PARIS" sont similaires, selon la méthode de Jaro-Winkler car la distance calculée d est de 0,051 inférieure à un seuil fixé s=0,2. Définition 2 : Règle de similarité Une règle r de similarité est une conjonction de similarités qui portent sur des attributs A k (k=1,n) de l ensemble A de la table T. r= p=1.n (t.a k t'.a k ) : r=(t.a 1 t'.a 1 ) (t.a 2 t'.a 2 ) (t.a n t'.a n ) Exemple 2 : Deux règles de similarités r 1 et r 2 : r 1 = (Mail 1 Mail 2 ) (Tél 1 Tél 2 ) r 2 = (Nom 1 Nom 2 ) (Mail 1 Mail 2 ) (Adr 1 Adr 2 ). Définition 3 : Similarité entre tuples Deux tuples t et t' sont similaires ssi la disjonction de toutes les règles de similarité définies sur T est vraie. On note t t' ssi j=1.q (r j ) = vrai avec r j une règle de similarité définie sur les attributs de A. t t' ssi r 1 r 2... r k r q (q étant le nombre de règles de similarité) Exemple 3 : Deux tuples t 1 et t 2 sont similaires ssi r 1 r 2 : t 1 t 2 ssi [(Nom 1 Nom 2 ) (Mail 1 Mail 2 ) (Adr 1 Adr 2 )] [(Mail 1 Mail 2 ) (Tél 1 Tél 2 )]. REMARQUE. Ces règles peuvent présenter toutefois des incohérences ou des contradictions. L étude de leur cohérence globale ou leur simplification ne fait pas l objet de cet article. La fonction Match compare deux tuples. L étude de similarité porte sur les attributs de l ensemble A selon les règles de similarité. La fonction Similar(v 1,v 2, s i ) prend en paramètre deux valeurs (v 1 t 1.A i et v 2 t 2.A i ) et s i un seuil fixé par l utilisateur pour A i. Une méthode de calcul de distance de similarité est appliquée telle que Jaro-Winkler. La distance trouvée d i est comparée au seuil s i. La fonction Merge traite deux tuples, supposés similaires. Elle retourne un nouveau tuple t' qui apporte «plus» d information à partir de chaque valeur (v) résultant de la fusion: v:=merge(expr, v 1, v 2 ) avec expr une règle métier permettant de choisir la méthode de fusion de v 1 et v 2. Un enrichissement des données peut ainsi être réalisé à la demande de l utilisateur sur les attributs de l ensemble A.

4 Une implémentation personnalisée de la fonction Merge permet d associer deux valeurs selon le type de données de l attribut en question: (i) si l attribut est du type chaîne de caractères, expr présente la plus longue chaîne des deux, si celle-ci vérifie un ensemble d expressions régulières proposé pour l utilisateur. La fusion d une chaîne quelconque avec une valeur nulle (NULL) donne la chaîne elle-même ; (ii) si l attribut est du type numérique, la fusion peut correspondre à des calculs demandés par l utilisateur tels que la somme, la moyenne, le minimum ou le maximum des valeurs. Des transformations peuvent être réalisées telles que des conversions dues à des changements d unité. Les valeurs nulles sont considérées égales à 0 ; (iii) si l attribut est du type date, la fusion peut permettre de garder la plus récente des deux, selon le choix de l utilisateur, après avoir unifié les formats et vérifié leurs validités. 3. Elimination des similaires Le croisement de tous les tuples d une table est le principe de base pour l élimination des données similaires. Il s agit d algorithme très coûteux pour de gros volumes de données. L idée est de réduire le nombre de comparaisons en fusionnant les données qui concordent et de ne conserver que le tuple dominant pour les prochaines comparaisons. L originalité de notre travail consiste à faire simultanément les comparaisons et les fusions. Nous avons développé précédemment deux algorithmes inspirés de (Benjalloun et al,, 2009). Afin d améliorer les performances de nos précédents algorithmes, nous présentons dans ce qui suit, un troisième algorithme dont le principe de fonctionnement est le suivant. Afin de réduire le nombre de comparaisons, l algorithme (voir annexe) se base sur la notion des attributs clés («features») pour éliminer des similaires. Cet algorithme utilise, outre les ensembles I (ensemble de tuples départ) et I' (les tuples résultats), deux ensembles de données P f (positifs) et N f (négatifs) pour garder trace des valeurs des attributs clés déjà rencontrées, et enregistrer les comparaisons redondantes positives et négatives. P f sauvegarde toutes les valeurs précédemment rencontrées de l attribut clé d élimination et lui associe l identifiant de tuple auquel il appartient. Le tuple t est soit le premier enregistrement pour lequel la valeur v est apparue pour l attribut clé fi, ou celui qui a été dérivé à partir d une séquence de fusions des tuples. Si ce tuple n existe pas (la valeur v, de l attribut clé, est vue pour la première fois), P fi (v) retourne Null. Cependant, il ne peut y avoir au plus qu un tuple associé à la valeur v d un attribut fi. Dans le cas où plusieurs tuples sont présents, ces derniers sont fusionnés dans le tuple renvoyé par P fi (v). N f est l ensemble qui conserve les valeurs des attributs clés f i qui ont été comparées avec toutes les valeurs des attributs pour les tuples de I' et ne correspond à aucun d'entre eux. On évite alors des comparaisons redondantes dont la fonction Match aurait renvoyé une valeur négative. Si le tuple en cours de traitement par l'algorithme, a une valeur v qui apparaît dans N fi, cette valeur n'a pas besoin d'être davantage comparée. Quand un nouveau tuple t est traité par l'algorithme, ce dernier

5 sauvegarde, tout d'abord dans P fi toutes les valeurs de chaque nouvel attribut, puis vérifie si l'une de ces valeurs est déjà parue dans un tuple différent (en vérifiant son identifiant). Les paires de valeurs des attributs clés P(f,v) qui correspondent, sont immédiatement dirigées vers le processus de la fusion des tuples, et ne sont jamais comparées de nouveau, tandis que les autres paires qui ne correspondent pas sont ajoutées à N fi, et de cette façon on garantit qu elles ne seront jamais comparées à nouveau. Exemple 4: Pour deux attributs Nom et Prénom, les structures P et N à gérer, présentées dans le tableau 2, sont (P Nom, P Prenom, N Nom et N Prenom ): P N Nom RowIdN OccN Prenom RowIdP OccP Nom Prenom RowIdT Le Bon t1 4 Adam t1 3 Le Bon Adam t1 Le B. t5 1 Adem t5 1 Dupond Jérémy t2 Dupond t2 3 Jérémy t2 2 Dupont t8 1 Jeremy t8 1 Tableau 1. Echantillon de l ensemble de données P fi et N fi Plusieurs versions de cet algorithme ont été développées selon les structures de P et N. Ainsi P et N peuvent être aussi bien des listes gérées en mémoire vive que des tables gérées par un SGBD. Il est aussi possible d utiliser soit une table par attribut clé, soit une table pour tous les attributs clés à la fois. Le partitionnement des tables est alors appliqué pour gérer de gros volumes de données. Nous avons apporté quelques modifications à la version donnée dans le papier (Benjalloun et al,, 2009) afin de traiter différents cas de figure. Parmi ces modifications, lors de la fusion des deux tuples (t, t ), les valeurs des attributs de t existent déjà dans les ensembles de données N f, il faut donc les mettre à jour de la même manière que ceux de P f. L implémentation des différentes versions de notre algorithme est faite en JAVA en utilisant des listes ou des tables sous SGBD Oracle 10g. Plusieurs versions existent pour gérer de gros volumes de données. La complexité de cet algorithme réside dans l utilisation des deux ensembles P f et N f. Nous vérifions et comparons les taux d élimination pour chacun des algorithmes. 4. Mesure de performances de l algorithme Les mesures de performance sont effectuées sur trois versions de notre algorithme présenté en annexe, sur des données générées aléatoirement en utilisant GenerateData 1. Nous avons ainsi généré et inséré des doublons dans notre jeu de test. Notre table de test CLIENT a la description SQL suivante : «CREATE TABLE CLIENT (PRENOM varchar2(100), NOM varchar2(100), RUE varchar2(100), CP varchar2(10), VILLE varchar2(50), DATNAIS Date, TEL varchar2(100) ) ;» 1

6 Les attributs Prenom, Nom, DatNais et Tel ont été choisis pour l élimination des similaires. Les algorithmes Jaro-winkler, Levenshtein et Jaccard ont été utilisés pour le calcul de la distance de similarité. Un seuil a été fixé pour chacun des attributs respectivement (0,2 ; 0,2 ; 0 ; 0,1). L utilisateur peut demander l enrichissement de ses données afin d éliminer, d une part, d éventuelles valeurs nulles, et d autre part de regrouper ou corriger certaines informations. Par exemple, dans la mesure où l on veut avoir plusieurs numéros de téléphone pour un même client, la définition de l attribut concerné (résultat de la fusion) devrait être suffisamment élargie, selon une règle métier, pour mettre x valeurs (Tel varchar2(100) au lieu de Tel varchar2(10)). Deux règles de similarité entre tuples ont été utilisées pour réaliser la fusion (Merge) : R ules = r 1 r 2 où r 1 : d 1 s 1 d 2 s 2 d 7 s 7 ; r 2 : d 2 s 2 d 6 s 6 Différentes mesures ont été effectuées sur des tables allant de 10 3 à 10 6 lignes. Notre jeu de données contient 40% de similaires et de doublons. Les trois versions testées sont respectivement Version 1 (P et N des listes JAVA), Version 2 (P et N des tables Oracle) et Version 3 (P et N dans une même table). Les mesures de performance (figure 1) montrent que la version de l algorithme, qui utilise les listes pour P et N, est plus performante que les deux autres (des limitations de mémoire à prévoir pour un nombre plus grand de tuples). Tandis que la version que nous avons voulu optimiser en regroupant les deux tables P et N n améliore pas vraiment le temps de réponse, et que la version avec deux tables P et N reste plus performante. Figure 1. Performances de l algorithme selon ces trois versions 5. Travaux connexes Plusieurs travaux sur l'élimination des données similaires et des doublons existent dans la littérature (Benjalloun, 2009), (Cohen, 2004), (Bilenko, 2003), (Hernandez, 1998). La fonction Match utilise des règles de décision portant sur les n attributs. Il existe deux types de décision : (i) dichotomique (similaires ou non) c est notre cas;

7 ou (ii) trois réponses (similaires ou non et besoin de plus de révision) (Sarawagi, 2006). Aussi notre fonction Match est basée sur des valeurs d'attributs, tandis que d'autres utilisent le concept de contexte (Köpcke, 2006). Plusieurs approches existent pour fusionner différents tuples telles que celles basées sur les règles ou sur les workflows ou encore les approches numériques. Concernant les approches basées sur les règles, la fusion se fait selon une combinaison logique des conditions de correspondance, alors que celles basées sur les workflows permettent des combinaisons aléatoires (Köpcke, 2006). 6. Conclusion Actuellement, un grand nombre d applications utilisent des données hétérogènes et distribuées de qualité variable. Le besoin d'intégration de données et d'évaluation de la qualité des données se fait de plus en plus ressentir. Afin de redonner d avantage de sens dans les données rassemblées, nous abordons la problématique complexe de l élimination de similaires dans les ED. En effet, le développement de nouveaux outils pour traiter les données similaires nécessite l approfondissement, d une part, des deux concepts de base Match & Merge, et d autre part, le développement d autres algorithmes pour parcourir et comparer les données dans des environnements séquentiels et parallèles. Les types de données traités dans notre étude sont les types caractère, numérique, date et logique. La concordance des données se fait selon des règles proposées par l utilisateur. Notre algorithme, séquentiel, réalise le Match & Merge parallèlement. Les performances sont à améliorer pour les données volumineuses. Le choix des règles de similarité sera automatisé. De nouvelles méthodes de calculs de distance de similarité pour des types de données complexes sont à développer ainsi que l automatisation du choix entre elles. Tels sont les objectifs que nous nous fixons dans nos travaux futurs. 7. Bibliographie Benjalloun, O., Garcia-Molina, H., Menestria, D., Su, Q., Whang, S.E., Widom, J., «Swoosh: A Generic Approach to Entity Resolution», The International Journal on Very Large Data Bases (VLDB '09), New York, USA, 2009, pp Berti-Équille, L., «Qualité des données», Techniques de l Ingénieur H3700, collection Technologies logicielles Architecture des systèmes, France, 2006, pp Bilenko, M., Mooney, R.J., «Adaptive Duplicate Detection Using Learnable String Similarity Measures», Proceedings of the Ninth ACM SIGKDD International Conference on Knowledge Discovery, and Data Mining, Washington DC, USA, 2003, pp Boufarès, F., A. Ben-Salem, «Heterogeneous data-integration and data quality: Overview of conflicts», Sciences of Electronic, Technologies of Information and Telecommunications (SETIT 11), Sousse, Tunisie, 2011.

8 Cohen, W.W., Richman, J., «Iterative Record Linkage for Cleaning and Integration», Proceedings of the 9th ACM SIGMOD workshop on Research issues in data mining and knowledge discovery (DMKD 04), Paris, France, 2004, pp Hamdoun, S., Boufarès, F., «Un formalisme pour l'intégration de données hétérogènes», 6ème journées Francophones sur les entrepôts de données et l'analyse en ligne (EDA'10), Djerba-Tunisie, 2010, pp Hernandez, M.A., Stolfo, S.J., «Real-world Data is Dirty: Data Cleansing and The Merge/Purge Problem» Data Mining and Knowledge Discovery (DMKD 98), New York, USA, 1998, pp Köpcke, H., Rahm, E., «Frameworks for entity matching: A comparison», Data Knowledge Engineering (DKE 09), 2009, pp Sarawagi, S., Bhamidipaty, A., «Interactive Deduplication using Active Learning», Proceedings The 8th ACM International Conference on Knowledge Discovery and Data Mining (SIGKDD 02), Alberta, Canada, 2002, pp Annexe : Algorithme d élimination de similaires input : a set I of tuples, output : a set Iprim of tuples, Iprim P f empty hash table, for each feature f, N f empty set, for each feature f SaveTuples a set of tuples, Iprim Ø, currenttuple null while I Ø or currenttuple null if currenttuple = null then currenttuple a Tuple from I remove currenttuple from I buddy null for all(f, v) of currenttuple do if P f(v) = null then P f(v) currenttuple SaveTuples (currenttuple, rowid) endfor for all (f, v) of currenttuple do /*was any value previously encountered*/ if P f(v) currenttuple then /*we compare the value and the rowid*/ buddy SaveTuples(P f(v)); exitfor endfor if buddy = null then /*If not look for Matches*/ for all (f, v) of currenttuple do if v N f then/* if a value never made it to N f*/ for all t of Iprim do if Match (t,t ) then buddy t exitfor endfor if buddy null then exitfor add v to N f endfor if buddy = null then add currenttuple to Iprim currenttuple null else t Merge (currenttuple, buddy) remove buddy from Iprim /*update P*/ for all (f, v) where P f(v) {currenttuple, buddy} do P f(v) t endfor /*update N*/ for all (f, v) where N f(v) {currenttuple, buddy} do N f(v) t endfor currenttuple t endwhile return Iprim

Vers une approche Adaptative pour la Découverte et la Composition Dynamique des Services

Vers une approche Adaptative pour la Découverte et la Composition Dynamique des Services 69 Vers une approche Adaptative pour la Découverte et la Composition Dynamique des Services M. Bakhouya, J. Gaber et A. Koukam Laboratoire Systèmes et Transports SeT Université de Technologie de Belfort-Montbéliard

Plus en détail

Thèse de doctorat de l Université Paris 13 dans le cadre d une Cifre avec l entreprise Talend. Spécialité Informatique.

Thèse de doctorat de l Université Paris 13 dans le cadre d une Cifre avec l entreprise Talend. Spécialité Informatique. Thèse de doctorat de l Université Paris 13 dans le cadre d une Cifre avec l entreprise Talend Spécialité Informatique Par : Aïcha BEN SALEM Thèse présentée pour l obtention du diplôme de Docteur de l Université

Plus en détail

TP Bases de données réparties

TP Bases de données réparties page 1 TP Bases de données réparties requêtes réparties Version corrigée Auteur : Hubert Naacke, révision 5 mars 2003 Mots-clés: bases de données réparties, fragmentation, schéma de placement, lien, jointure

Plus en détail

Entreposage de données complexes pour la médecine d anticipation personnalisée

Entreposage de données complexes pour la médecine d anticipation personnalisée Manuscrit auteur, publié dans "9th International Conference on System Science in Health Care (ICSSHC 08), Lyon : France (2008)" Entreposage de données complexes pour la médecine d anticipation personnalisée

Plus en détail

Langage SQL : créer et interroger une base

Langage SQL : créer et interroger une base Langage SQL : créer et interroger une base Dans ce chapitre, nous revenons sur les principales requêtes de création de table et d accès aux données. Nous verrons aussi quelques fonctions d agrégation (MAX,

Plus en détail

Les Triggers SQL. Didier DONSEZ. Université de Valenciennes Institut des Sciences et Techniques de Valenciennes donsez@univ-valenciennes.

Les Triggers SQL. Didier DONSEZ. Université de Valenciennes Institut des Sciences et Techniques de Valenciennes donsez@univ-valenciennes. Les Triggers SQL Didier DONSEZ Université de Valenciennes Institut des Sciences et Techniques de Valenciennes donsez@univ-valenciennes.fr 1 Sommaire Motivations Trigger Ordre Trigger Ligne Condition Trigger

Plus en détail

Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS

Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS 1. Introduction Nous allons aborder la notion de surcouche procédurale au sein des SGBDS relationnels tels que Oracle (PLSQL)

Plus en détail

Differential Synchronization

Differential Synchronization Differential Synchronization Neil Fraser Google 2009 BENA Pierrick CLEMENT Lucien DIARRA Thiemoko 2 Plan Introduction Stratégies de synchronisation Synchronisation différentielle Vue d ensemble Dual Shadow

Plus en détail

Une méthode d apprentissage pour la composition de services web

Une méthode d apprentissage pour la composition de services web Une méthode d apprentissage pour la composition de services web Soufiene Lajmi * Chirine Ghedira ** Khaled Ghedira * * Laboratoire SOIE (ENSI) University of Manouba, Manouba 2010, Tunisia Soufiene.lajmi@ensi.rnu.tn,

Plus en détail

OASIS www.oasis-open.org/committees/xacml/docs/docs.shtml Date de publication

OASIS www.oasis-open.org/committees/xacml/docs/docs.shtml Date de publication Statut du Committee Working Draft document Titre XACML Language Proposal, version 0.8 (XACML : XML Access Control Markup Language) Langage de balisage du contrôle d'accès Mot clé Attestation et sécurité

Plus en détail

Langage SQL (1) 4 septembre 2007. IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes

Langage SQL (1) 4 septembre 2007. IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes Langage SQL (1) Sébastien Limet Denys Duchier IUT Orléans 4 septembre 2007 Notions de base qu est-ce qu une base de données? SGBD différents type de bases de données quelques systèmes existants Définition

Plus en détail

Entrepôt de données 1. Introduction

Entrepôt de données 1. Introduction Entrepôt de données 1 (data warehouse) Introduction 1 Présentation Le concept d entrepôt de données a été formalisé pour la première fois en 1990 par Bill Inmon. Il s agissait de constituer une base de

Plus en détail

A QUOI SERVENT LES BASES DE DONNÉES?

A QUOI SERVENT LES BASES DE DONNÉES? BASE DE DONNÉES OBJET Virginie Sans virginie.sans@irisa.fr A QUOI SERVENT LES BASES DE DONNÉES? Stockage des informations : sur un support informatique pendant une longue période de taille importante accès

Plus en détail

Big Data et Graphes : Quelques pistes de recherche

Big Data et Graphes : Quelques pistes de recherche Big Data et Graphes : Quelques pistes de recherche Hamamache Kheddouci Laboratoire d'informatique en Image et Systèmes d'information LIRIS UMR 5205 CNRS/INSA de Lyon/Université Claude Bernard Lyon 1/Université

Plus en détail

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object) Quelques patterns pour la persistance des objets avec DAO Ce cours présente des modèles de conception utilisés pour effectuer la persistance des objets Université de Nice Sophia-Antipolis Version 1.4 30/8/07

Plus en détail

Techniques d analyse et de conception d outils pour la gestion du processus de segmentation des abonnés des entreprises de télécommunication

Techniques d analyse et de conception d outils pour la gestion du processus de segmentation des abonnés des entreprises de télécommunication Techniques d analyse et de conception d outils pour la gestion du processus de segmentation des abonnés des entreprises de télécommunication R. Carlos Nana Mbinkeu 1,3, C. Tangha 1, A. Chomnoue 1, A. Kuete

Plus en détail

ISC21-1 --- Système d Information Architecture et Administration d un SGBD Compléments SQL

ISC21-1 --- Système d Information Architecture et Administration d un SGBD Compléments SQL ISC21-1 --- Système d Information Architecture et Administration d un SGBD Compléments SQL Jean-Marie Pécatte jean-marie.pecatte@iut-tlse3.fr 16 novembre 2006 ISIS - Jean-Marie PECATTE 1 Valeur de clé

Plus en détail

Recherche dans un tableau

Recherche dans un tableau Chapitre 3 Recherche dans un tableau 3.1 Introduction 3.1.1 Tranche On appelle tranche de tableau, la donnée d'un tableau t et de deux indices a et b. On note cette tranche t.(a..b). Exemple 3.1 : 3 6

Plus en détail

Le Langage SQL version Oracle

Le Langage SQL version Oracle Université de Manouba École Supérieure d Économie Numérique Département des Technologies des Systèmes d Information Le Langage SQL version Oracle Document version 1.1 Mohamed Anis BACH TOBJI anis.bach@isg.rnu.tn

Plus en détail

REMOTE DATA ACQUISITION OF EMBEDDED SYSTEMS USING INTERNET TECHNOLOGIES: A ROLE-BASED GENERIC SYSTEM SPECIFICATION

REMOTE DATA ACQUISITION OF EMBEDDED SYSTEMS USING INTERNET TECHNOLOGIES: A ROLE-BASED GENERIC SYSTEM SPECIFICATION REMOTE DATA ACQUISITION OF EMBEDDED SYSTEMS USING INTERNET TECHNOLOGIES: A ROLE-BASED GENERIC SYSTEM SPECIFICATION THÈSE N O 2388 (2001) PRÉSENTÉE AU DÉPARTEMENT D'INFORMATIQUE ÉCOLE POLYTECHNIQUE FÉDÉRALE

Plus en détail

MapReduce. Malo Jaffré, Pablo Rauzy. 16 avril 2010 ENS. Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril 2010 1 / 15

MapReduce. Malo Jaffré, Pablo Rauzy. 16 avril 2010 ENS. Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril 2010 1 / 15 MapReduce Malo Jaffré, Pablo Rauzy ENS 16 avril 2010 Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril 2010 1 / 15 Qu est ce que c est? Conceptuellement Données MapReduce est un framework de calcul distribué

Plus en détail

Devoir Data WareHouse

Devoir Data WareHouse Université Paris XIII Institut Galilée Master 2-EID BENSI Ahmed CHARIFOU Evelyne Devoir Data WareHouse Optimisation, Transformation et Mise à jour utilisées par un ETL Mr R. NEFOUSSI Année 2007-2008 FICHE

Plus en détail

Les bases de données

Les bases de données Les bases de données Introduction aux fonctions de tableur et logiciels ou langages spécialisés (MS-Access, Base, SQL ) Yves Roggeman Boulevard du Triomphe CP 212 B-1050 Bruxelles (Belgium) Idée intuitive

Plus en détail

Bases de Données relationnelles et leurs systèmes de Gestion

Bases de Données relationnelles et leurs systèmes de Gestion III.1- Définition de schémas Bases de Données relationnelles et leurs systèmes de Gestion RAPPELS Contraintes d intégrité sous Oracle Notion de vue Typage des attributs Contrainte d intégrité Intra-relation

Plus en détail

COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2

COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2 SQL Sommaire : COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2 COMMANDES DE MANIPULATION DE DONNEES... 2 COMMANDES DE CONTROLE TRANSACTIONNEL... 2 COMMANDES DE REQUETE DE DONNEES... 2 COMMANDES

Plus en détail

OpenPaaS Le réseau social d'entreprise

OpenPaaS Le réseau social d'entreprise OpenPaaS Le réseau social d'entreprise Spécification des API datastore SP L2.3.1 Diffusion : Institut MinesTélécom, Télécom SudParis 1 / 12 1OpenPaaS DataBase API : ODBAPI...3 1.1Comparaison des concepts...3

Plus en détail

Lamia Oukid, Ounas Asfari, Fadila Bentayeb, Nadjia Benblidia, Omar Boussaid. 14 Juin 2013

Lamia Oukid, Ounas Asfari, Fadila Bentayeb, Nadjia Benblidia, Omar Boussaid. 14 Juin 2013 Cube de textes et opérateur d'agrégation basé sur un modèle vectoriel adapté Text Cube Model and aggregation operator based on an adapted vector space model Lamia Oukid, Ounas Asfari, Fadila Bentayeb,

Plus en détail

Le langage SQL Rappels

Le langage SQL Rappels Le langage SQL Rappels Description du thème : Présentation des principales notions nécessaires pour réaliser des requêtes SQL Mots-clés : Niveau : Bases de données relationnelles, Open Office, champs,

Plus en détail

Les simulations dans l enseignement des sondages Avec le logiciel GENESIS sous SAS et la bibliothèque Sondages sous R

Les simulations dans l enseignement des sondages Avec le logiciel GENESIS sous SAS et la bibliothèque Sondages sous R Les simulations dans l enseignement des sondages Avec le logiciel GENESIS sous SAS et la bibliothèque Sondages sous R Yves Aragon, David Haziza & Anne Ruiz-Gazen GREMAQ, UMR CNRS 5604, Université des Sciences

Plus en détail

Définition et diffusion de signatures sémantiques dans les systèmes pair-à-pair

Définition et diffusion de signatures sémantiques dans les systèmes pair-à-pair Définition et diffusion de signatures sémantiques dans les systèmes pair-à-pair Raja Chiky, Bruno Defude, Georges Hébrail GET-ENST Paris Laboratoire LTCI - UMR 5141 CNRS Département Informatique et Réseaux

Plus en détail

Créer un référentiel client grâce à Talend MDM

Créer un référentiel client grâce à Talend MDM Créer un référentiel client grâce à Talend MDM Christophe Toum Product Manager Talend Connect 9 octobre 2014 Talend 2014 1 Sommaire Connaissez-vous vos clients? MDM et réconciliation des données Le processus

Plus en détail

Préparer un état de l art

Préparer un état de l art Préparer un état de l art Khalil DRIRA LAAS-CNRS, Toulouse Unité de recherche ReDCAD École Nationale d ingénieurs de Sfax Étude de l état de l art? Une étude ciblée, approfondie et critique des travaux

Plus en détail

Big Data et Graphes : Quelques pistes de recherche

Big Data et Graphes : Quelques pistes de recherche Big Data et Graphes : Quelques pistes de recherche Hamamache Kheddouci http://liris.cnrs.fr/hamamache.kheddouci Laboratoire d'informatique en Image et Systèmes d'information LIRIS UMR 5205 CNRS/INSA de

Plus en détail

# let rec concat l1 l2 = match l1 with [] -> l2 x::l 1 -> x::(concat l 1 l2);; val concat : a list -> a list -> a list = <fun>

# let rec concat l1 l2 = match l1 with [] -> l2 x::l 1 -> x::(concat l 1 l2);; val concat : a list -> a list -> a list = <fun> 94 Programmation en OCaml 5.4.8. Concaténation de deux listes Définissons maintenant la fonction concat qui met bout à bout deux listes. Ainsi, si l1 et l2 sont deux listes quelconques, concat l1 l2 constitue

Plus en détail

Analyses croisées de sites Web pour détecter les sites de contrefaçon. Prof. Dr. Olivier Biberstein

Analyses croisées de sites Web pour détecter les sites de contrefaçon. Prof. Dr. Olivier Biberstein Analyses croisées de sites Web pour détecter les sites de contrefaçon Prof. Dr. Olivier Biberstein Division of Computer Science 14 Novembre 2013 Plan 1. Présentation générale 2. Projet 3. Travaux futurs

Plus en détail

Principe de symétrisation pour la construction d un test adaptatif

Principe de symétrisation pour la construction d un test adaptatif Principe de symétrisation pour la construction d un test adaptatif Cécile Durot 1 & Yves Rozenholc 2 1 UFR SEGMI, Université Paris Ouest Nanterre La Défense, France, cecile.durot@gmail.com 2 Université

Plus en détail

1. Qu'est-ce que SQL?... 2. 2. La maintenance des bases de données... 2. 3. Les manipulations des bases de données... 5

1. Qu'est-ce que SQL?... 2. 2. La maintenance des bases de données... 2. 3. Les manipulations des bases de données... 5 1. Qu'est-ce que SQL?... 2 2. La maintenance des bases de données... 2 2.1 La commande CREATE TABLE... 3 2.2 La commande ALTER TABLE... 4 2.3 La commande CREATE INDEX... 4 3. Les manipulations des bases

Plus en détail

Notes de cours : bases de données distribuées et repliquées

Notes de cours : bases de données distribuées et repliquées Notes de cours : bases de données distribuées et repliquées Loïc Paulevé, Nassim Hadj-Rabia (2009), Pierre Levasseur (2008) Licence professionnelle SIL de Nantes, 2009, version 1 Ces notes ont été élaborées

Plus en détail

27 janvier 2011. Issam El Hachimi Ludovic Schmieder

27 janvier 2011. Issam El Hachimi Ludovic Schmieder 27 janvier 2011 Issam El Hachimi Ludovic Schmieder Le Business Intelligence Les ETL PDI Talend Démo : 2 exemples Constat et comparatif Conclusion 2 «Il faut connaitre le client pour connaitre ses besoins»

Plus en détail

UML et les Bases de Données

UML et les Bases de Données CNAM UML et les Bases de Données UML et les Bases de Données. Diagramme de classes / diagramme d objets (UML)...2.. Premier niveau de modélisation des données d une application...2.2. Les éléments de modélisation...2.2..

Plus en détail

Algorithmique & programmation

Algorithmique & programmation Algorithmique & programmation Type structuré Article, Enregistrement, Structure Définition de nouveaux types!! On a vu les types simples "! entier, booléen, caractère, chaîne de caractères!! Comment gérer

Plus en détail

Bases de données et sites WEB Licence d informatique LI345

Bases de données et sites WEB Licence d informatique LI345 Bases de données et sites WEB Licence d informatique LI345 Anne Doucet Anne.Doucet@lip6.fr http://www-bd.lip6.fr/ens/li345-2013/index.php/lescours 1 Contenu Transactions en pratique Modèle relationnel-objet

Plus en détail

Talend Technical Note

Talend Technical Note Mars 2011 Page 1 sur 5 Le MDM offre un hub central de contrôle et une vision unique des données maître de l'entreprise, quelles que soient les disparités entre les systèmes source. Il assure que les données

Plus en détail

TRS: Sélection des sous-graphes représentants par l intermédiaire des attributs topologiques et K-medoïdes

TRS: Sélection des sous-graphes représentants par l intermédiaire des attributs topologiques et K-medoïdes TRS: Sélection des sous-graphes représentants par l intermédiaire des attributs topologiques et K-medoïdes Mohamed Moussaoui,Wajdi Dhifli,Sami Zghal,Engelbert Mephu Nguifo FSJEG, Université de Jendouba,

Plus en détail

Bases de Données Relationnelles. Le Modèle Relationnel

Bases de Données Relationnelles. Le Modèle Relationnel Bases de Données Relationnelles Le Modèle Relationnel Le modèle relationnel modèle de niveau logique modèle simple : deux concepts relation (table) attribut (colonne) défini par Ted Codd en 1970 ; prix

Plus en détail

I4 : Bases de Données

I4 : Bases de Données I4 : Bases de Données Passage de UML au modèle relationnel Georges LOUIS Département Réseaux et Télécommunications Université de La Rochelle Module I4 2008-2009 1 G.Louis Sommaire 1 Des classes aux tables

Plus en détail

A QUOI SERVENT LES BASES DE DONNÉES?

A QUOI SERVENT LES BASES DE DONNÉES? BASE DE DONNÉES OBJET Virginie Sans virginie.sans@irisa.fr A QUOI SERVENT LES BASES DE DONNÉES? Stockage des informations : sur un support informatique pendant une longue période de taille importante accès

Plus en détail

Chapitre 1 : Introduction aux bases de données

Chapitre 1 : Introduction aux bases de données Chapitre 1 : Introduction aux bases de données Les Bases de Données occupent aujourd'hui une place de plus en plus importante dans les systèmes informatiques. Les Systèmes de Gestion de Bases de Données

Plus en détail

Une proposition d extension de GML pour un modèle générique d intégration de données spatio-temporelles hétérogènes

Une proposition d extension de GML pour un modèle générique d intégration de données spatio-temporelles hétérogènes 303 Schedae, 2007 Prépublication n 46 Fascicule n 2 Une proposition d extension de GML pour un modèle générique d intégration de données spatio-temporelles hétérogènes Samya Sagar, Mohamed Ben Ahmed Laboratoire

Plus en détail

RAPID 3.34 - Prenez le contrôle sur vos données

RAPID 3.34 - Prenez le contrôle sur vos données RAPID 3.34 - Prenez le contrôle sur vos données Parmi les fonctions les plus demandées par nos utilisateurs, la navigation au clavier et la possibilité de disposer de champs supplémentaires arrivent aux

Plus en détail

Formula Negator, Outil de négation de formule.

Formula Negator, Outil de négation de formule. Formula Negator, Outil de négation de formule. Aymerick Savary 1,2, Mathieu Lassale 1,2, Jean-Louis Lanet 1 et Marc Frappier 2 1 Université de Limoges 2 Université de Sherbrooke Résumé. Cet article présente

Plus en détail

Bases de Données. Plan

Bases de Données. Plan Université Mohammed V- Agdal Ecole Mohammadia d'ingénieurs Rabat Bases de Données Mr N.EL FADDOULI 2014-2015 Plan Généralités: Définition de Bases de Données Le modèle relationnel Algèbre relationnelle

Plus en détail

Langage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL

Langage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL Cours PL/SQL Langage propre à Oracle basé sur ADA Offre une extension procédurale à SQL PL/SQL permet d utiliser un sous-ensemble du langage SQL des variables, des boucles, des alternatives, des gestions

Plus en détail

Intégrité des données

Intégrité des données . Contraintes d intégrité : Définition et objectif Intégrité des données Définition des contraintes Vérification des contraintes Contrainte d'intégrité : propriété sémantique que doivent respecter les

Plus en détail

Le stockage local de données en HTML5

Le stockage local de données en HTML5 Le stockage local HTML5, pourquoi faire? Dans une optique de réduction des couts de maintenance, de déploiement, beaucoup d'entreprises ont fait le choix de migrer leurs applicatifs (comptables, commerciales,

Plus en détail

Bases de données relationnelles

Bases de données relationnelles Bases de données relationnelles Système de Gestion de Bases de Données Une base de données est un ensemble de données mémorisé par un ordinateur, organisé selon un modèle et accessible à de nombreuses

Plus en détail

RI sociale : intégration de propriétés sociales dans un modèle de recherche

RI sociale : intégration de propriétés sociales dans un modèle de recherche RI sociale : intégration de propriétés sociales dans un modèle de recherche Ismail Badache 1 Institut de Recherche en Informatique de Toulouse, UMR 5505 CNRS, SIG 118 Route de Narbonne F-31062 Toulouse

Plus en détail

Classification Automatique de messages : une approche hybride

Classification Automatique de messages : une approche hybride RECIAL 2002, Nancy, 24-27 juin 2002 Classification Automatique de messages : une approche hybride O. Nouali (1) Laboratoire des Logiciels de base, CE.R.I.S., Rue des 3 frères Aïssiou, Ben Aknoun, Alger,

Plus en détail

Exercices sur SQL server 2000

Exercices sur SQL server 2000 Exercices sur SQL server 2000 La diagramme de classe : Exercices sur SQL server 2000 Le modèle relationnel correspondant : 1 Créer les tables Clic-droit on Tables et choisir «New Table» Créer la table

Plus en détail

Table des matières PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS. Introduction

Table des matières PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS. Introduction PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS Depuis SAS 9.2 TS2M3, SAS propose un nouveau langage de programmation permettant de créer et gérer des tables SAS : le DS2 («Data Step 2»). Ces nouveautés

Plus en détail

Bases de Données Avancées

Bases de Données Avancées 1/62 Bases de Données Avancées Introduction & Rappel Conception et Modélisation Thierry Hamon Bureau H202 - Institut Galilée Tél. : 33 1.48.38.35.53 Bureau 150 LIM&BIO EA 3969 Université Paris 13 - UFR

Plus en détail

Surveillance de Scripts LUA et de réception d EVENT. avec LoriotPro Extended & Broadcast Edition

Surveillance de Scripts LUA et de réception d EVENT. avec LoriotPro Extended & Broadcast Edition Surveillance de Scripts LUA et de réception d EVENT avec LoriotPro Extended & Broadcast Edition L objectif de ce document est de présenter une solution de surveillance de processus LUA au sein de la solution

Plus en détail

Datawarehouse and OLAP

Datawarehouse and OLAP Datawarehouse and OLAP Datawarehousing Syllabus, materials, notes, etc. See http://www.info.univ-tours.fr/ marcel/dw.html today architecture ETL refreshing warehousing projects architecture architecture

Plus en détail

Forthcoming Database

Forthcoming Database DISS.ETH NO. 15802 Forthcoming Database A Framework Approach for Data Visualization Applications A dissertation submitted to the SWISS FEDERAL INSTITUTE OF TECHNOLOGY ZURICH for the degree of Doctor of

Plus en détail

Grégoire de Lassence. Copyright 2006, SAS Institute Inc. All rights reserved.

Grégoire de Lassence. Copyright 2006, SAS Institute Inc. All rights reserved. Grégoire de Lassence 1 Grégoire de Lassence Responsable Pédagogie et Recherche Département Académique Tel : +33 1 60 62 12 19 gregoire.delassence@fra.sas.com http://www.sas.com/france/academic SAS dans

Plus en détail

Spécificités, Applications et Outils

Spécificités, Applications et Outils Spécificités, Applications et Outils Ricco Rakotomalala Université Lumière Lyon 2 Laboratoire ERIC Laboratoire ERIC 1 Ricco Rakotomalala ricco.rakotomalala@univ-lyon2.fr http://chirouble.univ-lyon2.fr/~ricco/data-mining

Plus en détail

SQL. Oracle. pour. 4 e édition. Christian Soutou Avec la participation d Olivier Teste

SQL. Oracle. pour. 4 e édition. Christian Soutou Avec la participation d Olivier Teste Christian Soutou Avec la participation d Olivier Teste SQL pour Oracle 4 e édition Groupe eyrolles, 2004, 2005, 2008, 2010, is BN : 978-2-212-12794-2 Partie III SQL avancé La table suivante organisée en

Plus en détail

Du 10 Fév. au 14 Mars 2014

Du 10 Fév. au 14 Mars 2014 Interconnexion des Sites - Design et Implémentation des Réseaux informatiques - Sécurité et Audit des systèmes - IT CATALOGUE DE FORMATION SIS 2014 1 FORMATION ORACLE 10G 11G 10 FEV 2014 DOUALA CAMEROUN

Plus en détail

The new consumables catalogue from Medisoft is now updated. Please discover this full overview of all our consumables available to you.

The new consumables catalogue from Medisoft is now updated. Please discover this full overview of all our consumables available to you. General information 120426_CCD_EN_FR Dear Partner, The new consumables catalogue from Medisoft is now updated. Please discover this full overview of all our consumables available to you. To assist navigation

Plus en détail

Compte-rendu de projet de Système de gestion de base de données

Compte-rendu de projet de Système de gestion de base de données Compte-rendu de projet de Système de gestion de base de données Création et utilisation d'un index de jointure LAMBERT VELLER Sylvain M1 STIC Université de Bourgogne 2010-2011 Reponsable : Mr Thierry Grison

Plus en détail

ACTIVITÉ DE PROGRAMMATION

ACTIVITÉ DE PROGRAMMATION ACTIVITÉ DE PROGRAMMATION The purpose of the Implementation Process is to realize a specified system element. ISO/IEC 12207 Sébastien Adam Une introduction 2 Introduction Ø Contenu Utilité de l ordinateur,

Plus en détail

Chapitre 10. Architectures des systèmes de gestion de bases de données

Chapitre 10. Architectures des systèmes de gestion de bases de données Chapitre 10 Architectures des systèmes de gestion de bases de données Introduction Les technologies des dernières années ont amené la notion d environnement distribué (dispersions des données). Pour reliér

Plus en détail

Les BRMS Business Rules Management System. Groupe GENITECH

Les BRMS Business Rules Management System. Groupe GENITECH Les BRMS Business Rules Management System 1 Présentations Emmanuel Bonnet ebonnet (at) genigraph.fr Responsable Dpt Conseil Consultant, Expert BRMS Formateur IBM/Ilog JRules / JBoss Rules Génigraph SSII

Plus en détail

Optimisation SQL. Quelques règles de bases

Optimisation SQL. Quelques règles de bases Optimisation SQL Quelques règles de bases Optimisation des ordres SQL Page 2 1. QUELQUES RÈGLES DE BASE POUR DES ORDRES SQL OPTIMISÉS...3 1.1 INTRODUCTION...3 1.2 L OPTIMISEUR ORACLE...3 1.3 OPTIMISEUR

Plus en détail

Application de K-means à la définition du nombre de VM optimal dans un cloud

Application de K-means à la définition du nombre de VM optimal dans un cloud Application de K-means à la définition du nombre de VM optimal dans un cloud EGC 2012 : Atelier Fouille de données complexes : complexité liée aux données multiples et massives (31 janvier - 3 février

Plus en détail

THÈSE. présentée à TÉLÉCOM PARISTECH. pour obtenir le grade de. DOCTEUR de TÉLÉCOM PARISTECH. Mention Informatique et Réseaux. par.

THÈSE. présentée à TÉLÉCOM PARISTECH. pour obtenir le grade de. DOCTEUR de TÉLÉCOM PARISTECH. Mention Informatique et Réseaux. par. École Doctorale d Informatique, Télécommunications et Électronique de Paris THÈSE présentée à TÉLÉCOM PARISTECH pour obtenir le grade de DOCTEUR de TÉLÉCOM PARISTECH Mention Informatique et Réseaux par

Plus en détail

Application web de gestion de comptes en banques

Application web de gestion de comptes en banques Application web de gestion de comptes en banques Objectif Réaliser une application Web permettant à un client de gérer ses comptes en banque Diagramme de cas d'utilisation 1 Les cas d'utilisation Connexion

Plus en détail

Plan Général Prévisionnel (1/2) (non contractuel) Internet et Outils L1/IO2 2006-2007 S2-IO2 Bases de données: Jointures, Transactions

Plan Général Prévisionnel (1/2) (non contractuel) Internet et Outils L1/IO2 2006-2007 S2-IO2 Bases de données: Jointures, Transactions Général Prévisionnel (1/2) (non contractuel) Internet et Outils L1/IO2 2006-2007 S2-IO2 Bases de données: Jointures, Cours Internet et Outils: [1/12] Intro, Internet, Web, XHTML (2H) [2/12] XHTML(2H) [3/12]

Plus en détail

Procédures Stockées WAVESOFT... 12 ws_sp_getidtable... 12. Exemple :... 12. ws_sp_getnextsouche... 12. Exemple :... 12

Procédures Stockées WAVESOFT... 12 ws_sp_getidtable... 12. Exemple :... 12. ws_sp_getnextsouche... 12. Exemple :... 12 Table des matières Les Triggers... 2 Syntaxe... 2 Explications... 2 Les évènements déclencheurs des triggers... 3 Les modes de comportements des triggers... 4 Les pseudo tables... 5 Exemple... 6 Les procédures

Plus en détail

Les bases de données Page 1 / 8

Les bases de données Page 1 / 8 Les bases de données Page 1 / 8 Sommaire 1 Définitions... 1 2 Historique... 2 2.1 L'organisation en fichier... 2 2.2 L'apparition des SGBD... 2 2.3 Les SGBD relationnels... 3 2.4 Les bases de données objet...

Plus en détail

ECR_DESCRIPTION CHAR(80), ECR_MONTANT NUMBER(10,2) NOT NULL, ECR_SENS CHAR(1) NOT NULL) ;

ECR_DESCRIPTION CHAR(80), ECR_MONTANT NUMBER(10,2) NOT NULL, ECR_SENS CHAR(1) NOT NULL) ; RÈGLES A SUIVRE POUR OPTIMISER LES REQUÊTES SQL Le but de ce rapport est d énumérer quelques règles pratiques à appliquer dans l élaboration des requêtes. Il permettra de comprendre pourquoi certaines

Plus en détail

Cours Base de données relationnelles. M. Boughanem, IUP STRI

Cours Base de données relationnelles. M. Boughanem, IUP STRI Cours Base de données relationnelles 1 Plan 1. Notions de base 2. Modèle relationnel 3. SQL 2 Notions de base (1) Définition intuitive : une base de données est un ensemble d informations, (fichiers),

Plus en détail

4. Groupement d objets

4. Groupement d objets Conception objet en Java avec BlueJ une approche interactive 4. Groupement d objets Collections et itérateurs David J. Barnes, Michael Kölling version française: Patrice Moreaux Rédigé avec 1.0 Principaux

Plus en détail

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013 NFA 008 Introduction à NoSQL et MongoDB 25/05/2013 1 NoSQL, c'est à dire? Les bases de données NoSQL restent des bases de données mais on met l'accent sur L'aspect NON-relationnel L'architecture distribuée

Plus en détail

Benny Creppy Claudia Senardière

Benny Creppy Claudia Senardière Benny Creppy Claudia Senardière Master 1. 2 Etudes et Analyses Marketing et Commerciales Quelles nouveautés sur Internet concernant les panels? Travail de synthèse effectué dans la cadre du master 2 Etudes

Plus en détail

Généralités sur les confirmations de produits dérivés OTC

Généralités sur les confirmations de produits dérivés OTC Généralités sur les confirmations de produits dérivés OTC Afin d éviter de se répéter à propos de chaque produit, il est important d indiquer ici quelques invariants dans le processus de confirmation.

Plus en détail

Bases de données cours 1

Bases de données cours 1 Bases de données cours 1 Introduction Catalin Dima Objectifs du cours Modèle relationnel et logique des bases de données. Langage SQL. Conception de bases de données. SQL et PHP. Cours essentiel pour votre

Plus en détail

Rappel sur les bases de données

Rappel sur les bases de données Rappel sur les bases de données 1) Généralités 1.1 Base de données et système de gestion de base de donnés: définitions Une base de données est un ensemble de données stockées de manière structurée permettant

Plus en détail

Programmer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr)

Programmer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Programmer en JAVA par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Plan 1. Présentation de Java 2. Les bases du langage 3. Concepts avancés 4. Documentation 5. Index des mots-clés 6. Les erreurs fréquentes

Plus en détail

Initiation à la programmation en Python

Initiation à la programmation en Python I-Conventions Initiation à la programmation en Python Nom : Prénom : Une commande Python sera écrite en caractère gras. Exemples : print 'Bonjour' max=input("nombre maximum autorisé :") Le résultat de

Plus en détail

Magasins et entrepôts de données (Datamart, data warehouse) Approche relationnelle pour l'analyse des données en ligne (ROLAP)

Magasins et entrepôts de données (Datamart, data warehouse) Approche relationnelle pour l'analyse des données en ligne (ROLAP) Magasins et entrepôts de données (Datamart, data warehouse) Approche relationnelle pour l'analyse des données en ligne (ROLAP) Définition (G. Gardarin) Entrepôt : ensemble de données historisées variant

Plus en détail

Bases de données Oracle Virtual Private Database (VPD) pour la gestion des utilisateurs d applications

Bases de données Oracle Virtual Private Database (VPD) pour la gestion des utilisateurs d applications Bases de données Oracle Virtual Private Database (VPD) pour la gestion des utilisateurs d applications P.-A. Sunier, HEG-Arc Neuchâtel avec le concours de J. Greub pierre-andre.sunier@he-arc.ch http://lgl.isnetne.ch/

Plus en détail

Évaluation d une architecture de stockage RDF distribuée

Évaluation d une architecture de stockage RDF distribuée Évaluation d une architecture de stockage RDF distribuée Maeva Antoine 1, Françoise Baude 1, Fabrice Huet 1 1 INRIA MÉDITERRANÉE (ÉQUIPE OASIS), UNIVERSITÉ NICE SOPHIA-ANTIPOLIS, I3S CNRS prénom.nom@inria.fr

Plus en détail

Scénarios économiques en assurance

Scénarios économiques en assurance Motivation et plan du cours Galea & Associés ISFA - Université Lyon 1 ptherond@galea-associes.eu pierre@therond.fr 18 octobre 2013 Motivation Les nouveaux référentiels prudentiel et d'information nancière

Plus en détail

Bases de données avancées

Bases de données avancées Bases de données avancées Jean-Yves Antoine LI - Université François Rabelais de Tours Jean-Yves.Antoine@univ-tours.fr UFR Sciences et Techniques IUP SIR Blois Master 1 Bases de Données avancées IUP Blois,

Plus en détail

Chapitre 3 LE MODELE RELATIONNEL ET SQL (DDL)

Chapitre 3 LE MODELE RELATIONNEL ET SQL (DDL) Chapitre 3 LE MODELE RELATIONNEL ET SQL (DDL) Un modèle de données définit un mode de représentation de l information selon trois composantes : 1. Des structures de données. 2. Des contraintes qui permettent

Plus en détail

Plan global Outils de développement et compilation. Ce que l on veut éviter. Plan. Git : gestion de code source et versionnement.

Plan global Outils de développement et compilation. Ce que l on veut éviter. Plan. Git : gestion de code source et versionnement. Plan global Outils de développement et compilation Git : gestion de code source et versionnement Timothée Ravier LIFO, INSA-CVL, LIPN 1 re année cycle ingénieur STI 2013 2014 1 Historique 2 Git 3 Pour

Plus en détail