La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

1 Manipulations Multibases et Distribuées (Partie 2)

Présentations similaires


Présentation au sujet: "1 Manipulations Multibases et Distribuées (Partie 2)"— Transcription de la présentation:

1 1 Manipulations Multibases et Distribuées (Partie 2)

2 2 Manipulations Multibases et Distribuées (Kandinsky: Ligne avec Accompagnement, 1937 )

3 3 Manipulations Multibases et Distribuées

4 4 MSQL (Litwin, Abdellatif, Nicolas, Zeroual, 1989) u Une extension multibase de SQL u Permet des manipulations multibases non- procédurales requêtes MSQL impossibles à formuler en SQL Une requête MSQL peut remplacer plusieurs requêtes SQL u Offre des fonctions spécifiques pour l'env. MBD –adresser des relations dans les bases différentes –manipuler les données hétérogènes –créer vues multibases –transférer les données (et les schémas) entre les bases –définir les dépendances multibases (triggers)

5 5 MSQL : exemple Vue SIL = Schéma Interne Logique

6 6 Schémas conceptuels (le multischéma) DB bnp : br (br#, brname, street, street#, city, zipcode, tel) account (acc#, cl#, balance, br#) client (cl#, clname, cltel, cltype, street, street#, city, zipcode) spe-acc (acc#, br#, cl#, balance, curr) DB sg : branch (bra#, braname, street, s#, town, zip, t#, class) acc (acc#, bra#, c#, balance) client (c#, cname, ct#, ctype, street, s#, town, zip) DB cic : br (br#, brname, street, street#, city, zipcode, tel) account (ac#, br#, cl#, balance, open_date) client(cl#, clname, cltel, cltype, street, street#, city, zipcode)

7 7 Hétérogénéité sémantique dans les banques u Les mêmes noms peuvent désigner des données différentes –les banques sont autonomes et ne partagent pas les succursales (branches) u Différents noms peuvent désigner les mêmes données –un même client, une même ville ou rue.. u La valeur d'une clé n'est valable que dans une base –comment identifier un même client de deux banques ?

8 8 Commandes MSQL u CREATE TABLECREATE DATABASE u CREATE MULTIDATABASECREATE VIEW u ALTER TABLEALTER VIEW u ALTER MULTIDATABASE u DROP TABLEDROP DATABASE u DROP MULTIDATABASEDROP VIEW

9 9 MSQL CREATE DATABASE Champs de la requête

10 10 MSQL CREATE TABLE use banks ; CREATE TABLE boulogne.pret FROM bnp.pret ; CREATE TABLE ch_en_bois (Chq# INT, Montant_Euro CURRENCY [].... ); On a crée quatre tables : bnp. ch_en_bois, cic. ch_en_bois... boulogne. ch_en_bois ALTER Banks INCLUDE Vernes REMOVE cic ; Unité de mesure

11 11 MSQL Requêtes élémentaires

12 12 Requêtes élémentaires Note historique Préfixage par les noms de bases était inconnu de SQL jusquà La 1ère implémentation à été faite à lINRIA vers 1985 Prototype MRDSM Sybase a été le 1èr SGBD commercial à loffrir Vers 1988 DB2 ne la toujours pas Le standard SQL la pris en compte vers 1993 SQL Access Group présidé par Jim Gray La syntaxe de requêtes élémentaires continue de varier néanmoins avec les dialectes Oracle par exemple utilise le postfixage (voir plus loin)

13 13 MSQL Base par défaut Les tables de la base par défaut sont sans préfixe

14 14 MSQL Requêtes élémentaires sans noms de BDs Les noms (propres) de tables sont uniques dans le champ de la requête

15 15 Mises à jour USE (bnp b) sg ; UPDATE account SET account.balance = account.balance WHERE account.balance > acc.balance AND b.client.clname = sg.client.cname AND b.client.street = sg.client.street ; u Que veut dire cette requête ?

16 16 Requêtes multiples

17 17 Requêtes multiples

18 18 Résultat (une multitable)

19 19 Mises à Jour Multiples Use Banks Update cl* set street = 'Charles de Gaulle" where street = 'Etoile' Use Banks vital cic Update cl* set street = 'Charles de Gaulle" where street = 'Etoile' u MSQL transaction semantics is > ACID –peut inclure COMP (compensation)

21 21 Variables sémantiques dans MSQL use bnp sg let x be town city select * from b% where x = 'Paris' and street = 'r. de Rivoli' use bnp select * from br where town = 'Paris' and street = 'r. de Rivoli' ; use sg select * from branch where city = 'Paris' and street = 'r. de Rivoli' ;

22 22 Variables sémantiques dans MSQL use bnp sg let x be town city select * from b% where x = 'Paris' and street = 'r. de Rivoli' Alternativement: use bnp sg let x be to% city select * from b% where x = 'Paris' and street = 'r. de Rivoli'

23 23 Variables sémantiques dans MSQL use banks let x be town city let y be sg bnp select X.* from y.b% X, cic.b% Y where Y.x = 'Paris' and Y.street = X.street and X.x = 'Paris'; u Quelle est la sémantique de cette requête ? u Est-ce que sa décomposition "naturelle" en requêtes élémentaires, selon l'évaluation de variables sémantiques, est optimale ? u Sinon, quelle est celle potentiellement meilleure ?

24 24 Algèbre multirelationnelle u Non, la décomposition naturelle n'est pas optimale –la sélection dans cic est répétée inutilement u il faut la faire d'abord, puis la jointure u il faut un outil algébrique formel pour les requêtes multiples pour résoudre de tels cas d'une manière générale –l'algèbre multirelationnelle Grant, Litwin, Selis, Roussopoulos. An Algebra and Calculus for Relational Multidatabases. The VLDB Journal, Vol. 2, No. 2, April 1993,

25 25 Homogénéisation de noms Les labels USE Banks ; LET t BE tel t# SELECT %name branch_name, t tel#, s%# street# FROM br% br WHERE street = Champs Elysées ; Le résultat : la multitable: {( bnp.br.branch_name, bnp.br.tel#, bnp.br.street# ), ( sg.br.branch_name, sg.br.tel#, sg.br.street# ) ( cic.br. branch_name, cic.br.tel#, cic.br.street# )}

26 26 Vues multibases Une vue partielle de bases bnp et sg dans la base my_bank my_bank bnp sg Les vues dans my_bank peuvent-être considérées un Schéma d'Importation

27 27 Mots-clés et Fonctions Agrégats u Mots-clés et Fonctions Agrégats de SQL –par définition »DISTINCT, GROUP BY, ORDER BY »COUNT, AVG, SUM.. –opèrent sur chaque table d'une multitable u Leur extensions aux multitables »MDISTINCT, MCOUNT, MGROUP BY, MORDER BY MAVG, MSUM... –opérent sur la totalité de la multitable

28 28 Exemple USE Banks SELECT COUNT (*) FROM br% br WHERE street = 'champs elysées' ;

29 29 Exemple USE Banks SELECT COUNT (*) FROM br% br WHERE street = 'champs elysées' ; bnp.br 2 cic.br 2 sg.br 2

30 30 Exemple USE Banks SELECT MCOUNT (*) FROM br% br WHERE street = 'champs elysées' ;

31 31 Exemple USE Banks SELECT MCOUNT (*) FROM br% br WHERE street = 'champs elysées' ; br 6

32 32 Fonctions Agrégats MERGE ON u forme un tuple de tous les tuples d'un même objet dans la multitable sélectionnée –Utilise les jointures externes u Trouve les millionnaires dans Banks et forme un tuple pour chaque millionnaire trouvé USE Banks ; LET x.y BE clname.cltel cname.ct# LET z BE Banks.* SELECT * FROM z.a% WHERE z.a%.c%# = z.client.c%# AND z.a%.balance > MERGE ON x y ;

33 33 Fonctions Agrégats MERGE ON USE Banks ; LET x.y BE clname.cltel cname.ct# LET z BE Banks.* SELECT * FROM z.a% WHERE z.a%.c%# = z.client.c%# AND z.a%.balance > MERGE ON x y ; nuls

34 34 Fonctions Agrégats NAME u Transforme un nom (de table, d'attribut..) en valeur d'attribut USE Banks ; LET x.y BE br.city branch.town SELECT %name branch_name, NAME (.x) bank FROM x WHERE y = 'Nice' UNION * ; Note: L'union * réunit les tables de la multitable sélectionnée u Le résultat c'est la table avec le schéma : branch_name bank

35 35 Fonctions Agrégats CHOOSE u Choisit au plus n tuples parmi ceux trouvés par la requête –les 1èrs trouvés, comme fait la fonction TOP (défaut) –au hasard pur (RND) –ceux qui n'ont pas été choisi à la précédente exécution de la requête dans la même transaction (NEW) –de préférence dans les bases listées et en ordre –en choisissant au plus m tuples partageant les valeurs des attr. dans la liste B, supposée clé globale d'un objet. –dans la limite de t unités de temps »t est prioritaire sur n CHOOSE (n, (m, ) [ ] ) [RND | NEW] ::= ::=

36 36 Fonctions Agrégats CHOOSE u Choisis UN millionnaire d'une manière aléatoire USE Banks ; SELECT c.* FROM c% c, a% a WHERE c.c%# = a.c%# AND a.a%# > CHOOSE () RND ; u Fonction très importante dans l'environnement MBD –surcharge d'information

37 37 Fonctions Agrégats TIMEOUT u Fixe la durée maximale de la requête –la requête arrivant au time-out est considérée exécutée avec succès TIMEOUT (t [unité]) ; := ms | s | m | h | d s - secondes (défaut) USE Banks SELECT * FROM br% WHERE street = 'champs elysées' TIMEOUT (10) ;

38 38 Fonctions Agrégats POST u Rend continuelle une requête –On manipule tout tuple trouvé durant le temps de vie –Même ceux crées après le lancement de la requête –On peut limiter son temps de vie par TIMEOUT USE Immo LaCentrale Orpi ; SELECT * FROM logem% WHERE prix < 1,000,000 AND Ville = 'Paris' POST ;

39 39 Fonctions Agrégats ESTIMATE u Calcule les coûts de la requête avant son exécution et peut lancer l'exécution après l'autorisation ESTIMATE (type, price, time, count, size, report) [WITH EXEC_PROMPT] u type d'estimation: –exact (peut être long à calculer) –approximatif u prix de la requête (en $, FF...). u temps de complétion u nombre de tuples u taille du résultat, en octets. u rapport sur l'estimation elle-même –la précision...

40 40 Privilèges dans MSQL USE bnp sg cic ; GRANT SELECT ON client TO Nicolas Abdellatif ; client est une multitable : client = (bnp.client, sg.client, cic.client) GRANT ALL ON etoile.account TO Nicolas Abdellatif FROM bnp.account ; GRANT ALL ON etoile.account TO Nicolas FROM Zeroual ON bnp.account ;

41 41 Requêtes interbases u Transfèrent les données entre des BDs u La source et la cible de la requête sont des multitables u Conflits possibles entre les données transférées et celles existantes dans la cible INSERT...

42 42 Requêtes interbases u INSERT –insère les tuples sélectionnés »sauf ceux dont la clé est déjà dans la cible u STORE –insère les tuples sélectionnés »en remplaçant ceux dont la clé est déjà dans la cible u REPLACE –insère les tuples sélectionnés et delete le reste de la cible u UPDATE –met à jour les tuples sélectionnés dans la cible par les valeurs de tables sources u COPY –copie les tuples et le schéma de la source

43 43 MSQL u Il y d'autres fonctions intéressantes –On verra certaines plus tard –voir aussi l'article MSQL : A multidatabase Language. Information Science Journal : Special Issue on Database Systems, 48, 2, (July 1989).

44 44 Eléments de MSQL dans SGBDs commerciaux u La majorité de SGBDs sont des SGMB –Au mieux : les requêtes élémentaires »Sybase, Oracle, Informix, MsAccess, SQL Server,.... –Exception majeure : DB2 u Il y a aussi des SGMB qui ne sont que des systèmes d'accès aux SGBDs SQL-Query, EDA-SQL, Oracle DB Integrator, DBJoiner (IBM), Ingres*, UniSQL/M, Uniface, Q+E, OAdaptor (HP), Telebase... u Les systèmes dits "Data Warehouse« sont des SGMB

45 45 Manipulations MBD en MsAccess u On peut faire des opérations MBD limitées entre –Bases MsAccess –Une BD de MsAccess et »toute autre BD sous un SGBD compatible ODBC »Paradox, Btrieve, Dbase »Tout programme OLE compatible u Excel notamment

46 46 Manipulations MBD en MsAccess MsAccess Attach Paradox Excel Oracle Sybase B1 Passerelle Paradox ODBC Sybase ODBC driver ODBC Import Export Connect. réparties B3 B2 Insert INTO

47 47 MsAccess & MSQL u Open B USE B u ATTACH table Open B1 attach B2.T' as T create view B1.T as select * from B2.T' »DROP VIEW correspond à Delete dans un menu de MsAccess u Clause IN Open B1 Select a, b, c From D IN B2 select a, b c from B2.D

48 48 Exemples MsAccess u Source DB: MsAccess SELECT [Customer ID] FROM Customers IN MYDATA.MDB WHERE [Customer ID] Like "A*"; u Source DB: Paradox SELECT [CustomerID] FROM Customers IN "C:\PARADOX\DATA\SALES" "Paradox 4.x;" WHERE CustomerID Like "A*"; u Tout transfert de données d'une/vers BD non-MsAccess ou logiciel compatible OLE comporte les conversions de représentation de données –Hétérogénéité sémantique oblige

49 49 Requêtes élementaires MsAccess u On peut ouvrir une BD et faire les requêtes à d'autres BDs –il faut définir des aliases dans FROM u Base ouverte s'appelle s-p1.mdb –mais ce nom n'a pas d'importance ici u Jointure de tables dans d'autres bases SELECT TOP 10 C.[Contact Name], C.City FROM [c:\access\nwind2.mdb].Customers AS C, [c:\access\ordentr2.mdb].customers AS O WHERE (o.Id= C.[customer Id]);

50 50 Résultat Contact NameCity Pat ParkesLondon Gladys LindsaySeattle Elizabeth LincolnTsawassen Olivia LaMontSan Francisco Terry HargreavesLondon Elizabeth BrownLondon Sylvia DunnLondon Ann DevonLondon Ronald MerrickLondon Bill LeePocatello

51 51 u Jointure d'une table locale à la base ouverte (S-P.mdb) et d'une table externe de la base mwind2.mdb SELECT TOP 10 S.SName, C.[Contact Name], C.City FROM S, [nwind2.mdb].Customers AS C WHERE ((S.City= C.City)) Order by [contact name]; Requêtes élémentaires MsAccess Obligatoire, contrairement à MSQL

52 52 SName Contact NameCity ClarkAnn DevonLondon ClarkArchibald LangfordLondon ClarkCornelia GilesLondon ClarkDavid BirdLondon ClarkElizabeth BrownLondon ClarkG.K.ChattergeeLondon ClarkGerald PippsLondon ClarkHari KumarLondon ClarkJane AustenLondon ClarkJeffrey JefferiesLondon Résultat

53 53 Requêtes multibases en QBE u Il est aussi possible de formuler les requêtes multibases élémentaires en QBE de MsAccess –ADD Table montre par défaut dans la fenêtre (optionnelle) "Propriétés" les tables de la base ouverte (S-P) »Source Database : (current) –Il y faut mettre le nom absolue de la base de la table à manipuler »après avoir fermé la liste visible venant de "current" DB »alors on voit la liste des table et/ou des vues de cette base »on sélectionne la ou les tables comme d'habitude (par des cliques) »on formule la requête comme celle monobase u y compris les jointures interbases

54 54 New Query

55 55

56 56

57 57

58 58 Résultat

59 59 Puis, alternativement... Et en SQL MsAccess

60 60

61 61 Requêtes multibases en QBE u On peut aussi utiliser les tables préalablement attachées –alors elles apparaissent dans la liste des tables de "current" BD u Puis on peut utiliser les vues multibases –elles apparaissent dans la liste des vues de "current" BD u Enfin, on peut tout mélanger dans une même requête QBE –et SQL

62 62 MsAccess & MSQL u Clause INTO dans Select INTO ou INSERT INTO Open B1 Select a, b, c INTO T IN B2 From D Use B1 ; copy into B2.T select a, b c from D ; »D peut être une vue ou une sous-requête »On ne peut pas combiner les clauses IN et INTO –INSERT de MsAccess a la (sous)sémantique de INSERT de MSQL

63 63 MsAccess & MSQL u IMPORT & EXPORT –commandes au menu –équivalent à la requête MSQL Use B1 ; copy into T1 * from B2.T2 ;

64 64 MsAccess & MSQL Comparaison u Formulation de requêtes MBD élémentaires et des vues MBD avec des ATTACH –d'abord il faut faire des ATTACH –puis on formule une requête SQL monobase –puis, peut-être il faut deleter les ATTACH »dans Banks, il faudrait en pratique que toute BD s'attache toutes les tables de toute autre BD »Bonne chance DBA ! u Requêtes MBD élémentaires –pratiquement MSQL –aux restrictions discutées près u Requêtes multiples et autres possibilités de MSQL »(Encore) inconnues de MsAccess

65 65 SQL Server u Architecture MBD générale similaire à celle de MsAccess, en plus puissante –passerelles vers Oracle, IMS, DB2 –ODBC et donc MsAccess u Le langage Transac-SQL supporte les fonctions suivantes de MSQL et est le dialecte MBD le moins procédural de l'industrie –requêtes élémentaires »aux BDs Sybase d'un même site USE B ; select * from T where B1.T1.a = T.a ; »Une seule base par USE »quelques restrictions au niveau de requêtes interbases –CREATE VIEW multibase, et déclencheurs (triggers) multibases –les déclencheurs réalisent les dépendances MDB

66 66 Oracle, RDB, Informix u Ont une operation similaire à ATTACH dite Create link: Create public database link bnp connect to bnp_unix Create public database link cic connect to cic_vms SELECT br.brname, b.braname, br.street FROM cic b WHERE br.street = b.street ;

67 67 Oracle, RDB, Informix u Les requêtes MBD ne sont possibles qu'après que les liens ont été défini –Donc ces SGBD sont + proceduraux que Sybase pour les manips MBD u Il est possible néanmoins que Oracle 7 supporte les requêtes MBDs sans liens »en postfixage par le nom de base u comme sur le diapo précédent

68 68 EDA-SQL, DB Integrator, DBJoiner, Ingres* & al u Les SGMB SQL d'accès aux SGBD –en théorie, sans leur BDs propres »il y a toujours une, surtout pour les catalogues MBD u dite base auxiliaire u Il faut créer des liens (links) et une ou plusieurs bases logiques –bases virtuelles »en fait presque u seul DB Integrator supporte les requêtes MBD élémentaires –dites requêtes multischéma u Pas d'autres fonctions de MSQL BD logique BD logique BD lMS BD RDB BD Ingres Passerelle ODBC

69 69 SQL-Query u Pas de schéma logique u Accès aux sources hétérogènes –Access, Foxpro, Paradox, Btrieve... u Supporte les requêtes MBD élementaires –en SQL –en QBE u Les tables manipulées dans une base peuvent être –tables de base, vues, tables attachées, vues multibases

70 70 UniSQL/M & O-Adaptor u Similaires aux précedents, sauf que pour la BD logique –UniSQL/M utilise le modèle RO –O-Adaptor utilise un modèle OO u Pas de requêtes MBD (autres que de la création de liens) BD logique BD logique BD lMS BD RDB BD Ingres Passerelle ODBC

71 71 Telebase (USA) u SGMB d'accès aux BDs documentaires –+ Que mille et sur plusieurs sites »Avec différents langages locaux u STAIRS, INSPEC, DIALOG... u Langage commun: Common Command Set (CCS) étendu –Défini comme standard par la CEE et adopté dans le monde entier u Pas de jointures seulement les clauses booléennes u Supporte les fonctions de MSQL –Noms de multibases –Requêtes multiples (dites SCANS) –Standardisées dans ISO BDs INSPEC BDs STAIRS BDs DIALOG Drivers CCS

72 72 Meta-moteurs de recherche u u Interrogent simultanément plusieurs moteurs de recherche au choix –Altavista, Yahoo, Excite, Goto… u Langage de manipulation booleen u Requêtes multiples –Avec les fonctions mdb Name, Mdistinct, Choose, Timeout… u A voir prochainement sur vos écrans.

73 73 Entrepôt de Données (Data Warehouse) u Nouveau concept pour les SGMBs –essentiellement gimmick de marketing made in USA –Data warehouse multibase ou fédération d'une entreprise –mais il y a une idée (un peu) nouvelle »fonctions orientées prise de décision de gestion élaborée »au moins une BD redondante par rapport à celles existantes est créée dans ce but u L'avenir : à voir Data warehouse BD lMS BD RDB BD Ingres Passerelle ODBC Data mart

74 74 International Journal of Cooperative Information Systems Special Issue on Design and Management of Data Warehouses Guest editors: Manfred A. Jeusfeld and Martin Staudt Data Warehousing embraces technology and industrial practice to systematically collect data from the enterprise and to use that data in a highly aggregated form for managing the enterprise thru decisions. Little attention is currently paid to design and manage a data warehouse (DW) in such a way that it accomplishes its purpose, i.e. to support the management of the enterprise. Existing solutions are focusing on technical aspects like efficient source data extraction. Their parameters are however incomprehensible to the stakeholders who decide on the introduction of a data warehouse. Data warehouses are important in managing large enterprises and in communicating highly aggregated information between the various departments. Interoperable tools and integrated methods to manage data warehouses in order to fulfill the enterprise goals are desperately needed. Such tools should cover all aspects of data warehousing: - selection of data sources - data cleaning - conceptual/logical/physical data warehouse design - enterprise modeling - data warehouse quality monitoring - data warehouse refreshment methods - architecture design - data mart customization, etc. Un appel aux communications récent et intéressant (Oct 1999)

75 75 Conclusion u Manipulations multibases - parmi les plus importantes directions de R & D dans les SGBDs u Autres mots-clés: –Interopérabilité –Intégration –Bases Fédérées –Bases Réparties Hétérogènes –Data Warehouses u MSQL est un véhicule de recherche le + avancé de l'étude de fonctions d'un langage MBD relationnel –Diverses fonctions multibases

76 76 Conclusion u Les fonctions basiques de MSQL sont dans des SGMB commerciaux –Requêtes élémentaires dans la plupart de SGBDs relationnels –Requêtes multiples dans des SGMBs –Dépendances multibases dans les Entrepôts de Données –La suite viendra naturellement u La conception multibase (fédérée) devient préferentielle pour une VLDB –La plus grande « VLBD « connue (UPS) est une multibase –Il y en a dautres –DB2 UDB 6.2 offre de fonction spécifiques de création multibase

77 77 Conclusion u Enfin, il y a encore beaucoup à apprendre et à faire –aussi bien dans dans l'industrie que dans la recherche »Optimisation de requêtes MSQL »Implémentation de nouvelles fonctions agrégats (CHOOSE…) »Unités de mesure et de monnaies »Manipulations de données de précision différente »Multibases relationnelles-objet »…»…

78 Fin Voir aussi les exercices qui suivent

79 79 Exercices u La multibase Banques a grossi à 100 banques. Chaque banque a ajouté une table avec « ses » cheques en bois. Ces tables sont homogènes dun commun accord pour les attributs ci-dessous et peuvent avoir dautres attributs, lautonomie locale obligeant: Chq-en-bois (ch#, c#, date, montant, ordre, banque-bénef Formulez les requêtes: –Nombre total et moyenne totale de cheques en bois –Nombre total et montant total par banque émettrice –Nombre total et montant total par banque bénéficiaire –La personne bénéficiaire du cheque en bois le plus gros –La banque émettrice du cheque le plus gros –10 cheques les plus gros –Nom du client cic dont le cheque en bois est au même ordre quun le cheque en bois dun client de bnp –Nom du client cic dont le cheque en bois à la date 01/01/00 est au même ordre quun le cheque en bois dun autre client –Quelle serait la décomposition optimisée de cette requête en celles de SQL ? –Mettre à jour tout code postal (zip…) à dans la base cic et toute autre si possible –Rechercher pendant 20 jours les cheques en bois a lordre du « Trésor Public »

80 80 Exercices u Créer une table attachée (liée) dans MsAccess u Faire en pratique les requêtes mdb MsAccess discutées en cours, en SQL et QBE u Tester DB2, Oracle, SQL-Server… u Comment faire sous ces SGBDs pour la multibase et les requêtes MSQL ci-dessus ? Concevoir un Entrepôt de Données sous MsAccess 2000 (un projet complexe !) u Différence entre un SGBD multibase et un système daccès multibase. u Lesquels parmi les SGBDs énumérés sont des SGMBs ? –MsAccess, DB2, Informix, Ingres, Oracle, SQL Server,,, Unisql u Comment le concept dune requête multiple de MSQL est appliquées par lindustrie aujourdhui –dans BigHub and AskJeewes en particulier. u Introduisez le conception dEntrepôts de Données (quoi, pourquoi, comment) u Quelle est la différence entre un « Data Warehouse » et un « DataMart »


Télécharger ppt "1 Manipulations Multibases et Distribuées (Partie 2)"

Présentations similaires


Annonces Google