Créer un service cloud en moins de 500 lignes


En voici un titre racoleur ! Du moins dans le monde l’IT... J’espère ne pas lancer une mode qui s’apparenterait aux solutions pour maigrir en moins de 7 jours ou d’apprendre le Javanais en moins d’un mois mais je relève néanmoins le défi énoncé dans le titre.

Lire la suite...

Intégrer ElasticSearch dans une application Java


Ca y est, c'est décidé, nous allons utiliser ElasticSearch comme moteur de recherche dans notre application Java. J'ai suivi la formation Zenika, j'ai installé mon premier cluster ElasticSearch et fait quelques gammes avec cURL. Bref tout est prêt, il n'y a plus qu'à l'intégrer dans notre application Java.

Cet article est issu d'un cas réel (aucun noeud ElasticSearch n'a été blessé durant le tournage), il présente les problématiques rencontrées et les solutions apportées.

Lire la suite...

Introducing the ElasticSearch View Plugin


The ElasticSearch View Plugin provides a simple way to render ElasticSearch documents in HTML, XML or text. This plugin can also be used to generate web pages that show a list of documents based on predefined search queries.

Lire la suite...

Premiers pas avec ElasticSearch (Partie 1)


ElasticSearch est un moteur de recherche open source qui fait beaucoup parler de lui. Et pour cause, il possède un atout majeur : il suffit de quelques minutes à peine pour disposer d'un moteur de recherche clusterisé, automatiquement sauvegardé et répliqué, interrogeable via une API REST et proposant toutes les fonctionnalités d'un moteur de recherche dernière génération.

Lire la suite...

Elasticsearch : modes de communication et plugin ØMQ


Elasticsearch est un projet open source, développé en Java et basé sur l'excellente librairie Apache Lucene, qui fournit des fonctionnalités de recherche avancées pour les sites web et les applications métier. Ses caractéristiques les plus connues sont sa capacité à indexer et rechercher des informations sur un très grand volume de données, sa nature distribuée qui facilite la clusterisation de serveurs de moteurs de recherche, et son API REST/JSON très complète.

Il existe plusieurs façons de communiquer avec un serveur (ou un ensemble de serveurs) Elasticsearch. La plus simple est d’utiliser l’API REST sur le protocole HTTP, mais il en existe d’autres. Voici donc un petit tour d’horizon des modes de transport existants pour communiquer avec Elasticsearch, ainsi qu’une présentation plus détaillée du plugin ØMQ.

Lire la suite...

Coherence Part VI : traitement de données distribuées, concurrence et in-place processing


La gestion de la concurrence et la distribution des calculs sont primordiaux pour atteindre la scalabilité que promettent les in memory datagrids. Coherence propose plusieurs mécanismes pour cela, dans cet article nous allons gérer les accès concurrents aux données dans un premier temps avec des locks explicites puis nous verrons comment Coherence permet de faire des traitements lock-free et in place, pour que le noeud qui porte la donnée soit celui qui effectue les opérations afin d'atteindre une scalabilité supérieure.

Lire la suite...

Coherence Part V : optimisations des requêtes avec des index


Dans l'article précédent, nous évoquions la possibilité de créer un index sur le cache afin d'accélérer les recherches en évitant de de-sérialiser l'ensemble des entrées du cache pour appliquer le filtre. Nous allons voir comment faire !

Lire la suite...

Coherence Part IV : extracteurs et recherches distribuées sur le cluster


Cet article est la suite du précédent, qui montrait comment réaliser des recherches distribuées sur le cluster avec des filtres. Celui ci va plus loin et expose le mécanisme d'extraction des données à présenter au filtre à partir des entrées du cache.

Lire la suite...

Coherence Part III : Filtres


Les datagrids fournissent des mécanismes de recherche de données adaptés à leur caractère distribué. Chaque requête est envoyée à chaque noeud du cluster qui retourne une partie du résultat, à la manière de Map/Reduce. En parallélisant le traitement, les datagrids tirent parti de toute la puissance de calcul du cluster.
Dans cet article, nous allons voir comment utiliser les filtres Coherence pour effectuer des recherches optimisées.

Lire la suite...

Introduction à Coherence: Part II


Nous avons vu au cours de notre article précédent comment intégrer Oracle Coherence dans l'application PetClinic de SpringSource. Cependant, si l'application est à peu près utilisable, il reste de nombreux points à améliorer.
Dans cet article, nous allons présenter les topologies de caches offertes par Coherence et remplacer le cache par défaut par notre propre cache.

Lire la suite...

- page 1 de 2