<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet title="XSL formatting" type="text/xsl" href="http://blog.netapsys.fr/index.php/feed/rss2/xslt" ?><rss version="2.0"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
  <title>Netapsys Blog - Business Intelligence</title>
  <link>http://blog.netapsys.fr/index.php/</link>
  <description></description>
  <language>fr</language>
  <pubDate>Thu, 29 Jul 2010 16:33:35 +0200</pubDate>
  <copyright>Netapsys 2008 - 2009</copyright>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Dotclear</generator>
  
    
  <item>
    <title>[Palo Global Roadshow 2010] Palo 3.1 - Une stratégie orientée vers les environnements web intégrés</title>
    <link>http://blog.netapsys.fr/index.php/post/2010/04/19/%5BPalo-Global-Roadshow-2010%5D-Palo-31-Une-strategie-oriente-vers-les-environnements-web-integres</link>
    <guid isPermaLink="false">urn:md5:e73cc54b96ae010801045a14210b4392</guid>
    <pubDate>Mon, 19 Apr 2010 12:40:00 +0200</pubDate>
    <dc:creator>Alexis Rousset</dc:creator>
        <category>Business Intelligence</category>
        <category>BI</category><category>Business Intelligence</category><category>OLAP</category><category>Open Source</category><category>Palo</category>    
    <description>&lt;p&gt;Le 14/04/2010 a eu lieu à Paris le Palo Global Roadshow 2010 organisé par Jedox pour présenter la nouvelle version de Palo. Netapsys était bien entendu présente à cet évènement pour guetter les nouvelles offres des éditeurs Open Source dans le domaine de la Business Intelligence.&lt;/p&gt;    &lt;p&gt;Palo est un des seuls éditeurs de serveur de base données OLAP Open Source. Je vous vois déjà venir en me disant que j'oublie très certainement Mondrian, pourtant difficile de comparer ces deux outils puisque qu'ils ne jouent pas tout à fait dans la même cour. Palo est un serveur OLAP de type MOLAP alors que Mondrian est un serveur de type ROLAP, ce qui signifie que Mondrian se base simplement sur une base de données relationnelle pour simuler un cube alors que Palo est une véritable base de données multidimensionnelle.&lt;/p&gt;


&lt;p&gt;En plus de son moteur OLAP qui est sans aucun doute son cœur de métier, Palo semble s'étendre de plus en plus vers le concept de plateforme BI. Son offre s'est très largement élargie en proposant des outils d'ETL, de reporting et d'analyse.&lt;/p&gt;


&lt;p&gt;Palo est un outil à ne pas perdre de vue puisqu'il permet d'obtenir des performances intéressantes et qu'il s'interface très largement avec le fameux logiciel Microsoft Excel, que la majorité des utilisateurs utilisent déjà pour faire des analyses.&lt;/p&gt;


&lt;p&gt;Les nouveautés dans la version 3.1 de Palo peuvent se résumer en 3 grands points&amp;nbsp;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Tout d'abord, il est énoncé une amélioration de &quot;&lt;em&gt;la performance et de la stabilité&lt;/em&gt;&quot;. Difficile encore d'avoir un vrai retour sur ces aspects mais il semblerait que ce soit effectivement le cas au dire de certains utilisateurs.&lt;/li&gt;
&lt;li&gt;Palo Web&amp;nbsp;: Un des objectifs majeurs de Palo 3.1 a été d'intégrer dans une seule interface web l'ensemble des composants (ETL, Spreadsheet, Pivot). Le très gros point fort est d'offrir à l'utilisateur un environnement totalement similaire à Excel mais dans un navigateur Web.  Palo permet ainsi à l'utilisateur de rester dans un environnement connu et  facilite la maintenance et le déploiement de la solution.&lt;/li&gt;
&lt;li&gt;Palo OLAP GPU&amp;nbsp;: Un nouveau composant fait son apparition en version Beta. Palo OLAP GPU permet d'utiliser la puissance de calcul des processeurs de carte graphique pour gagner en performance. Les processeurs de carte de graphique sont en effet &quot;&lt;em&gt;optimisés pour le calcul parallèle de données et sont ainsi idéaux pour calculer rapidement des requêtes complexes telles qu’on en rencontre dans les applications de Business Intelligence&lt;/em&gt;&quot;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Jedox Palo a une ligne directrice et des objectifs bien définis et clairs qui peuvent donner toute confiance dans l'évolution de cet outil.&lt;/p&gt;</description>
    
    
    
          <comments>http://blog.netapsys.fr/index.php/post/2010/04/19/%5BPalo-Global-Roadshow-2010%5D-Palo-31-Une-strategie-oriente-vers-les-environnements-web-integres#comment-form</comments>
      <wfw:comment>http://blog.netapsys.fr/index.php/post/2010/04/19/%5BPalo-Global-Roadshow-2010%5D-Palo-31-Une-strategie-oriente-vers-les-environnements-web-integres#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.netapsys.fr/index.php/feed/rss2/comments/147</wfw:commentRss>
      </item>
    
  <item>
    <title>Navigation au sein d'un Cube OLAP</title>
    <link>http://blog.netapsys.fr/index.php/post/2009/05/28/Naviguation-au-sein-dun-Cube-OLAP</link>
    <guid isPermaLink="false">urn:md5:169e811ddc779ef5826ec7e72f5f5f59</guid>
    <pubDate>Thu, 28 May 2009 14:01:00 +0200</pubDate>
    <dc:creator>Alexis Rousset</dc:creator>
        <category>Business Intelligence</category>
        <category>Business Intelligence</category><category>Cube</category><category>JPivot</category><category>MDX</category><category>Mondrian</category><category>OLAP</category><category>open source</category>    
    <description>&lt;p&gt;Un des principaux points de la Business Intelligence est l’analyse multidimensionnelle. Il devient primordial de pouvoir étudier une même information suivant différents axes. Par exemple, il est très intéressant pour une entreprise de pouvoir interpréter son chiffre d’affaires par zone géographique, par période temporelle, par produit, par client…&lt;/p&gt;


&lt;p&gt;Un moyen pour effectuer ces analyses est d’utiliser des cubes (ou hyper cube). Un cube permet de stocker une information et de la lier à plusieurs dimensions afin d’effectuer des analyses en fonction de celles-ci.  Je vous propose dans ce post de nous intéresser à différentes façons de naviguer au sein d’un cube afin de récupérer une information.&lt;br /&gt;
&lt;br /&gt;&lt;/p&gt;    &lt;p&gt;Il existe un certain nombre d’outils graphiques, souvent spécifiques aux éditeurs du cube, qui offrent la possibilité de naviguer facilement au sein de celui-ci. Dans ce post, je ne vais parler que de l’outil appelé JPivot qui permet de naviguer au sein d’un cube Mondrian.&lt;/p&gt;


&lt;p&gt;Il existe aussi un langage spécifique à la navigation multidimensionnelle&amp;nbsp;: le langage MDX. Ce langage peut être comparé au SQL pour les bases relationnelles. Je vous propose donc de présenter ensuite quelques bases du MDX.&lt;/p&gt;



&lt;h3&gt;JPivot&lt;/h3&gt;


&lt;p&gt;JPivot est un moyen simple pour un utilisateur non informaticien d’obtenir une information à partir d’un cube, il permet de transcrire des actions graphiques en requête MDX.&lt;/p&gt;


&lt;p&gt;L’outil JPivot présente le cube sous forme de tableau croisé. Il permet d’insérer en abscisse ou en ordonné les différentes dimensions afin d’étudier les mesures du cube.&lt;/p&gt;


&lt;p&gt;Regardons pour commencer une petite vidéo pour ressortir le Chiffre d’affaires par Produit et par marché sur différentes années&amp;nbsp;: &lt;a href=&quot;http://blog.netapsys.fr/public/images/BI/video/JPivot_skin.swf&quot; hreflang=&quot;fr&quot;&gt;http://blog.netapsys.fr/public/images/BI/video/JPivot_skin.swf&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;Comme vous pouvez le voir, rien de plus simple pour obtenir l’information que l’on souhaite. On peut grâce à cet outil accéder à toutes les informations contenues dans le cube.
Cependant, cet outil qui a été développé dans le but de rester simple et facile d’utilisation ne permet pas de profiter de toutes les possibilités qu’offre le langage MDX. Il est donc intéressant d’avoir quelques bases sur ce langage afin de répondre à des besoins parfois plus spécifiques.&lt;/p&gt;


&lt;h3&gt;Les bases du MDX&lt;/h3&gt;


&lt;p&gt;Je vous propose de décortiquer la requête qui a été générée par JPivot dans la vidéo. Pour faciliter l’explication, cette requête a été un peu simplifiée.&lt;/p&gt;
&lt;pre&gt;
SELECT 
	Crossjoin([Time].[All Years].Children,{[Measures].[Quantity]})
	ON COLUMNS,
	Crossjoin([Markets].[All Markets].Children, [Product].[All Products].Children)
	ON ROWS
FROM [SteelWheelsSales]
&lt;/pre&gt;


&lt;p&gt;Résultat&amp;nbsp;:
&lt;a href=&quot;http://blog.netapsys.fr/public/images/BI/tableau1.png&quot;&gt;&lt;img src=&quot;http://blog.netapsys.fr/public/images/BI/tableau1.png&quot; alt=&quot;Tableau analyse 1&quot; style=&quot;display:block; margin:0 auto;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;Pour ceux qui connaissent le SQL, je pense que vous ne serez pas perdus. En effet, il y a beaucoup de ressemblances, vous verrez cependant que ce langage offre des nouvelles possibilités grâce à certaines fonctions très intéressantes que je détaillerai un peu plus bas.&lt;/p&gt;


&lt;p&gt;La requête est séparée en plusieurs parties&amp;nbsp;: SELECT, FROM, WHERE.&lt;/p&gt;


&lt;h4&gt;SELECT&lt;/h4&gt;


&lt;p&gt;La principale différence avec le SQL vient justement du SELECT qui demande des informations sur les champs à mettre en colonne et des informations sur les champs à mettre en ligne. C’est ce qui est interprété avec les tags ON COLUMNS et ON ROWS.&lt;/p&gt;


&lt;p&gt;Nous avons donc &lt;br /&gt;
&lt;code&gt;Crossjoin([Time].[All Years].Children,{[Measures].[Quantity]})&lt;/code&gt; &lt;br /&gt;
en colonne et &lt;br /&gt;
&lt;code&gt;Crossjoin([Markets].[All Markets].Children, [Product].[All Products].Children)&lt;/code&gt; &lt;br /&gt;
en ligne.&lt;/p&gt;


&lt;p&gt;La fonction &lt;code&gt;Crossjoin()&lt;/code&gt; permet de croiser les données sur les axes et donc d’avoir cet aspect d’arborescence dans le tableau. Nous voyons pour les lignes que nous croisons les Marchés avec les Produits, et pour les colonnes nous croisons le Temps avec la mesure Quantité.&lt;/p&gt;


&lt;p&gt;Attention cependant, il est interdit de mettre des champs d’une même dimension en ligne et en colonne. Par exemple, il n’est pas possible d’indiquer &lt;br /&gt;&lt;/p&gt;
&lt;pre&gt;
SELECT
	[Time].[All Years].Children ON COLUMS,
	[Time].[All Years].[Months].Children ON ROWS
FROM ...
&lt;/pre&gt;

&lt;p&gt;Pourquoi&amp;nbsp;? Tout simplement parce que ceci n’a aucun sens. Une information n’est liée qu’une seule fois à une dimension.&lt;/p&gt;


&lt;h4&gt;FROM&lt;/h4&gt;


&lt;p&gt;Le champ FROM permet simplement d’indiquer le cube que nous souhaitons utiliser, au même titre que les tables en SQL.&lt;/p&gt;


&lt;h4&gt;WHERE&lt;/h4&gt;


&lt;p&gt;Le champ WHERE, qui n’est pas présent dans cet exemple de requête, permet d’indiquer des conditions sur les dimensions non présentes dans le champ SELECT.&lt;/p&gt;


&lt;h3&gt;Quelques fonctions utiles en MDX&lt;/h3&gt;


&lt;h4&gt;La fonction Children&lt;/h4&gt;


&lt;p&gt;Vous avez sans doute remarqué que les dimensions dans la requête se terminent par &lt;code&gt;.Children&lt;/code&gt;. Cette fonction retourne les enfants d’un membre d’une hiérarchie.&lt;/p&gt;


&lt;p&gt;Dans notre cas la hiérarchie «&amp;nbsp;Time&amp;nbsp;» était de cette forme&amp;nbsp;:&lt;/p&gt;
&lt;pre&gt;
Time
|
`-- All Years
	|
	`-- 2003
		|
		`-- Janvier
		|
		`-- Février
		|
		`-- …
	|
	`-- 2004
		|
		`-- Janvier
		|
		`-- Février
		|
		`-- …
	|
	`-- 2005
&lt;/pre&gt;


&lt;p&gt;&lt;code&gt;[Time].[All Years].Children&lt;/code&gt; retroune donc 2003, 2004, 2005 alors que &lt;code&gt;[Time].[All Years].[2003].Children&lt;/code&gt; aurait retourné Janvier, Février, Mars, …&lt;/p&gt;


&lt;h4&gt;Le mot clé NON EMPTY&lt;/h4&gt;


&lt;p&gt;Il arrive parfois que des membres d’une hiérarchie ne contiennent pas de valeur. Le mot clé &lt;code&gt;NON EMPTY&lt;/code&gt; permet d’éliminer les cellules qui sont vides.
Si, par exemple, il n’y avait pas eu de vente en 2004, la requête ci-dessous n’aurait pas affiché la colonne 2004.&lt;/p&gt;

&lt;pre&gt;
SELECT 
	NON EMPTY Crossjoin([Time].[All Years].Children,{[Measures].[Quantity]})
	ON COLUMNS,
	Crossjoin([Markets].[All Markets].Children, [Product].[All Products].Children)
	ON ROWS
FROM [SteelWheelsSales]
&lt;/pre&gt;


&lt;h4&gt;La fonction Order()&lt;/h4&gt;


&lt;p&gt;La fonction &lt;code&gt;Order()&lt;/code&gt; permet, comme son nom l’indique, de classer les éléments en sortie. Cette fonction attend au moins 2 paramètres&amp;nbsp;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Les membres à classer&lt;/li&gt;
&lt;li&gt;La mesure qu’il faut prendre en compte pour les classer&lt;/li&gt;
&lt;li&gt;(Facultatif) le mot clef &lt;code&gt;DESC&lt;/code&gt;, si l’on souhaite les classer par ordre décroissant.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;La requête ci-dessous aurait classé les lignes par marché en fonction de la quantité vendue dans l’ordre croissant&amp;nbsp;:&lt;/p&gt;
&lt;pre&gt;
SELECT
	Crossjoin([Time].[All Years].Children, {[Measures].[Quantity]}) ON COLUMNS,
	Crossjoin(
		Order([Markets].[All Markets].Children, [Measures].[Quantity]), [Product].[All Products].Children
	) ON ROWS
FROM [SteelWheelsSales]
&lt;/pre&gt;


&lt;h4&gt;La fonction Topcount()&lt;/h4&gt;


&lt;p&gt;La fonction &lt;code&gt;Topcount()&lt;/code&gt; est une amélioration de la fonction &lt;code&gt;Order()&lt;/code&gt;. Cette fonction trie un jeu en ordre décroissant et retourne le nombre spécifié d'éléments avec les valeurs les plus élevées.&lt;/p&gt;


&lt;p&gt;La requête ci-dessous permet de ne sélectionner en ligne que les 2 produits avec la plus grande quantité vendue par marché.&lt;/p&gt;
&lt;pre&gt;
SELECT
	Crossjoin([Time].[All Years].Children, {[Measures].[Quantity]}) ON COLUMNS,
  	
	Crossjoin(
		[Markets].[All Markets].Children,
		Topcount([Product].[All Products].Children, 2.0, [Measures].[Quantity])
	) ON ROWS
FROM [SteelWheelsSales]
&lt;/pre&gt;

&lt;p&gt;&lt;a href=&quot;http://blog.netapsys.fr/public/images/BI/tableau2.png&quot;&gt;&lt;img src=&quot;http://blog.netapsys.fr/public/images/BI/tableau2.png&quot; alt=&quot;Tableau analyse 2&quot; style=&quot;display:block; margin:0 auto;&quot; /&gt;&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/p&gt;


&lt;p&gt;Le langage MDX offre encore bien d’autres fonctionnalités que je n’ai pas présentées ici. Si vous souhaitez en connaître d’avantage, je vous conseille d’aller voir la documentation de msdn qui est très complète&amp;nbsp;: &lt;a href=&quot;http://msdn.microsoft.com/fr-fr/library/ms145506.aspx&quot; hreflang=&quot;fr&quot;&gt;http://msdn.microsoft.com/fr-fr/library/ms145506.aspx&lt;/a&gt;.&lt;/p&gt;</description>
    
    
    
          <comments>http://blog.netapsys.fr/index.php/post/2009/05/28/Naviguation-au-sein-dun-Cube-OLAP#comment-form</comments>
      <wfw:comment>http://blog.netapsys.fr/index.php/post/2009/05/28/Naviguation-au-sein-dun-Cube-OLAP#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.netapsys.fr/index.php/feed/rss2/comments/92</wfw:commentRss>
      </item>
    
  <item>
    <title>Pentaho et les Cubes</title>
    <link>http://blog.netapsys.fr/index.php/post/2009/05/06/Pentaho-et-les-Cubes</link>
    <guid isPermaLink="false">urn:md5:614cf7ec38fdfce82a56fec524a6c781</guid>
    <pubDate>Wed, 06 May 2009 09:28:00 +0200</pubDate>
    <dc:creator>Alexis Rousset</dc:creator>
        <category>Business Intelligence</category>
        <category>Business Intelligence</category><category>Cube</category><category>Mondrian</category><category>OLAP</category><category>open source</category><category>Pentaho</category><category>Schema Workbench</category>    
    <description>&lt;p&gt;Dans ce post je vous propose de présenter la création d’un cube dans la suite Pentaho. Nous aurons l’occasion de parler de l’outil Mondrian incorporé dans Pentaho et de l’utilitaire Schéma Workbench.&lt;/p&gt;    &lt;p&gt;La suite &lt;strong&gt;Pentaho&lt;/strong&gt; se base sur l’outil &lt;strong&gt;Mondrian&lt;/strong&gt; pour l’analyse multidimensionnelle.
Mondrian fait partie des cubes de type R-OLAP (&lt;strong&gt;R&lt;/strong&gt;elational &lt;strong&gt;O&lt;/strong&gt;nline &lt;strong&gt;A&lt;/strong&gt;nalytical &lt;strong&gt;P&lt;/strong&gt;rocessing), c'est-à-dire qu’il se base sur une base de données relationnelle et transcrit des requêtes MDX (&lt;strong&gt;M&lt;/strong&gt;ultidimensional &lt;strong&gt;Ex&lt;/strong&gt;pressions) en requêtes SQL.
La base de données doit avoir une topologie en &lt;strong&gt;étoile&lt;/strong&gt; (comme celle dans l’exemple ci-dessous) ou en flocon afin de coller à l’analyse multidimensionnelle.&lt;/p&gt;


&lt;p&gt;Mondrian a comme avantage d’être facilement et rapidement applicable dans une solution. En contre partie, de par son type R-OLAP, il se trouve parfois limité en terme de performance. Il existe cependant des moyens pour pallier en partie ces faiblesses.&lt;/p&gt;


&lt;h3&gt;Contexte&lt;/h3&gt;


&lt;p&gt;Pour créer notre cube nous avons besoin&amp;nbsp;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;D’une table de fait&lt;/li&gt;
&lt;li&gt;De dimensions&lt;/li&gt;
&lt;li&gt;De hiérarchies&lt;/li&gt;
&lt;li&gt;De mesures&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Nous allons nous baser sur un petit exemple, ci-dessous le diagramme de la base de données.&lt;/p&gt;


&lt;pre&gt;&lt;img src=&quot;http://blog.netapsys.fr/public/images/BI/topologieEtoile.png&quot; alt=&quot;Topologie Etoile&quot; /&gt;&lt;/pre&gt;


&lt;p&gt;La table de fait est la table centrale dans la topologie de la base relationnelle, elle est liée aux différentes dimensions avec des clés étrangères et contient les mesures à calculer.&lt;br /&gt;
Les dimensions contiennent les hiérarchies linéarisées.&lt;/p&gt;


&lt;h3&gt;Création d’un cube (Schéma Workbench)&lt;/h3&gt;


&lt;p&gt;La création d’un cube au sens Mondrian est tout simplement la rédaction d’un &lt;strong&gt;fichier XML&lt;/strong&gt;. Ce fichier permet de lier les informations du cube que nous souhaitons faire apparaître et la base de données.
Pour faciliter la création de ce fichier, nous allons utiliser l’outil &lt;strong&gt;Schéma Workbench&lt;/strong&gt; qui offre une interface graphique pour effectuer cette tâche.&lt;/p&gt;


&lt;p&gt;Après avoir configurer dans les «&amp;nbsp;Préférences&amp;nbsp;» la base de données sur laquelle nous souhaitons nous baser, nous pouvons commencer à créer notre cube.&lt;/p&gt;


&lt;p&gt;Je vous propose de regarder la vidéo pour suivre les différentes étapes.
Vidéo disponible à l’adresse&amp;nbsp;: &lt;a href=&quot;http://blog.netapsys.fr/public/images/BI/video/schemaWorkbenchCube_skin.swf&quot; hreflang=&quot;fr&quot;&gt;http://blog.netapsys.fr/public/images/BI/video/schemaWorkbenchCube_skin.swf&lt;/a&gt;&lt;/p&gt;</description>
    
    
    
          <comments>http://blog.netapsys.fr/index.php/post/2009/05/06/Pentaho-et-les-Cubes#comment-form</comments>
      <wfw:comment>http://blog.netapsys.fr/index.php/post/2009/05/06/Pentaho-et-les-Cubes#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.netapsys.fr/index.php/feed/rss2/comments/89</wfw:commentRss>
      </item>
    
  <item>
    <title>Introduction à l'ETL Talend</title>
    <link>http://blog.netapsys.fr/index.php/post/2009/04/17/Introduction-a-lETL-Talend</link>
    <guid isPermaLink="false">urn:md5:915bb1116db5a061ab35cdcf0bee829d</guid>
    <pubDate>Fri, 17 Apr 2009 14:39:00 +0200</pubDate>
    <dc:creator>Alexis Rousset</dc:creator>
        <category>Business Intelligence</category>
        <category>BI</category><category>Business Intelligence</category><category>ETL</category><category>open source</category><category>Talend</category>    
    <description>&lt;h4&gt;Présentation du contexte&lt;/h4&gt;


&lt;p&gt;Dans ce post je vais présenter quelques fonctionnalités de Talend en me basant sur un exemple simple.&lt;/p&gt;


&lt;p&gt;Il me permettra de parler de&amp;nbsp;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;La création de metadonnées&lt;/li&gt;
&lt;li&gt;La création d'un job&lt;/li&gt;
&lt;li&gt;L'utilisation des tables&lt;/li&gt;
&lt;li&gt;La transformation sur un champ&lt;/li&gt;
&lt;li&gt;La jointure entre tables&lt;/li&gt;
&lt;li&gt;L'insertion des données dans une table&lt;/li&gt;
&lt;li&gt;Le lancement d'un job&lt;/li&gt;
&lt;/ul&gt;    &lt;p&gt;Le but de l'exemple est de remplir une table contenant pour une zone de nom de domaine les informations sur son Top-Level-Domain, son continent et le nom de son pays si il y a lieu.&lt;/p&gt;


&lt;p&gt;Nous possédons pour cet exemple&amp;nbsp;: &lt;br /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;une table « zone » contenant toutes les zones sur lesquelles nous souhaitons associer les informations&lt;br /&gt;&lt;/li&gt;
&lt;li&gt;une table « zone_tld » avec pour chaque zone le top-level-domain correspondant&lt;br /&gt;&lt;/li&gt;
&lt;li&gt;une table « continent_country » avec pour chaque code pays le continent correspondant et le noms du pays.&lt;br /&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Nous souhaitons créer une table avec comme information&amp;nbsp;: zon_id, zon_name, zon_tld, zon_extension, zon_country_name, zon_continent.&lt;/p&gt;


&lt;h4&gt;Creation des Metadonnées&lt;/h4&gt;


&lt;p&gt;Tout d'abord, il faut créer une connexion à la base de données comme indiqué sur l'image ci-dessous.&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://blog.netapsys.fr/public/images/BI/talend/metadataConnection.jpg&quot;&gt;&lt;img src=&quot;http://blog.netapsys.fr/public/images/BI/talend/.metadataConnection_m.jpg&quot; alt=&quot;metadataConnection&quot; style=&quot;display:block; margin:0 auto;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;Ensuite, il faut insérer les tables que nous souhaitons utiliser. Il suffit de sélectionner la base que nous venons d'ajouter et de cliquer sur &quot;Retrieve Schema&quot; afin de choisir les tables dans la liste qui est proposée.&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://blog.netapsys.fr/public/images/BI/talend/metadataTable.jpg&quot;&gt;&lt;img src=&quot;http://blog.netapsys.fr/public/images/BI/talend/.metadataTable_m.jpg&quot; alt=&quot;metadataTable&quot; style=&quot;display:block; margin:0 auto;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;Les tables ajoutées apparaissent dans l'arborescence de gauche.&lt;/p&gt;


&lt;h4&gt;Création d'un Job&lt;/h4&gt;


&lt;p&gt;Il est maintenant nécessaire de créer un job. Pour cela, rien de plus simple&amp;nbsp;: sélectionnez &quot;Job Design&quot;, clic droit puis &quot;Create Job&quot;. Il ne vous reste plus qu'a indiquer le nom du job.&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://blog.netapsys.fr/public/images/BI/talend/createJob.jpg&quot;&gt;&lt;img src=&quot;http://blog.netapsys.fr/public/images/BI/talend/createJob.jpg&quot; alt=&quot;createJob&quot; style=&quot;display:block; margin:0 auto;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;h4&gt;Insertion des tables à utiliser&lt;/h4&gt;


&lt;p&gt;Nous allons maintenant insérer dans le job les tables dans lesquelles nous souhaitons récupérer les informations.
Il suffit d'aller dans les metadata que nous avons créées et de glisser/déposer les tables à utiliser dans la zone de travail. Il faut ensuite sélectionner le type d'utilisation de la table, si c'est une entrée depuis cette table (Input) ou une sortie vers cette table (Output). En gros, Input pour faire des SELECT et Output pour des INSERT ou UPDATE.&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://blog.netapsys.fr/public/images/BI/talend/insertTable.jpg&quot;&gt;&lt;img src=&quot;http://blog.netapsys.fr/public/images/BI/talend/.insertTable_s.jpg&quot; alt=&quot;insertTable&quot; style=&quot;display:block; margin:0 auto;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;Dans notre cas, nous insérons les tables comme ci-dessous&amp;nbsp;:&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://blog.netapsys.fr/public/images/BI/talend/workJob.jpg&quot;&gt;&lt;img src=&quot;http://blog.netapsys.fr/public/images/BI/talend/.workJob_s.jpg&quot; alt=&quot;insertTable2&quot; style=&quot;display:block; margin:0 auto;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;h4&gt;Transformation sur un champ&lt;/h4&gt;


&lt;p&gt;Dans la table zone_codump, il y a toutes les zones que nous souhaitons traiter. Les zones sont par exemple&amp;nbsp;: FR, TM.FR, COM.FR, ASSO.FR, PRESSE.FR ... Notre but est de récupérer la dernière extension des zones pour l'indiquer dans le champ zon_extension de la table finale.&lt;/p&gt;


&lt;p&gt;Pour cela, nous allons utiliser l'outil tMap afin de gérer cette transformation. Il suffit de sélectionner dans la liste de droite l'outil &quot;tMap&quot; de la catégorie &quot;Processing&quot; puis de le déposer dans l'espace de travail. Il faut ensuite créer le lien entre la table zone_codump et le tMap.&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://blog.netapsys.fr/public/images/BI/talend/transform1.jpg&quot;&gt;&lt;img src=&quot;http://blog.netapsys.fr/public/images/BI/talend/.transform1_s.jpg&quot; alt=&quot;transforme1&quot; style=&quot;display:block; margin:0 auto;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;Double cliquez sur le tMap afin de le configurer puis cliquez sur le &quot;plus&quot; de la colonne de droite pour ajouter une sortie. Il ne vous reste plus qu'a indiquer le nom de la sortie.&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://blog.netapsys.fr/public/images/BI/talend/transform2.jpg&quot;&gt;&lt;img src=&quot;http://blog.netapsys.fr/public/images/BI/talend/.transform2_s.jpg&quot; alt=&quot;transforme2&quot; style=&quot;display:block; margin:0 auto;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;Par de simples glisser/déposer, ajoutez les colonnes que vous souhaitez récupérer. Dans notre cas, nous prenons zon_id et zon_name, puis nous ajoutons un champ (en cliquant sur le + de  l'encadré en bas à droite) afin de récupérer l'extension de la zone.&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://blog.netapsys.fr/public/images/BI/talend/transform3.jpg&quot;&gt;&lt;img src=&quot;http://blog.netapsys.fr/public/images/BI/talend/.transform3_m.jpg&quot; alt=&quot;transforme3&quot; style=&quot;display:block; margin:0 auto;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;Le champ zon_extension que nous venons de rajouter est pour le moment vide. En cliquant sur le bouton &quot;...&quot; de la cellule Expression de la ligne correspondant à notre champ, nous allons pouvoir inscrire du code java qui va nous permettre de récupérer l'extension.
Dans notre cas nous utilisons le code suivant&amp;nbsp;:&lt;/p&gt;

&lt;pre class=&quot;java&quot;&gt;row1.&lt;span style=&quot;color: #006600;&quot;&gt;zon_name&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;lastIndexOf&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'.'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;!&lt;/span&gt;= &lt;span style=&quot;color: #cc66cc;&quot;&gt;-1&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;?&lt;/span&gt; row1.&lt;span style=&quot;color: #006600;&quot;&gt;zon_name&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;substring&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;row1.&lt;span style=&quot;color: #006600;&quot;&gt;zon_name&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;lastIndexOf&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'.'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;+1&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; : row1.&lt;span style=&quot;color: #006600;&quot;&gt;zon_name&lt;/span&gt;&lt;/pre&gt;


&lt;p&gt;&lt;a href=&quot;http://blog.netapsys.fr/public/images/BI/talend/transform4.jpg&quot;&gt;&lt;img src=&quot;http://blog.netapsys.fr/public/images/BI/talend/.transform4_m.jpg&quot; alt=&quot;transforme4&quot; style=&quot;display:block; margin:0 auto;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;Nous avons donc maintenant pour chaque ligne&amp;nbsp;: zon_id, zon_name et zon_extension.&lt;/p&gt;


&lt;h4&gt;Jointure entre des tables&lt;/h4&gt;


&lt;p&gt;Afin de retrouver pour chaque zone le top-level-domain, le continent et le nom du pays, nous avons besoin de lier les tables entre elles.
Pour faire cette opération nous allons encore utiliser l'outil tMap. Procédez comme à l'étape précédente afin d'ajouter le composant puis liez le composant avec les différentes tables.&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://blog.netapsys.fr/public/images/BI/talend/jointure1.jpg&quot;&gt;&lt;img src=&quot;http://blog.netapsys.fr/public/images/BI/talend/.jointure1_s.jpg&quot; alt=&quot;jointure1&quot; style=&quot;display:block; margin:0 auto;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;Double cliquez sur le tMap afin de le configurer. Pour créer les jointures il suffit de prendre un champ et de le déposer dans la cellule Expr. Key. Les jointures ne sont pas des &quot;inner join&quot; par défaut, il est possible de paramétrer la jointure en utilisant le menu &quot;Unique Match&quot; et la case à choser &quot;Inner Join&quot;. Une fois les jointures mises en place nous arrivons à l'état ci-dessous.&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://blog.netapsys.fr/public/images/BI/talend/jointure2.jpg&quot;&gt;&lt;img src=&quot;http://blog.netapsys.fr/public/images/BI/talend/.jointure2_s.jpg&quot; alt=&quot;jointure2&quot; style=&quot;display:block; margin:0 auto;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;h4&gt;Insertion des données dans une table&lt;/h4&gt;


&lt;p&gt;Nous allons maintenant gérer les données qui vont être insérées dans la table finale. Pour cela nous commençons par créer le lien de sortie du dernier tMap puis nous le lions avec la dernière table.
A la question &quot;Do you want to get the schema of the target component ?&quot; nous répondons &quot;Yes&quot;, cela permet de pré-remplir les champs à insérer dans la sortie &quot;Out&quot; que nous avons créée.&lt;/p&gt;


&lt;p&gt;&lt;img src=&quot;http://blog.netapsys.fr/public/images/BI/talend/insert1.jpg&quot; alt=&quot;insert1&quot; /&gt;&lt;/p&gt;


&lt;p&gt;Il ne nous reste plus qu'a glisser/déposer les informations que nous souhaitons insérer dans chaque champ.&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://blog.netapsys.fr/public/images/BI/talend/insert2.jpg&quot;&gt;&lt;img src=&quot;http://blog.netapsys.fr/public/images/BI/talend/.insert2_s.jpg&quot; alt=&quot;insert2&quot; style=&quot;display:block; margin:0 auto;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;Pour gérer le fait que toutes les zones n'ont pas forcement de continent ou de nom de pays associé nous mettons une petite condition sur ces deux champs afin de leur définir une valeur.
Nous pouvons par exemple faire pour le champ zon_continent&amp;nbsp;:
row3.continent != null&amp;nbsp;? Row3.continent&amp;nbsp;: &quot;Non défini&quot;&lt;/p&gt;


&lt;h4&gt;Lancement du job&lt;/h4&gt;


&lt;p&gt;Notre Job est maintenant terminé et ressemble à&amp;nbsp;:&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://blog.netapsys.fr/public/images/BI/talend/run.jpg&quot;&gt;&lt;img src=&quot;http://blog.netapsys.fr/public/images/BI/talend/.run_s.jpg&quot; alt=&quot;run1&quot; style=&quot;display:block; margin:0 auto;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;Pour lancer le job il suffit d'aller dans l'onglet Run de l'encadré du bas et de cliquer sur &quot;Run&quot;. Il est possible de faire quelques configurations comme cocher la case &quot;Statistique&quot; qui permettra d'afficher l'avancement du processus en indiquant le nombre de lignes traitées.&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://blog.netapsys.fr/public/images/BI/talend/run1.jpg&quot;&gt;&lt;img src=&quot;http://blog.netapsys.fr/public/images/BI/talend/.run1_s.jpg&quot; alt=&quot;run2&quot; style=&quot;display:block; margin:0 auto;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description>
    
    
    
          <comments>http://blog.netapsys.fr/index.php/post/2009/04/17/Introduction-a-lETL-Talend#comment-form</comments>
      <wfw:comment>http://blog.netapsys.fr/index.php/post/2009/04/17/Introduction-a-lETL-Talend#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.netapsys.fr/index.php/feed/rss2/comments/86</wfw:commentRss>
      </item>
    
  <item>
    <title>BI - Open Source vs Propriétaire</title>
    <link>http://blog.netapsys.fr/index.php/post/2009/04/01/BI-Open-Source-vs-Proprietaire</link>
    <guid isPermaLink="false">urn:md5:c1e220667260042278e2416a9458e26c</guid>
    <pubDate>Wed, 01 Apr 2009 10:23:00 +0200</pubDate>
    <dc:creator>Alexis Rousset</dc:creator>
        <category>Business Intelligence</category>
        <category>BI</category><category>Business Intelligence</category><category>BusinessObject</category><category>Cognos</category><category>décisionnel</category><category>jasperSoft</category><category>open source</category><category>pentaho</category><category>SAS</category><category>spagoBI</category>    
    <description>&lt;h3&gt;Etat du marché&lt;/h3&gt;


&lt;p&gt;Je vous propose, pour commencer, de faire un petit tour du marché actuel de la BI en comparant différents produits open source et propriétaires.&lt;/p&gt;


&lt;p&gt;Ci-dessous, un tableau créé à partir de mon expérience personnelle (pour les fonctionnalités qui ont été testées) et des informations que j'ai pu récupérer sur le site des éditeurs (pour les fonctionnalités non testées).&lt;/p&gt;    &lt;p&gt;Les principaux outils testés pris en compte dans l’étude sont les suivants :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Open source : Pentaho, SpagoBI, JasperSoft&lt;/li&gt;
&lt;li&gt;Propriétaire : BusinessObject, SAS, Cognos&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href=&quot;http://blog.netapsys.fr/public/images/BI/tableauMarcheBI.jpg&quot;&gt;&lt;img src=&quot;http://blog.netapsys.fr/public/images/BI/.tableauMarcheBI_m.jpg&quot; alt=&quot;marché BI&quot; style=&quot;display:block; margin:0 auto;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;Une première conclusion : les produits open source remplissent les fonctionnalités majeures des projets BI. Ils couvrent ce large panel avec plus ou moins de facilité de prise en main, mais sont capables de répondre à la plupart des besoins des projets de Business Intelligence.&lt;br /&gt;
Il faut cependant admettre que l'ergonomie est souvent plus travaillée dans les produits propriétaires. On peut prendre l'exemple du reporting ad-hoc qui touche directement l'utilisateur final : cette fonctionnalité implémentée dans les produits open source n'égale pas les produits propriétaires en matière d'ergonomie, de facilité d'utilisation ou de résultat. On regrettera, par exemple, l'impossibilité d'ajouter des graphiques dans le reporting ad-hoc de Pentaho.&lt;/p&gt;


&lt;p&gt;D'autre part, une différence majeure se situe sur les fonctionnalités plus spécifiques aux différents métiers qui sont développées par les éditeurs propriétaires. &lt;br /&gt;
En effet, les produits open source restent généralistes et ne proposent pas d'outils adaptés spécifiquement à un métier. Des outils comme SAS Human Capital Management ou IBM Workforce Performance, pour les ressources humaines, offrant aux entreprises une solution dite complète et rapide d'installation, sont inexistants en open source. Il en est de même pour les domaines du CRM (Customer Relation Ship Management) et de la gestion des Achats.&lt;br /&gt;
On peut cependant s'interroger sur la réelle utilité de ces logiciels. Sont-ils suffisamment adaptables à chaque entreprise&amp;nbsp;? Ne sont-ils pas des moyens commerciaux pour appâter les clients et des « gadgets » au final&amp;nbsp;?&lt;/p&gt;


&lt;p&gt;Pour conclure, je pense que les produits open source ont la capacité de répondre à un grand nombre de besoins en matière de Business Intelligence. Ils sont cependant limités dans les domaines du reporting ad-hoc et sont plus adaptés pour des accès via des portails.&lt;/p&gt;


&lt;h3&gt;Open Source Avantages / Inconvénients&amp;nbsp;?&lt;/h3&gt;


&lt;p&gt;Les interrogations les plus fréquentes en matière d'utilisation de produits open source sont les suivantes&amp;nbsp;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Interrogation sur la pérennité&amp;nbsp;?&lt;/li&gt;
&lt;li&gt;Interrogation sur la documentation et le support&amp;nbsp;?&lt;/li&gt;
&lt;li&gt;Interrogation sur la complexité&amp;nbsp;?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Chacune de ces interrogations doit être étudiée au cas par cas suivant les solutions envisagées. Voici notre tableau de synthèse concernant les outils de BI open source :&lt;/p&gt;


&lt;h4&gt;Avantages&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Coût minimum&lt;/strong&gt;&amp;nbsp;: Atout majeur incontesté.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Adaptabilité&lt;/strong&gt;&amp;nbsp;: Les outils n'ont normalement pas de restriction de connectivité avec d'autres produits (en théorie),  contrairement aux produits propriétaires qui ont souvent des contrats avec d'autres produits.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Idéal pour la création de prototype&lt;/strong&gt;&amp;nbsp;: Pas besoin de prendre de période d'évaluation parfois trop courte pour tester le produit.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Contrôle sur le produit final&lt;/strong&gt;&amp;nbsp;: Les outils propriétaires ont majoritairement un grand nombre d'assistants ce qui peut être au détriment du contrôle sur le résultat.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Normalisation&lt;/strong&gt;&amp;nbsp;: Les outils open source sont par définition « ouverts » en utilisant des normes communes contrairement aux outils propriétaires qui ont parfois tendance à renfermer les utilisateurs sur leurs produits.&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;Inconvénients&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Pas d'obligation de résultat&lt;/strong&gt;&amp;nbsp;: Malheureusement si ça ne marche pas il est difficile de se plaindre comme on pourrait le faire vis-à-vis d’un éditeur.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Délai d'ajout de nouvelles fonctions&lt;/strong&gt;&amp;nbsp;: Bien que certaines communautés soient très actives, il est parfois difficile d’avoir une visibilité fine sur le planning de développement.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mise à jour parfois instable&lt;/strong&gt;&amp;nbsp;: Cela peut aussi arriver chez les propriétaires, mais c'est tout de même moins fréquent.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ergonomie&lt;/strong&gt;&amp;nbsp;: Les utilisateurs finaux ont souvent plus de facilité à prendre en main un produit d'un éditeur propriétaire.&lt;/li&gt;
&lt;/ul&gt;</description>
    
    
    
          <comments>http://blog.netapsys.fr/index.php/post/2009/04/01/BI-Open-Source-vs-Proprietaire#comment-form</comments>
      <wfw:comment>http://blog.netapsys.fr/index.php/post/2009/04/01/BI-Open-Source-vs-Proprietaire#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.netapsys.fr/index.php/feed/rss2/comments/83</wfw:commentRss>
      </item>
    
  <item>
    <title>Les étapes et notions d'un projet BI</title>
    <link>http://blog.netapsys.fr/index.php/post/2009/03/27/Les-etapes-et-notions-dun-projet-BI</link>
    <guid isPermaLink="false">urn:md5:e0574b9e61ae37a4d239c1cbd50b974e</guid>
    <pubDate>Fri, 27 Mar 2009 14:54:00 +0100</pubDate>
    <dc:creator>Alexis Rousset</dc:creator>
        <category>Business Intelligence</category>
        <category>BI</category><category>Business Intelligence</category><category>cube</category><category>datamarts</category><category>datamining</category><category>datawarehouse</category><category>décisionel</category><category>ETL</category><category>hypercube</category><category>MDX</category><category>olap</category><category>reporting</category>    
    <description>&lt;p&gt;Tout d'abord pour bien commencer le sujet et poser le contexte je vous propose une définition de la Business Intelligence aussi connue sous le nom d'informatique décisionnelle&amp;nbsp;:&lt;/p&gt;


&lt;p&gt;&lt;q&gt;L'informatique décisionnelle désigne les moyens, les outils et les méthodes qui permettent de collecter, consolider, modéliser et restituer les données immatérielles d'une entreprise en vue d'offrir une aide à la décision et de permettre aux responsables de la stratégie d'entreprise d'avoir une vue d'ensemble de l'activité traitée.&lt;/q&gt; &lt;em&gt;Source Wikipédia&lt;/em&gt;&lt;/p&gt;    &lt;p&gt;Dans ce post je vais présenter les différentes étapes qu'il est nécessaire de mettre en place dans une chaine décisionnelle afin de profiter pleinement et efficacement d'une plateforme de business intelligence. Le but étant de comprendre le rôle et l'intérêt de chacune des étapes afin de saisir l'importance de celles-ci.&lt;br /&gt;&lt;/p&gt;


&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;h3&gt;Les étapes&lt;/h3&gt;


&lt;p&gt;La chaîne décisionnelle comprend différentes phases&amp;nbsp;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;La &lt;strong&gt;phase d'alimentation&lt;/strong&gt;&amp;nbsp;: Cette phase va faire intervenir des processus ETL qui se chargeront de récupérer toutes les données nécessaires depuis les différentes sources de stockage.&lt;/li&gt;
&lt;li&gt;La &lt;strong&gt;phase de modélisation&lt;/strong&gt;&amp;nbsp;: Cette phase est le moment où les données sont stockées sous une forme adaptée pour les analyses que nous souhaitons effectuer. Elle contient notamment le datawarehouse chargé de centraliser les données. Elle fait aussi intervenir les notions de cubes et de datamarts nécéssaire pour coller au plus près des attentes métiers.&lt;/li&gt;
&lt;li&gt;La &lt;strong&gt;phase de restitution&lt;/strong&gt;&amp;nbsp;: C'est dans cette phase que les différents outils de restitution vont intervenir. Nous trouverons des outils de reporting, des portails d'accès à des tableaux de bord, des outils de navigation dans des cubes, ou des outils de statistiques.&lt;/li&gt;
&lt;li&gt;La &lt;strong&gt;phase d'analyse&lt;/strong&gt;&amp;nbsp;: C'est dans cette phase que les utilisateurs finaux interviennent et analysent les informations qui leurs sont fournies. Elle peut aussi faire intervenir des spécialistes en analyse pour utiliser des outils de statistique et ressortir des prévisions ou des estimations futures (datamining).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;br /&gt;
&lt;a href=&quot;http://blog.netapsys.fr/public/images/BI/chaineBI.jpg&quot;&gt;&lt;img src=&quot;http://blog.netapsys.fr/public/images/BI/.chaineBI_m.jpg&quot; alt=&quot;chaine BI&quot; style=&quot;display:block; margin:0 auto;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;h3&gt;Les processus ETL&lt;/h3&gt;


&lt;p&gt;Les processus ETL (Extraction, Transformation et Chargement) sont en charge de récupérer les données depuis l'ensemble des sources opérationnelles existantes et de les charger vers le système décisionnel&amp;nbsp;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Extraction de données des bases de données opérationnelles (ERP, SGBDR, fichiers en dur, etc.)&lt;/li&gt;
&lt;li&gt;Transformation de ces données pour nettoyer, conformer, standardiser, documenter, corriger et dé dupliquer.&lt;/li&gt;
&lt;li&gt;Chargement des données dans le système décisionnelles&amp;nbsp;: Datawarehouse, Datamarts, ou Cube.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Pourquoi est-il intéressant d'utiliser un outil ETL&amp;nbsp;?&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Les données à traiter pour les systèmes décisionnelles sont généralement très volumineuses, les ETL sont adaptés à cette volumétrie en croissance exponentielle.&lt;/li&gt;
&lt;li&gt;D'autres part, les ETL proposent un grand nombre de composant permettant de se connecter facilement à tout type de source. Ils implémentent aussi des outils qui offrent des services annexes comme par exemple un envoi d'alertes pour prévenir les administrateurs en cas de problèmes.&lt;/li&gt;
&lt;li&gt;La représentation graphique des scripts offre une prise en main facile et rapide. Ces outils permettent de clarifier et standardiser les processus ce qui est un gain en matière d’évolution et de maintenance du système.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;h3&gt;Le Datawarehouse&lt;/h3&gt;


&lt;p&gt;Le Datawarehouse est le point de stockage de toutes les données utilisées par le système pour analyser les informations. Il assure dans un premier temps une étanchéité entre le système opérationnel et le système décisionnel. Il n’y a donc pas de risque que les outils décisionnels affectent les performances du système déjà en place.&lt;/p&gt;


&lt;p&gt;Il suit 4 grands principes&amp;nbsp;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Orienté métiers&lt;/strong&gt;&amp;nbsp;: C'est à dire que sa structure est conçus en fonction des besoins utilisateurs. Il se base généralement sur une topologie en étoile et va privilégier les performances de réponse au détriment de la normalisation.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Non volatile&lt;/strong&gt;&amp;nbsp;: Un datawarehouse est dans son utilisation une base en lecture seule.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Intègre&lt;/strong&gt;&amp;nbsp;: Nécessaire pour obtenir des résultats fiables et cohérents.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Historisé&lt;/strong&gt;&amp;nbsp;: Toutes les informations sont datés et aucune n'est supprimés.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
Son unicité permet une centralisation et une uniformisation de l’information au sein de l’entreprise. Tous les services pourront se baser sur une information commune et sûre.&lt;/p&gt;


&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;h3&gt;Les Datamarts&lt;/h3&gt;


&lt;p&gt;Les datamarts peuvent être considérer comme un sous ensemble du datawarehouse. De ce fait il suivent les mêmes principes que celui-ci, leur différence se situe sur le fait qu'un datamart va répondre à un besoin métier plus spécifique que le datawarehouse.&lt;/p&gt;


&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;h3&gt;Les Cubes&lt;/h3&gt;


&lt;p&gt;Les Cubes OLAP (ou hypercubes) permettent une représentation multidimensionnelle de l'information et le calcul de mesures aggrégées.&lt;/p&gt;


&lt;p&gt;Chaque dimension a la possibilité d'être hiérarchisée en fonction des besoins de l'utilisateur. Une dimension temps pourra par exemple utiliser la hiérarchie&amp;nbsp;: Année, Trimestre, Mois, Semaine.&lt;/p&gt;


&lt;p&gt;Il est ainsi possible d’accéder facilement et rapidement à l'information souhaiter en fonction de plusieurs dimensions.
La navigation au sein d'un cube peut être faite soit en utilisant le langage MDX (Multidimensional Expressions), soit à travers des outils proposant des interfaces intuitives ne nécessitant pas de connaissance spécifique en informatique.&lt;/p&gt;


&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;h3&gt;Le Reporting&lt;/h3&gt;


&lt;p&gt;Les outils de reporting permettent de restituer les données sous forme de rapport. Il existe deux grand domaines dans le reporting&amp;nbsp;: le reporting ad hoc et le reporting de masse.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Le &lt;strong&gt;reporting ad hoc&lt;/strong&gt; offre la possibilité à l’utilisateur de créer lui-même le rapport qui l’intéresse avec les données qu’il souhaite. L’utilisateur aura accès à des vues métiers spécialement conçu en fonction de ses besoins qui lui permettront de choisir facilement l’information qu’il souhaite. Aucune connaissance en base de donnée n'est nécessaire, les vues font la passerelle entre les données stockés et les besoins de l’utilisateur.&lt;/li&gt;
&lt;li&gt;Le &lt;strong&gt;reporting de masse&lt;/strong&gt; quant à lui va permettre de créer à l’avance des modèles de rapport qui seront susceptible d’être souvent demandé par les utilisateurs. Le reporting de masse permet de répondre rapidement à un besoin régulier de beaucoup d’utilisateurs.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;h3&gt;Le Datamining&lt;/h3&gt;


&lt;p&gt;Les outils de datamining ouvrent de nouvelles perspectives sur l’utilisation de la masse d’information disponible dans le système opérationnel.
Le datamining est l'utilisation d'outils statistiques ou d'algorythmes mathématiques sur les données afin de prédire, expliquer, ou de classer des informations. Les outils sont variés, on peut citer&amp;nbsp;: la régression linéaire multiple, les arbres de décisions, les réseaux de neurones...&lt;/p&gt;</description>
    
    
    
          <comments>http://blog.netapsys.fr/index.php/post/2009/03/27/Les-etapes-et-notions-dun-projet-BI#comment-form</comments>
      <wfw:comment>http://blog.netapsys.fr/index.php/post/2009/03/27/Les-etapes-et-notions-dun-projet-BI#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.netapsys.fr/index.php/feed/rss2/comments/82</wfw:commentRss>
      </item>
    
</channel>
</rss>