jeudi, août 10, 2006

Grid computing vidéo : The Future of Software

Voici une seconde vidéo (toujours en anglais), beaucoup plus longue qui présente ce qu'est le grid computing et les futures tendances informatiques.

This is a vision for how software will be deployed and run in the near and distant future. It begins with a history of computing, from mainframes to the PC, with Apple, Steve Jobs and Bill Gates influence. It then shows how application virtualization - the elimination of software installation - is a key technical addition that frees software to travel the network and be wherever it has to be on-demand.

THE ORACLE GRID

Voici une vidéo éditée par oracle (oracle.com) sur sa vision et sa solution en grid computing.

Oracle présente le grid.

Grid computing lets our customers run applications faster than the fastest mainframe while saving money and increasing reliability. Oracle's new Grid campaign includes a Oracle Grid TV ad (15 sec.) that debuted during the 2005 NBA finals on ABC, and is currently running on cable news. See how Oracle Grid runs faster, cost less, and never breaks.

jeudi, juillet 13, 2006

Le grid progresse en france !

Une étude menée pour Oracle montre un certaine progression du grid computing en Europe.

D'après étude publiée il y a peu sur le grid computing et les architectures orientées services, la France rattrape aujourdhui son retard, se situant en bonne place vis-à-vis d'autres pays européens comme le Royaume-Uni.

Basé sur une échelle de 0 a 10, le Grid Index est passé de 5,2 en 2005 à 5,4 en 2006. Les auteurs notent que le grid commence "à basculer d'une utilisation limitée à des précurseurs à une utilisation généralisée". Ils ajoutent que 70% des entreprises déploient désormais la technologie de grille "dans certains domaines" - contre 19,5% pour la précédente cuvée du Grid Index. 10 a 40% des entreprises déclarent faire une "utilisation modeste" de cette technologie dans certains secteurs, laissant espérer une conversion prochaine de ces projets pilotes en "migrations majeures", d'après Oracle - qui s'investit très fortement dans les architectures SOA (voir édition du 22 septembre 2005).

Plus d'infos sur : VNUnet.fr

mercredi, juin 07, 2006

Installer Apache et PHP sous Windows

Pour savoir comment installer Apache, PHP 4 et MySQL sous Windows, je vous recommande l'adresse suivant : Installer Apache PHP 4 MySQL sous Windows

C'est décrit simplement et clairement.

Si vous installez la version 5 de PHP : Installer php 5 et apache


mercredi, mai 31, 2006

Commande shell linux pour supprimer vieux dossiers

Exemple typique : dans un script pour nutch, je souhaite supprimer les vieux dossier (supérieur aux paramètres de mise à jour des pages qui est de 30 jours par defaut).
Si je me trouve dans le repertoire courant de nutch/segments (./) alors voici la commande :

find ./ -maxdepth 1 -mtime +30 -exec rm -r {} \;

Sans \; cela ne fonctionne pas (missing arguement) mais j'ai cru comprendre que certains shell le symbole n'est pas necessaire.

mardi, mai 30, 2006

Repos maternité pour prématuré en Belgique

Cet article vise à diffuser une loi méconnue en Belgique concernant les congés de maternité en Belgique lors d'une naissance prématurée.

Prolongation facultative du repos de maternité en cas d'hospitalisation
de l'enfant, supérieure à 7 jours :
Si le nouveau-né doit rester hospitalisé plus de 7 jours après sa naissance, la titulaire salariée peut demander de prolonger son repos de maternité d'une durée égale à la période d'hospitalisation - 7 jours. Toutefois, la prolongation ne peut pas dépasser 24 semaines.

En d'autres mots, si vous bénéficiez de 11 semaines (ou 9, ou 13, peu importe) de repos postnatal:
- lors d'un accouchement non prématuré, bébé reste à l'hopital une semaine et il vous reste 10 semaines de congé lorsqu'il rentre à la maison
- lors d'un accouchement prématuré, bébé reste à l'hopital X semaines et il vous reste 10 semaines de congé lorsqu'il rentre à la maison également ! A condition d'avoir prolongé votre repos maternité bien entendu !




Quelles démarches ?
- A la fin du repos postnatal (initial) : transmettre une attestation d'hospitalisation à votre employeur (fournie par l'hopital)
- Vous devez ensuite régulièrement (tous les mois par exemple) certifier que la durée d'hospitalisation est prolongée si c'est le cas.
- Transmettre un certificat concernant la durée d'hospitalisation (fourni par l'hopital) à votre mutualité.

Un projet de loi, identique mais pour les hommes, a été proposé par plusieurs personnes du PS.

mercredi, mai 10, 2006

Terre sur Ebay

Sélectionnée parmi les dix finalistes du concours « entrepreneur de l'année » organisé par eBay et La Libre Belgique, l'asbl Terre se lance dans l'e-commerce. Le défi : mettre sur pied, en deux mois de temps, un business florissant sur eBay, le célèbre site de ventes aux enchères.

Terre collecte près de 8.200 tonnes de vêtements par an. Une grande partie de ce tonnage est déjà valorisé (il est vendu en boutique, exporté ou recyclé). Mais parmi ces vêtements, des pièces exceptionnelles ne sont pas valorisées à leur juste mesure.

La vente sur eBay vise la valorisation de ces pièces hors du commun. Qu'il s'agisse de vêtements rétro, de pièces de collection des années 20, ou encore de pièces uniques de créateurs, une boutique eBay a toutes les chances de toucher le public visé : les amateurs de pièces rares !

Entre le 1e mai et le 25 juin, visitez régulièrement laboutiqueterre

jeudi, mars 02, 2006

Volunteer Grid : lnternet Computing en anglais

Le Centre De Calcul De l'Information De Grille (GRID Infoware: http://www.gridcomputing.com) vise à favoriser le développement et l'avancement des technologies qui fournissent un accès adpaté aux ressources distribuées.


Pas un mot sur l’internet computing. Par contre, pointant XtremWeb et d’autres systèmes du meme style, je rencontre pour la première fois l’expression « volunteer computing » ce qui en dit long sur la sémantique de ce terme… Je poursuit donc mes recherches avec cette première expression.


Aucune autre expression ne semble désigner ce « volunteer computing », aussi plutot que de continuer à citer tous les auteurs qui emploient l’expression (reportez vous plutot à google : http://www.google.fr/search?hl=fr&q=grid+computing+volunteer+computing&btnG=Rechercher&meta=) je préfère tenter de trouver de nouvelle expression s’il en existe.


Ma lecture vient ensuite sur « Introduction to Grid Computing with Globus » (par IBM : http://www.redbooks.ibm.com/redbooks/pdfs/sg246895.pdf ). Je ne fais que le citer car hormis etre un excellent document, il ne répond aucunement à la question …


A la question « Y a-t-il différents genres de grilles pour différents buts? » dans une page de FCW (http://www.fcw.com/article89311-06-20-05-Print) Tim Hoechst, vice-président senior chez Oracle affirme que différents types de problèmes de calcul se prêtent naturellement à différents types de grilles . Il fait la distinction entre les grilles de processeur et les grilles de données. Une grille de processeur traite un problème qui peut être cassé en morceaux et être traité sur les ordinateurs multiples. Une grille de données traite les problèmes qui ne peuvent pas être subdivisés et doivent à la place courir sans interruption sur les ordinateurs multiples. Il dit qu’Oracle se concentre sur le second point.

A titre d’exemple d'une grille de processeur, Hoechst cite le projet de recherche extraterrestre. Un exemple d'une grille de données est une base de données fonctionnant à travers un groupe d’ordinateur.

Une vision finalement très « Base de données » comme l’on pouvait s’y attendre. Rien donc de très intéressant…

Enfin, je retombe sur une source de documentation vraiment parfois très surprenante (wikipedia). Et là je retrouve une expression très fréquemment lue dans la lecture anglaise : internal et external grid. Ces termes semblent défintivement être les deux types disctincts dans la littérature anglosaxonne (http://en.wikipedia.org/wiki/Grid_computing)

Les grilles externes touchent les efforts de collaboration de recherche distribuée sans but lucratif géographique comme les grilles de NCSA Bioinformatics telles que BIRN. En bref, on puise ses ressources à l’extérieur.

Les grilles internes désignent l’intérêt des grandes entreprises commerciales avec les problèmes complexes de calcul qui visent à exploiter entièrement leur puissance de calcul interne.

Après réflexion, il s’agit plutot de terme qui n’ont rien à voir avec l’internet computing ou le virtual supercomputing. Ces types de grille n’englobent pas vraiment le « volunteer computing ». De plus, après de plus ample recherches, les termes ne sont pas utilisé tant que cela ! Ils désignent simplement le fait de puiser ses ressources en interne ou de les puiser en externe (amène des risques au niveau de la sécurité).

En conclusion de toutes ces recherches, j’ose affirmer les points suivants :

- l’internet computing et le volunteer grid sont presque assimilés

- par volunteer grid les anglais dénomme les projets de type SETI@Home où l’on fait don de ses ressources pour une noble cause/ un projet commun

- le terme internet computing presque typiquement francophone (on le retrouve aussi parfois en anglais) est plus large. Il insiste lui aussi sur le don de ressources, mais envisage la possibilité d’avoir plusieurs clients de ce grid.

- Pour faire de l’internet computing, on peut se contenter d’une plateforme dites « lightweight grid » (qui ne respecte pas les standards). Cependant les termes « internet computing » et « lightweigh grid » désignent des concepts strictement différents.

vendredi, février 24, 2006

Internet Computing : quel grid ?

Le grid fait intervenir un grand nombre de termes spécifiques. Certains concepts sont encore flou ou mal compris c'est pourquoi ce mois-ci sera consacré à l'explication de certains termes.

L'internet computing, qu'est-ce ? Quel rapport avec le Grid ? Mes articles n 'apporteront pas de réponses complete mais plutot des références et citations diverses trouvées sur le net.

L'internet computing ou Desktop Grid se distingue du Virtual Computing (article suivant). L'Internet Computing c'est tout d'abord exploiter les périodes de latence d'un pc.

T.PRIOL, INRIA : "une combinaison d'un très grand nombre de PC (jusqu'a 1 million)". Il s'' agit d'exploiter les pc inutilisés, récupérer les cycles CPU via un économiseur d'ecran par exemple. (exemple : SETI@home).
Source : Grid Computing approches et tendances

L'internet computing "cela marche bien pour un spectre étroit d’applications" (INRIA, Cosnard et Priol). Est-ce plus généralisable ? (Source)

Dans sa présentation d'XtremWeb (source), O. Lodygensky
distingue lui aussi l'Internet Computing de part le nombre de ressources mais ajoute également :
  • Pas d'identification individuelle
  • Pas de confiance
  • Partage égalitaire
  • PC plutot que grands sites de calcul (ndlr : une tendance ?)
Je suis plutot prudent par rapport à ces affirmations, car leur sens d'une part est douteux, d'autres part il s'agit à mes yeux plus d'une tendance (d'XtremWeb?) plutot que des faits.
Ce que je retiens de la présentation, c'est plutot ce don de ressources unilatérale ("PC volontaire).

Poursuivant mes lectures, je peux maintenant affirmer avec plus de certitude que la traduction reconnue pour Internet Computing est bien "calcul global".

Je continue avec un présentation de Esnard, Deprez sur le calcul global . (un bon nombre de transparents sont les memes que ceux de T.Priol).
Grande nouveauté : la distinction de 3 grands types de grid...

"- Bas niveau :
Cluster computing avec des réseaux hétérogènes de PCs et de stations de travail
Supercalculateur du pauve.

Utilise toutes les ressources disponibles
- Haut niveau : ordinateur les plus puissants
- Intermédiaire : meta computing"
Il y a ensuite des transparents qui valent vraiment la peine (lisez ce document)

Une des grosses tendances lues dans les documents jusqu'à présent est de vouloir passer de l'internet computing centralisé vers un systeme de type P2P.

Dans CGP2P Calcul Global Pair à Pair on présente encore l'Internet Computing comme un systeme distribué A GRANDE ECHELLE (mais on ne le qualifie pas de grid).

Par contre on ajoute ici :
- Modèle Client-Serveur inversé : 1 client et n serveurs
- L’application exécutée sur les serveurs est fournie par le client

Au passage, dans le meme document je lis la meilleure définition jamais lue du P2P : " Un système dans lequel toutes les ressources peuvent agir comme des clients, des serveurs et maintiennent le système lui même ".

Enfin, dans certaines lectures on avance :
- pas de communication entre machines/noeuds (j'ai des doutes que ce point isolé distingue l'internet computing des autres)

Dans un exposé de M Soberman (source) réapparait ce contexte de don de ressources qui vraisemblablement est inévitable. Cela constitue le facteur majeur de la facilité de deploiement et de fonctionnement des systemes pour internet computing.

Par contre, dans le document deux tendances (souvent sous-entendues dans d'autres documents) sont soulignées :
- volonté pour les plateformes de ce type de passer au mode P2P (maintenance distribuée du systeme)
- possibilité d'exécuter des jobs différents / par des utilisateurs différents (mais aucune moyen alternatif pour controler les consommations n'est pour abordé)

Conclusions :

L'Internet Computing offre des resssources (principalement PCs) offertes volontairement. La plupart des systemes existants visent à l'execution d'une seule tache pour un seul utilisateur/client.

Défauts principaux :
- debit des reseaux, tailles des (petites) machines utilisées
- sécurité faible : les entreprises réservent cette technologie à un usage interne
- fiabilité (critere de choix pour les intergiciels disponibles)

samedi, février 18, 2006

IllicoPresto : campagne

Nous commençons une première campagne de référencement pour le moteur belge illicopresto.

L'occasion de bientôt faire le point à propos de google analytics et google adwords sur Motrech le blog des moteurs de recherche .

jeudi, février 09, 2006

Errata .NET

Il existe deux projets en cours visant à proposer l'infrastructure .NET en version Open Source et sous n'importe OS :
- DotGNU
- Mono

Qu'est ce que J2EE ?

On me pose souvent la question, voici une réponse sommaire :

Selon J2EE 1.4 (J. Weaver & co, Eyrolles) : “En simplifiant beaucoup, on peut présenter J2EE comme un ensemble de specifications, une architecture distribuée, et une méthode de packaging et de déploiement des composants ».

Les éléments principaux de J2EE sont les suivants :

- servlet : application executée coté serveur visant à executer un service pour un client. Le plus souvent il s’agit de fournir du contenu web dynamique

- javaserver pages (jsp) : servent uniquement à faciliter la création de contenu web dynamique

- enterprise Javabeans (ejb) : il s'agit de composants spécifiques chargés des traitements des données propres à un secteur d'activité (on parle de logique métier) et de l'interfaçage avec les bases de données.

mercredi, février 08, 2006

Plateformes J2EE, .NET et LAMP : état des lieux

J2EE sont les spécifications avancées par SUN, de nombreuses plateformes applicatives l’implémentent (certaines sont gratuites et d’autres pas : Sun Application Server, Oracle Server, Apache, Websphere, WebLogic, ...)

.NET est une alternative propriétaire au standard java promu par Sun. .Net n’est pas du tout portable sur d’autres plateformes que Windows (« volonté de Microsoft »). Son modèle de structuration est souvent jugé par ses développeurs plus simple à exploiter que ses equivalents J2EE.
Quel que soit la couche d’application, J2EE et .NET ont en général leur « équivalent ».


LAMP n’est plus à proprement parlé une plateforme (Apache, Mysql et PHP), mais une série d’outils open-source (et souvent, libre) constituant des plateformes.
Conscients de la popularité de LAMP, les editeurs de produits Java modifient la JVM et NetBeans pour qu’ils fonctionnent avec des langages comme Jython, Groovy (et .net).

Zopeévolue à un rythme rapide, il ne s'appuie pas sur la plate-forme J2EE. Il semble tout à fait remarquable pour les services web. La question qui reste encore fort mystérieuse : « Zope permet-il de régler toutes les situations supportées par .net et les serveurs j2ee ? ». On se doute que non, mais jusqu ou vont ses limites a l heure actuelle.

mercredi, novembre 23, 2005

Problèmes avec Nutch

Un probleme semble survenir concernant la gestion de thread.per.host .

En effet, nutch renvoie des exceptions timeout sur une meme seconde de plusieurs threads a la fois.

A suivre...

jeudi, octobre 20, 2005

Introduction d'une application J2EE

Juste quelques notes...

Déployer une application correctement.

Structure d'une application

Tomcat est souvent installé dans le dossier /usr/share/tomcat/.
Les applications que vous réalisez se trouveront dans le dossier /usr/share/tomcat/webapps/.
Votre application applic1 par exemple se trouvera dans le dossier /usr/share/tomcat/webapps/applic1/.

Pour fonctionner, votre application doit posséder la structure suivante :
applic1/
....ressources Web plubliques (statiques html ou jsp)
....WEB-INF/
........web.xml
........lib/
............librairies jar utilisées par vos pages (ce que vous avez développé)
........classes/
............classes utilisées par vos pages (si vous ne les avez pas en jar)

Attardons nous sur le seul fichier qui doit respecter une norme (web.xml), voici son contenu : WEB.XML

Le seul paramètre à modifier est le nom du fichier page d'accueil à remplacer dans le tag welcome-file. Le fichier web.xml PEUT etre utilisé tel quel. Nous ne verrons pas toutes les opérations possibles.

Du code JAVA dans Ma Page HTML :

Les points majeurs à retenir pour réaliser une page jsp et faire cohabiter du code sont les suivants :
* Tout code JAVA doit etre entouré des balises <% et des balises %>
* Toute page JSP doit posséder une en-tete
* Toute page JSP présente l'extension de fichier .jsp
* Il y a bcp de commandes JSP mais seules quelques unes sont utiles.

vendredi, août 05, 2005

Définition d'un Grid

Ian Foster, Prof. à l'université de Chicago, auteur de What is The Grid? et d'autres publications, développeur de Globus, a validé ma définition du grid. Voici sa première version.

DEFINITION

Une grille informatique ou grid est une infrastructure virtuelle garantissant des qualités de service non-triviales et constituée d'un ensemble de ressources informatiques partagées, hétérogènes, coordonnées et non-contrôlées.

"Le grid" (à l'image de "l'internet") est un grid utilisant des protocoles standards afin de pouvoir politiser les partages de ressources entre groupements autonomes d'individus/d'institutions appelés organisations virtuelles.

DEVELOPPEMENT DE LA DEFINITION

Une grille est en effet une infrastructure, c'est-à-dire des équipements techniques d'ordre matériels et logiciels. Cette infrastructure est qualifiée de virtuelle car les relations entre les entités qui la composent n'existe pas matériellement mais numériquement.

Une grille garantit des qualités de service non-triviales, c'est-à-dire qu'elle se distingue des autres infrastructures dans son aptitude à répondre adéquatement à des exigences (accessibilité, disponibilité, fiabilité, ...) compte tenu de la puissance de calcul qu'elle représente.

Une grille se compose de ressources informatiques : tout élément qui permet l'exécution d'une tâche numérique. Cette définition inclût bien sûr les ordinateurs personnels, mais également les téléphones portables, les calculatrices et tout object qui présente un composant informatique.

Ces ressources sont qualifiées de :

  • Partagées : elles sont mises à la disposition des différents consommateurs de la grille.
  • Hétérogènes : elles sont de toute nature, les ordinateurs peuvent différer par exemple de par leur système d'exploitation.
  • Coordonnées : les ressources sont arrangées, mises en relation et politisées en vue d'une fin, d'un objectif. Cette tâches est souvent remplie par un ou plusieurs ordonnanceurs.
  • Non-controlées : les ressources ne sont pas contrôlée par une unité commune. Contrairement à un cluster, les ressources sont hors de la portée d'un moniteur de contrôle.

    Spécifications d'un grid ou "qu'est-ce q'un bon grid ?" :
    L'accès à cette énorme puissance doit faire intervenir les notions suivantes :
    - fiable/sûr
    - politisé en organisations virtuelles
    - peu coûteux
    - consistant/régulier
    - envahissant : le calcul se répend sur les entités de l'infrastructure
    à accès dominant et peu coûteux conformé sûr aux possibilités informatiques à extrémité élevé

    Un grid doit utiliser des protocoles standards.

Grid Search Engine

Evaluer l'utilité d'un crawler distribué (sous une plateforme grid dans notre cas), tel sera l'objet du projet Grid@Home.

Je présenterai ce projet le 14 septembre prochain à Poznan Pologne. La présentation sera réalisée dans le cadre de CoreGrid, le réseau d'excellence européen en matière de Grid.

mercredi, juin 22, 2005

Projet de communauté d'intérêt

Les informations recensées par tout type de moteur de recherche sont très nombreuses. Mettre la main sur un document (web ou d'un système informatique) donné en utilisant un moteur de recherche est une opération fastidieuse. Les moteurs de recherche actuels constituent pourtant les seuls solutions de recherche.

L'algorithmique notamment par les techniques de ranking ne permet pas d'obtenir un niveau suffisant de qualité en matière de recherche de documents. L'essence des communautés d'intérêt naît de ce constat et son objectif est de favoriser la recherche de documents. Une communauté d'intérêt est une organisation virtuelle permettant de rassembler l'expérience de nombreuses personnes afin de la partager.Une communauté d'intérêt peut être adaptée pour les moteurs de recherche. Il s'agit par exemple de construire des ontologies permettant de classer les documents ou encore d'ajouter des informations correspondant à certains mots de recherches (tips).

Exemple :
Une entreprise A dispose d'un moteur de recherche pour référencer ses documents.
Un employé doit prendre en main le projet Machin abandonné l'année passée.
Il effectue une recherche avec les mots "projet MACHIN".
Sur la deuxieme page de résultats il retrouve le document du projet MACHIN.
Grace à la communauté d'intérêt, il peut ramener en première position le document du projet machin pour toutes les recherches contenant le mot "machin" en y ajoutant un commentaire.Les possibilités sont assez illimitées selon l'implémentation de la communauté d'intérêt.

La communauté d'intérêt développée au CETIC vise à construire des onthologies permettant de classer des mots de recherche et des annuaires (collection d'urls). Elle permet également d'associer des messages à certains mots de recherche ce qui permet d'obtenir des informations directement.

Les onthologies et les classements sont obtenu via une pyramide panoptique. C'est une adaptation des théories de Michel Foucault, dans le livre publié en 1975 « Surveiller et punir » où Foucault y développe deux concepts, celui de panoptisme et celui de société disciplinaire. Brièvement, les informations doivent être validées plusieurs fois avant d'être prise en compte par le moteur de recherche, tandis que les mauvaises propositions sont sanctionnées.

mercredi, juin 08, 2005

Moteur de Gogole !

Fier de mon petit plat pays de Belgique et davantage encore de ma ville natale, je vous présente le moteur Gogole Liège : http://www.gogole.be/

A visiter!

mardi, juin 07, 2005

Le spamdexing

Le « spamdexing » désigne tous les moyens pour tromper les moteurs de recherche chargés d'indexer et de classer les sites.

L'article Ces tricheurs qui polluent Google publié sur 01net synthétise efficacement les techniques souvent dénoncées permettant d'améliorer frauduleusement le référencement dans les moteurs de recherche.