L Open Source au service du géospatial et de l intelligence d affaires Dr. Thierry Badard Conférence Midi-Innovation TI Organisée par l'itis et la Chambre de commerce et d industrie de Québec Université Laval, 29 avril 2011
CONFÉRENCES Une réalisation de l Institut Technologies de l information et Sociétés en partenariat avec la Chambre de commerce et d industrie de Québec Partenaire majeur : En collaboration avec :
Contenu de la présentation Qui suis-je? Open source Très bref aperçu de l'offre OS en géomatique Open source et le monde académique Open data et le déluge de données BI & Geospatial BI (GeoBI) Pile GeoBI développée Conclusion
Qui suis-je? [ 1997 - [ [ 1996-2004 ] [ 2005 [ [ 2001 [ [ 2006 [ [ 2005 [ [ 2009 [
Différentes catégories de logiciels (1/2). Chaque type de licence apporte un certain nombre d avantages et d inconvénients à l éditeur et à l utilisateur. Les contrats couvrent généralement quatre aspects : Le droit d utilisation ; Le droit de redistribution ; Le droit de modification ; La contrepartie financière. Il est possible de classer les logiciels en fonction du degré de liberté que les licences laissent aux utilisateurs, en ce qui concerne les trois premiers points. Le prix de vente n est pas un élément décisif, contrairement à ce que croient la plupart des gens. L amalgame entre logiciel libre et logiciel gratuit se fait souvent, tout particulièrement dans le monde anglophone, où les deux mots ne sont pas distincts (free software)!
Différentes catégories de logiciels (2/2). source : http://www.gnu.org/philosophy/categories.fr.html
Fondateurs du libre - Le projet GNU.
Fondateurs du libre - Free Software Foundation
Fondateurs du libre - Free Software Foundation
Fondateurs du libre - Free Software Foundation
Fondateurs du libre - Free Software Foundation
Fondateurs du libre - Free Software Foundation
Logiciel libre (1/3). Un logiciel libre est un logiciel qui est fourni avec l'autorisation pour quiconque de l'utiliser, de le copier, et de le distribuer, soit sous une forme conforme à l'original, soit avec des modifications, ou encore gratuitement ou contre un certain montant. Ceci signifie en particulier que son code source doit être disponible! Il existe de nombreuses façons de rendre un logiciel libre beaucoup de détails peuvent être définis de différentes façons, tout en gardant au logiciel son caractère libre. Mais les sociétés éditrices de logiciels propriétaires utilisent parfois le terme «logiciel libre» pour parler de logiciels gratuits. Ce qui veut parfois dire que vous pouvez en obtenir une copie binaire gratuitement, ou qu'une copie de ce logiciel est comprise dans le prix d'achat de votre ordinateur.
Logiciel libre (2/3). Ceci n'a rien à voir avec le terme de logiciel libre, tel qu il est défini ici (conformément à la définition qu en font la Free Software Foundation, http://www.fsf.org et le projet GNU, http://www.gnu.org). À cause de cette confusion potentielle il serait souhaitable, chaque fois qu'une société informatique annonce que son produit est un logiciel libre, de vérifier les conditions de distribution, afin de s'assurer que les usagers disposent de toutes les libertés associées au logiciel libre. Parfois il s'agit, effectivement, d'un logiciel libre, parfois non. En langue anglaise, le même mot «free» désigne soit «libre», soit «gratuit». C'est pourquoi il y a souvent confusion sur la nature des termes «free software». Dans le contexte du logiciel libre, il ne s'agit pas du prix mais de la liberté d'utilisation!
Logiciel libre (3/3). Plus précisément, cela fait référence à quatre types de liberté (dites libertés fondamentales) pour l'utilisateur du logiciel : La liberté d'exécuter le programme, pour tous les usages (liberté 0). La liberté d'étudier le fonctionnement du programme, et de l'adapter à vos besoins (liberté 1). Pour ceci l'accès au code source est une condition requise. La liberté de redistribuer des copies, donc d'aider votre voisin, (liberté 2). La liberté d'améliorer le programme et de publier vos améliorations, pour en faire profiter toute la communauté (liberté 3). Pour ceci l'accès au code source est une condition requise.
Logiciel propriétaire. Le logiciel propriétaire est un logiciel qui n'est ni libre, ni semilibre. Son utilisation, sa redistribution ou sa modification sont interdites ou exigent une autorisation spécifique, ou sont tellement restreintes qu il est en fait pas possible de le faire librement.
Quelques fausses idées... Un gratuiciel (freeware) n est pas un logiciel libre! Un partagiciel (shareware) n est pas un logiciel libre! Ce sont tous les deux des cas particuliers de logiciels propriétaires! Le terme logiciel commercial n est pas à opposer à celui de logiciel libre Un logiciel libre peut être commercial $$$ Le modèle économique sous-jacent est basé sur la notion de service La notion à opposer à logiciel libre est bien celle de logiciel propriétaire Logiciel libre et «domaine public» n ont rien à voir!
Logiciel du domaine public (1/3). Logiciel du domaine public veut dire logiciel non soumis aux droits d'auteurs. Si le code source est dans le domaine public, c'est un cas particulier de logiciel libre «non-copylefté», ce qui veut dire que certaines copies, ou certaines versions modifiées, peuvent ne pas être du tout libres. Dans certains cas, un programme exécutable peut être dans le domaine public sans que le code source soit disponible. Il ne s'agit pas de logiciel libre, puisque le logiciel libre nécessite l'accès au code source. Parfois, on utilise le terme «domaine public» d'une façon peu précise pour dire «libre» ou «disponible gratuitement». Toutefois, «domaine public» est un terme légal qui signifie précisément que le logiciel n'est pas «soumis au copyright».
Logiciel du domaine public (2/3). Afin d'être plus précis, il est conseillé d'utiliser le terme «domaine public» dans ce cas uniquement, et d'utiliser d'autres termes dans les autres cas. Selon la convention internationale de Berne, que la plupart des pays ont signée, tout ce qui est écrit est automatiquement sous copyright. Cela comprend les programmes. Par conséquent, si quelqu un veut que le programme qu il a écrit soit dans le domaine public, il doit faire des démarches juridiques pour enlever son copyright (i.e. renoncer à ses droits d exploitation); sinon le programme demeure sous copyright. La convention internationale de Berne a fixé également la durée de vie des droits d exploitation à 70 ans après la mort de l auteur, ou de 70 ans à dater de la première diffusion (si la diffusion est posthume, ou si l œuvre est créée par plusieurs auteurs).
Logiciel du domaine public (3/3). Dans le cas des logiciels, il y a fort peu de cas de logiciels réellement tombés dans le domaine public. De tels logiciels présentent plusieurs caractéristiques : - Leur redistribution et leur utilisation est autorisée sans limitation, puisque les droits d exploitation n appartiennent plus à personne, - Leur modification est généralement impossible, car le code source est indisponible. Il est donc impossible de faire évoluer un logiciel tombé dans le domaine public. Du fait de l évolution rapide des technologies informatiques, on comprend aisément qu un logiciel propriétaire tombé dans le domaine public est un logiciel mort. En pratique, le cas ne se présente pas souvent.
Logiciel open source (1/5). Le terme logiciel «open source» (littéralement à source ouvert) est utilisé par certaines personnes pour signifier plus ou moins la même chose que logiciel libre. Néanmoins, les critères définissant ce qu est un logiciel open source, édictés par l Open Source Initiative (OSI, http://www.opensource.org) sont jugées un peu «laxistes» par le projet GNU : l OSI accepte certaines restrictions de licence que le projet GNU juge trop restrictives. Ce dernier préfère le terme «logiciel libre», car il se réfère à la liberté ce que ne fait pas le terme «open source». Au-delà de la différence sémantique des deux termes «open source» et «logiciel libre», qui engendre quelques débats, il faut savoir que ces deux mouvements sont en accord sur la plupart des recommandations pratiques et qu'ils travaillent ensemble sur de nombreux projets spécifiques.
Logiciel open source (2/5). Pour simplifier : La volonté de l'open Source Initiative est de fournir un programme de marketing pour le logiciel libre, notamment en établissant un label de certification reconnu et estimé. La position de la Free Software Foundation (et donc du projet GNU) est plus «idéologique» en mettant l'accent sur la signification et la précision du mot «libre». Les positions respectives peuvent être retrouvées à: http://www.gnu.org/philosophy/free-software-for-freedom.fr.html et http://www.opensource.org/advocacy/faq.html.
Logiciel open source (3/5). L'Open Source Definition implique plus que la simple diffusion du code source. La licence d'un programme en open source doit correspondre aux critères suivants : 1. Libre redistribution. La licence ne devra pas limiter le droit de vendre ou de donner le logiciel en tant que composant d'un ensemble de programmes. Elle ne doit pas exiger que cette vente soit soumise à l'acquittement de droits d'auteur ou d'une redevance. 2. Code source. Le programme doit inclure le code source, et la distribution sous forme de code source comme sous forme compilée doit être autorisée. Si un mode de distribution n'inclut pas le code source, il doit exister un moyen clairement indiqué de se procurer ce dernier pour un coût raisonnable destiné à compenser les frais de reproduction, ou, de préférence, de le télécharger sans frais supplémentaire depuis l'internet. Par «code source» nous désignons ici la forme la plus adéquate pour un programmeur qui souhaiterait modifier le programme. Il n'est pas autorisé à proposer un code source rendu volontairement difficile à comprendre. Il n'est pas autorisé à proposer des formes intermédiaires, comme ce qu'engendre un préprocesseur ou un convertisseur.
Logiciel open source (4/5). 3. Travaux dérivés. La licence doit autoriser les modifications et travaux dérivés ainsi que leur distribution sous les mêmes conditions que celles qui protègent le programme originel. 4. Intégrité du code source de l'auteur. Toute licence restreignant le droit de redistribution du code source modifié doit autoriser la distribution de la version originelle accompagnée de fichiers de modification (patches). La licence doit explicitement permettre la distribution de logiciels construits à partir du code source modifié. La licence peut exiger que les travaux dérivés portent un nom différent ou un numéro de version distinct de ceux du logiciel originel. 5. Pas de discrimination entre les personnes ou les groupes. La licence ne doit pas établir de discrimination à l'encontre de personnes ou de groupes de personnes. 6. Pas de discrimination entre les domaines d'application. La licence ne doit pas limiter le champ d'application du programme. Par exemple, elle ne doit pas interdire l'utilisation du programme à des fins commerciales ou dans le cadre de la recherche génétique.
Logiciel open source (5/5). 7. Distribution de la licence. Les droits attachés au programme doivent s'appliquer à tous ceux qui l'obtiennent, et ne doivent pas être soumis à une licence complémentaire. 8. La licence ne doit pas être spécifique à un produit. Les droits accordés à l'utilisateur du programme ne doivent pas dépendre du fait que le programme appartient à un ensemble donné. Si le programme est extrait d'une distribution et utilisé ou distribué selon les conditions de sa licence, toutes les parties auxquelles il est ainsi redistribué doivent bénéficier des droits accordés lorsque que le programme se trouve au sein d'un ensemble. 9. La licence ne doit pas contaminer d'autres logiciels. La licence ne doit pas imposer de restrictions à d'autres logiciels distribués avec le programme. Par exemple, la licence ne doit pas exiger que tous les programmes distribués sur le même support soient des logiciels Open Source.
Quelques licences open source. Quelques licences disposant du label de certification OSI (Open Source Initiative) qui assure le respect de l'open Source Definition : Apache Software License Apache License, 2.0 Apple Public Source License Artistic license BSD license Common Public License Eclipse Public License GNU General Public License (GPL) GNU Library or "Lesser" General Public License (LGPL) IBM Public License Intel Open Source License MIT license Mozilla Public License 1.1 (MPL) PHP License Qt Public License (QPL) Sun Public License Les licences GNU (GPL et LGPL), MIT, BSD et Apache sont actuellement les plus répandues. La licence Artistic qui entre autre concerne le langage PERL et ses modules, ainsi que les licences PHP, Qt (QPL), Mozilla (MPL), CPL et EPL sont également jugées comme importantes.
Quelques éléments de comparaison. LICENCE GNU GPL (General Public Licence) GNU LGPL (Lesser General Public Licence) X, Apache, BSD NPL (Netscape Public Licence) MPL (Mozilla Public Licence) Licence CeCILL Domaine Public Le programme peut être mélangé avec du logiciel non libre Les modifications peuvent être rendues secrètes et non communiquées à l'auteur Tout un chacun peut placer le programme sous une nouvelle licence La licence renferme des privilèges particuliers pour le détenteur du copyright, qui peuvent s'appliquer à vos modifications Non Non Non Non Oui Non Non Non Oui Oui Non Non Oui Oui Non Oui Oui Oui Non Non Non Non Non Non Oui Oui Oui Non
QGIS (Quantum GIS).
GvSIG.
udig.
Le projet Jump.
OSSIM.
L OSGeo (http://www.osgeo.org).
Les représentations locales de l OSGeo. http://wiki.osgeo.org/wiki/francophone
Les représentations locales de l OSGeo. http://wiki.osgeo.org/wiki/chapitre_quebecois
Maturité la suite opengeo (www.opengeo.org)
Open source advantages... Cost Open source costs only a fraction of proprietary software. Even with training, TCO is lower than proprietary software Improved quality/innovation Advantages provided by community-enabled development Modern, standards-based architecture - Easier integration and customization Lower risk - Enabling users to try before they buy and with zero upfront licensing fees Reduced vendor lock in Usually based on a simple annual subscription for technical support and enhanced software
Et pour le monde académique? Montée en puissance de l open source et adoption de plus en plus large Besoin de plus en plus pressant de professionnels connaissant ces technologies Pas seulement comme utilisateur mais aussi comme concepteur/développeur Vertus de l open source idéales pour la formation et la recherche dans le milieu académique Outre le coût des licences Extrêmement formateur car : accès au code source, modularité, mise en œuvre des standards, Permet de ne pas réinventer la roue et de se concentrer sur les aspects novateurs (recherche) Pérennise les efforts de développement dans une équipe de recherche, Facilite la collaboration et le réseautage avec différents acteurs (=> nouveaux projets, nouveaux étudiants,...) Rappel : licences ne remettent pas en cause la PI! Permet de diffuser la connaissance au même titre que les articles que nous publions...
Alors l'open innovation, l'avenir de la recherche?
Open data, OSM, réseaux sociaux, mobilité...
Open data, OSM, réseaux sociaux, mobilité...
Open data, OSM, réseaux sociaux, mobilité...
Open data, OSM, réseaux sociaux, mobilité...
Open data, OSM, réseaux sociaux, mobilité...
Open data, OSM, réseaux sociaux, mobilité...
Open data, OSM, réseaux sociaux, mobilité...
Open data, OSM, réseaux sociaux, mobilité...
Are you ready for the data deluge?
Aujourd'hui, les entreprises disposent d'une très grande quantité d'informations, souvent très variées Ventes Inventaires Données socio-économiques Sondages/enquêtes Mesures d'impact de leur campagne de publicité Visites de leur site web Réseaux sociaux
Un monde en mutation rapide Qui impose de prendre des décisions stratégiques souvent et rapidement pour demeurer performantes et concurrentielles Besoin de pouvoir analyser ses importantes masses de données, le plus simplement possible et rapidement Pour ce faire, elles utilisent de plus en plus des outils de BI (Business Intelligence) Permettent de produire : Des rapports de synthèse (PDF, Excel,...) Tableaux de bord analytiques interactifs
Rapports et tableaux de bord
Rapports et tableaux de bord
Rapports et tableaux de bord
Rapports et tableaux de bord
Rapports et tableaux de bord
Rapports et tableaux de bord
La localisation est partout! ;-) 80% des données dans les entrepôts de données des entreprises peut se voir rattacher une localisation [Franklin, 1992] Adresse Code postal Coordonnées IP, numéro de téléphone, De la même façon que le temps, l'espace (la localisation) est une dimension à prendre en compte dans l'analyse des données d'entreprise!
Prise en compte la localisation Nécessite de disposer des bons outils pour appréhender, manipuler et explorer cette information dans les outils BI... Imaginons que vous soyez Desjardins ou le MSP ou l'état Haïtien... Est-ce que un tableau croisé ou un diagramme est le meilleur outil pour répondre à ces questions?
Le bon médium, c'est bien la carte entendu! la carte!
Et bien, le GéoBI (Geospatial BI)... Apporte : La carte... Et l'ensemble des outils de représentation, navigation et analyse cartographique Au cœur même des outils BI du marché Pour permettre de prendre en compte pleinement la dimension spatiale dans les processus d'analyse et de décision des entreprises!
Acteurs Taille Industries Industrie du BI et du géospatial Géospatial Web 2.0 GéoBI 3 milliards en logiciels (total de 15 milliards en IT) Informatique décisionnelle (BI) 8,8 milliards en logiciels (croissance de 22% en 2008)
Retour en 2005... Équipe GeoSOA : recherches en BI, geospatial et mobilité Buts : permettre à des usagers mobiles d'accéder en tout temps et tout lieu à des outils d'aide à la décision, incluant la composante spatiale, depuis leurs dispositifs mobiles (smartphones), et pousser une information adaptée à leur contexte d'utilisation (localisation, environnement, situation,...) Constat : Pas d'outils GéoBI sur le marché permettant : de traiter de gros volumes d'information provenant de sources multiples et très hétérogènes de le servir rapidement à de très nombreux utilisateurs simultanés et possiblement en mode déconnectés (architecture de services web) Supportant les standards et des technologies pouvant adresser la mobilité disposant de capacités GéoBI suffisantes et d'une API riche, accessible, extensible et dont le coût ($$$) ne soit pas prohibitif S'appuyant sur une architecture BI robuste et complète pour adresser tous les types de besoin
Classical architecture of a BI infrastructure Transactional databases Web ressources XML, flat files, proprietary file formats (Excel spreadsheets, ) LDAP
The Data Warehouse: the crucial/central part! Repository of an organization s historical data, for analysis purposes. Primarily destined to analysts and decision makers. Separate from operational (OLTP) systems (source data) But often stored in relational DBMS: Oracle, MSSQL, PostgreSQL, MySQL, Ingres, Contents are often presented in a summarized form (e.g. key performance indicators, dashboards, OLAP client applications, reports). Need to define some metrics/measures
The Data Warehouse: the crucial/central part! Optimized for: Large volumes of data (up to terabytes); Fast response (<10 s) to analytical queries (vs. update speed for transactional DB): de-normalized data schemas (e.g. star or snowflake schemas), all data are stored in the DW across time (no corrections), summary (aggregate) data at different levels of details and/or time scales, (multi)dimensional modeling (a dimension per analysis axis). Introduces some redundancy to avoid time consuming JOIN queries All data are interrelated according to the analysis axes (OLAP datacube paradigm) Focus is thus more on the analysis / correlation of large amount of data than on retrieving/updating a precise set of data! Specific methods to propagate updates into the DW needed!
MDX query language MDX stands for MultiDimensional expressions Multidimensional query language De facto standard from Microsoft for SQL Server OLAP Services (now Analysis Services) Also implemented by other OLAP servers (Essbase, Mondrian) and clients (Proclarity, Excel PivotTables, Cognos, JPivot, ) MDX is for OLAP data cubes what SQL is for relational databases Looks like a SQL query but relies on a different model (close to the one used in spreasheets) SELECT { [Measures].[Store Sales] } ON COLUMNS, { [Date].[2002], [Date].[2003] } ON ROWS FROM Sales WHERE ( [Store].[USA].[CA] )
Results representation SELECT { [Product].[All Products].[Drink], [Product].[All Products].[Food] } ON COLUMNS, { [Store].[All Stores].[USA].[WA].[Yakima].[Store 23], [Store].[All Stores].[USA].[CA].[Beverly Hills].[Store 6], [Store].[All Stores].[USA].[OR].[Portland].[Store 11] } ON ROWS FROM Warehouse WHERE ([Time].[1997], [Measures].[Units Shipped]) OLAP client software propose: Alternate representation modes (pie charts, diagrams, etc.) Different tools to refine queries/explore data Drill down, roll up, pivot, Based on operators provided by MDX
Geospatial BI adds maps and spatial analysis! Require to consistently integrate the geospatial component in all parts of the architecture!
Pentaho open source BI software stack http://www.pentaho.org
Pentaho open source BI software stack Pentaho (http://www.pentaho.org) Pentaho Reporting Kettle Mondrian Weka + CDF: Community Dashboard Framework + Other projects: olap4j, JPivot, Halogen,
Towards an open source geospatial BI stack & integration in various dashboard and reporting tools Spatial S PostGIS Oracle Spatial GeoKNIME Spatial
An ETL tool is A type of software used to populate databases or data warehouses from heterogeneous data sources. ETL stands for: Extract Extract data from data sources Transform Transformation of data in order to correct errors, make some data cleansing, change the data structure, make them compliant to defined standards, etc. Load Load transformed data into the target DBMS An ETL tool should manage the insertion of new data and the updating of existing data. Should be able to perform transformations from : An OLTP system to another OLTP system An OLTP system to an analytical data warehouse
Why use an ETL tool? Automation of complex and repetitive data processing without producing any specific code Conversion between various data formats Migration of data from a DBMS to another Data feeding into various DBMS Population of analytical data warehouses for decision support purposes etc.
GeoKettle GeoKettle is a "spatially-enabled" version of Pentaho Data Integration (Kettle) Kettle is a metadata-driven ETL with direct execution of transformations No intermediate code generation! Support of several DBMS and file formats DBMS support: MySQL, PostgreSQL, Oracle, DB2, MS SQL Server,... (total of 37) Read/write support of various data file formats: text, Excel, Access, DBF, XML,... Numerous transformation steps Support of methods for the updating of DW
GeoKettle GeoKettle provides a true and consistent integration of the spatial component All steps provided by Kettle are able to deal with geospatial data types Some geospatial dedicated steps have been added First release in May 2008: 2.5.2-20080531 Current stable version: 3.2.0-r188-20090706 To be released shortly: GeoKettle 2.0 with many new features! Released under LGPL at http://www.geokettle.org Used in different organizations and countries: Some ministries, bank, insurance, integrators, E.g. GeoETL from Inova is in fact GeoKettle! :-) A growing community of users and developers
GeoKettle Transformations vs. Jobs: All can be stored in a central repository (database) Running in parallel vs. running sequentially But each transformation or job could also be saved in a simple XML file! Offers different interfaces: Spoon: GUI for the edition of transformations and jobs Pan: command line interface for running transformations Kitchen: command line interface for running jobs Carte: Web service for the remote execution of transformations and jobs
GeoKettle Spoon
GeoKettle Version 2.0 provides support for: Handling geometry data types (based on JTS) Accessing Geometry objects in JavaScript It allows the definition of custom transformation steps by the user ( Modified JavaScript Value step) Topological predicates (Intersects, crosses, etc.) and aggregation operators (envelope, union, geometry collection,...) SRS definition and transformations Input / Output with some spatial DBMS - Native support for Oracle, PostGIS and MySQL - MS SQL Server 2008 and SQLite/Spatialite - Ingres and IBM DB2 can be used but it requires some tricks GIS file Input / Output: Shapefile, GML 3, KML 2.2 and OGR support (~33 vector data formats and DBMS) Sensor Web (SOS) Cartographic preview Spatial analysis and advanced geo-processing
GeoKettle GeoKettle releases are aligned with the ones of Pentaho Data Integration (Kettle), GeoKettle then benefits all new features provided by PDI (Kettle). Kettle is natively designed to be deployed in cluster and web service environments. It makes GeoKettle a perfect software component to be deployed as a service (SaaS) in cloud computing environments as those provided by Amazon EC2. It enables then the scalable, distributed and on demand processing of large and complex volumes of geospatial data in minutes for critical applications and without requiring a company to invest in an expensive IT infrastructure of servers, networks and software.
GeoKettle Requirements and install Very simple installation procedure All you need is a Java Runtime Environment Version 5 or higher Just unzip the binary archive of GeoKettle... And let s go! Run spoon.sh (UNIX/Linux/Mac) or spoon.bat (Windows) Need help, please visit our wiki: http://wiki.spatialytics.org
GeoKettle - Demo -
GeoKettle Upcoming features: Implementation of data matching and conflation steps/jobs in order to allow geometric data cleansing and comparison of geospatial datasets Read/write support for other DBMS, GIS file formats and services LAS (LiDAR),... WFS-T, Sensor Web (TML, SensorML, SOS-T,...),... GIS metadata and CSW Dedicated steps for social media (Twitter,...), OSM, generalization,... Support of the third dimension Raster support: development in progress of a plugin to integrate all capabilities provided by the Sextante library (BeETLe)
GeoMondrian GeoMondrian is a "spatially-enabled" version of Pentaho Analysis Services (Mondrian) GeoMondrian brings to the Mondrian OLAP server what PostGIS brings to the PostgreSQL DBMS i.e. a consistent and powerful support for geospatial data. Licensed under the EPL http://www.geo-mondrian.org
GeoMondrian As far as we know, it is the first implementation of a true Spatial OLAP (SOLAP) Server And it is an open source project! ;-) Provides a consistent integration of spatial objects into the OLAP data cube structure Instead of fetching them from an external spatial DBMS, web service or a GIS file Implements a native Geometry data type Provides first spatial extensions to the MDX language Add spatial analysis capabilities to the analytical queries At present, it only supports PostGIS datawarehouses But other DBMS will be supported in the next version!
Spatially enabled MDX Goal: bring to Mondrian and MDX what SQL spatial extensions do for relational DBMS (i.e. Simple Features for SQL and implementations such as PostGIS). Example query: filter spatial dimension members based on distance from a feature SELECT {[Measures].[Population]} on columns, Filter( {[Unite geographique].[region economique].members}, ST_Distance([Unitegeographique].CurrentMember.Properties("geom"), [Unite geographique].[province].[ontario].properties("geom")) < 2.0 ) on rows FROM [Recensements] WHERE [Temps].[Rencensement 2001 (2001-2003)].[2001]
Spatially enabled MDX Many more possibilities: in-line geometry constructors (from WKT) member filters based on topological predicates (intersects, contains, within, ) spatial calculated members and measures (e.g. aggregates of spatial features, buffers) calculations based on scalar attributes derived from spatial features (area, length, distance, )
GeoMondrian - Demo -
SOLAPLayers SOLAPLayers is a lightweight cartographic component (framework) which enables navigation in geospatial (Spatial OLAP or SOLAP) data cubes, such as those handled by GeoMondrian. It aims to be integrated into existing dashboard frameworks in order to produce interactive geo-analytical dashboards. Such dashboards help in supporting the decision making process by including the geospatial dimension in the analysis of enterprise data. First version stems from a GSoC 2008 project performed under the umbrella of OSGeo. Licensed under BSD (client part) and EPL (server part). http://www.solaplayers.org
SOLAPLayers v1 Version 1 was based on OpenLayers and Dojo It allows: the connection with a Spatial OLAP server such as GeoMondrian, some basic navigation capabilities in the geospatial data cubes, and the cartographic representation of some measures as static or dynamic choropleth maps, maps with proportional symbols.
SOLAPLayers v1
SOLAPLayers v1
SOLAPLayers v1 Version 1 was a mostly proof of concept! It presents important limitations: Allows only the cartographic representation (no crosstabs or charts) Works only for one measure and the spatial dimension! Offers limited navigation capabilities in the geospatial data cubes Is able to connect to GeoMondrian only Extending the framework is difficult due to the lack of flexibility and the poor documentation of Dojo, Integration with other currently used geo-web and dashboard frameworks was difficult...
SOLAPLayers 2.0 So, SOLAPLayers has undergone (and is still undergoing ;-) ) a deep re-engineering! Version 2 is fully based on ExtJS/GeoExt (and hence OpenLayers) It will make its integration with other geo/web and BI/dashboard frameworks easier It provides some new ExtJS components dedicated to GeoBI! Based on the philosophy for the development of applications adopted by these geo-web frameworks, it allows an easier creation/maintenance of the produced geo-analytical dashboards! Like ExtJS, it supports internationalization!
SOLAPLayers 2.0 Architecture Built-in or LDAP Server Authentication 1 SOLAP Server Native or XML/A OLAP4J MDX Client Server SOLAPJSON
SOLAPLayers 2.0 Architecture Built-in or LDAP Server Authentication 1 SOLAP Server Native or XML/A OLAP4J OLAP Server MDX Client Native or XML/A 2 Geospatial data source (WFS, DBMS,...) Server SOLAPJSON
SOLAPLayers 2.0 Architecture Built-in or LDAP Server Authentication 1 SOLAP Server Native or XML/A OLAP4J OLAP Server MDX Client Server Native or XML/A SOLAPJSON 2 Bridge architecture Geospatial data source (WFS, DBMS,...) Maximize what is in place in organisations But, no Geo-MDX capabilities available!
SOLAPLayers 2.0 Architecture Built-in or LDAP Server Authentication 1 SOLAP Server Native or XML/A OLAP4J OLAP Server MDX Client Native or XML/A Server SOLAPJSON 2 Geospatial data source (WFS, DBMS,...) 3 Geospatial data source (WFS, DBMS,...)
SOLAPLayers 2.0 Architecture Built-in or LDAP Server Authentication 1 SOLAP Server Native or XML/A OLAP4J OLAP Server MDX Client Native or XML/A Server SOLAPJSON 2 For simple geo-dashboards Based on transactional data Thematic mapping No Geo-MDX and drill-down or roll-up capabilities! Geospatial data source (WFS, DBMS,...) 3 Geospatial data source (WFS, DBMS,...)
SOLAPLayers 2.0 Geo-dashboard made easy! 1 Define the template of the dashboard in a HTML file
SOLAPLayers 2.0 Geo-dashboard made easy! 1 Define the template of the dashboard in a HTML file Define your dashboard components in a JS file 2 and map it to the div in the HTML file
SOLAPLayers 2.0 Geo-dashboard made easy! 3 Enjoy! ;-)
SOLAPLayers 2.0
SOLAPLayers 2.0
SOLAPLayers 2.0
SOLAPLayers 2.0
SOLAPLayers 2.0
SOLAPLayers 2.0 - Demo -
GeoKNIME Constats Quartiers pauvres Quartiers riches Tenderloin Bayview Mission Central Southern Northern Sud-Est de San Francisco Criminalité élevée
GeoKNIME
éo 112
Drogue/Narcotique Violence armée Prostitution 113
Cluster#1 Cluster#2 Cluster#3
Prédiction Nœud de configuration KNN Valeurs réelles