Amazon CloudSearch (Bêta)

Vous ne connaissez pas encore Amazon CloudSearch ?

Activez votre essai gratuit de 30 jours dès maintenant.

Pour en savoir plus, consultez la page relative à l'essai gratuit d'Amazon CloudSearch.



Amazon CloudSearch est un service de recherche dans le nuage entièrement géré, qui permet aux clients d'intégrer à leurs applications une fonctionnalité de recherche rapide et extrêmement évolutive. Dans AWS Management Console, vous pouvez, en quelques clics, créer un domaine de recherche en toute simplicité ou encore télécharger les données consultables dans Amazon CloudSearch ; le service déploie automatiquement les ressources technologiques nécessaires et propose un index de recherche parfaitement adapté.

Amazon CloudSearch évolue en continu, à mesure que le volume de données consultables augmente ou que la fréquence de requête change. En outre, les développeurs peuvent modifier les paramètres de recherche, affiner la pertinence des recherches et appliquer de nouveaux paramètres à tout moment, sans avoir à télécharger à nouveau toutes les données.

Amazon CloudSearch permet aux clients de se défaire de la lourde charge administrative que représentent l'exploitation et le dimensionnement d'une plate-forme de recherche. Ils n'ont plus à se préoccuper de la mise à disposition du matériel, du partitionnement des données ou des correctifs logiciels à appliquer. Amazon CloudSearch propose des tarifs avantageux, sans abonnement, sans frais à avancer, ni engagement à long terme.

Lisez le billet sur CloudSearch publié par Jeff Barr, grand défenseur d'Amazon Web Services et apprenez, en une heure à peine, à développer une plate-forme de recherche pour moins de 100 USD par mois.

Découvrez gratuitement Amazon CloudSearch

Si vous utilisez le service Amazon CloudSearch pour la première fois, vous pouvez le découvrir gratuitement ! Pour en savoir plus, consultez la page relative à l'essai gratuit d'Amazon CloudSearch.

Inscription facile,
vous ne payez que ce que vous utilisez
Inscrivez-vous

Qu'est-ce qu'Amazon CloudSearch ?

Vidéo : Amazon CloudSearch Overview

SmugMug sur AWS :
Témoignage de réussite avec CloudSearch

Vidéo : SmugMug on AWS – CloudSearch Success Story


Cette page contient les catégories d'informations suivantes. Cliquez pour aller en bas de page :

Amazon CloudSearch – Fonctionnalité

Conçu pour offrir un débit élevé et un faible temps d'attente, Amazon CloudSearch prend en charge une large gamme de fonctions, parmi lesquelles une recherche sur texte libre, une recherche à facettes, une classification par pertinence personnalisable, des champs de recherche configurables, des options de traitement de texte et une indexation en temps quasi réel.

Pour utiliser Amazon CloudSearch, il vous suffit de :

  • créer un domaine de recherche,
  • configurer vos champs de recherche,
  • charger vos données à indexer,
  • soumettre des demandes de recherche depuis votre site ou votre application.

Amazon CloudSearch est actuellement disponible dans les régions USA Est (Virginie du Nord) et UE (Irlande).


Éléments principaux du service

Simplicité de configuration – Vous pouvez rendre vos données consultables au moyen d'AWS Management Console, d'appels API ou d'outils de ligne de commande. Il vous suffit de désigner un échantillon de données pour qu'Amazon CloudSearch vous propose automatiquement une liste de champs indexés ainsi qu'une suggestion de configuration. Il est facile d'ajouter ou de supprimer des champs, et de personnaliser des options de recherche à facettes (les facettes sont des champs indexés représentant des catégories que vous voulez utiliser pour affiner et filtrer les résultats de vos recherches). La configuration peut être modifiée sans avoir à recharger vos données. Vous pouvez utiliser des rapports d'analyse pour assurer le suivi des mesures de recherche et du comportement des utilisateurs.

Mise à l'échelle automatique pour les données et le trafic – Amazon CloudSearch effectue, de manière transparente, une mise à l'échelle supérieure ou inférieure en fonction de l'évolution de la quantité de données ou du volume d'interrogation. Amazon CloudSearch gère pour vous l'empreinte opérationnelle et vous fournit les instances de recherche.

Faible temps d'attente, débit élevé – Amazon CloudSearch stocke toujours votre index dans une RAM afin de garantir un faible temps d'attente et un haut débit, même à grande échelle. Amazon CloudSearch a été créé à partir de la même technologie A9 que celle sur laquelle s'appuie la recherche sur Amazon.com.

Facilité d'administration – Amazon CloudSearch est un service entièrement géré. Le dimensionnement, l'installation et la configuration du matériel et des logiciels, la correction des programmes et le partitionnement des données sont pris en charge pour vous.

Fonctions de recherche poussée – Amazon CloudSearch indexe et recherche à la fois les données structurées et le texte en clair. Ce service propose la plupart des fonctions de recherche que les développeurs attendent désormais d'un moteur de recherche : recherche à facettes, recherche en texte libre, recherche booléenne, classification personnalisable par pertinence, expressions de classement des interrogations par durée, pondération des champs et tri des résultats par champ. Amazon CloudSearch permet également l'indexation en temps quasi réel de mises à jour de documents.

Faibles coûts – Amazon CloudSearch a été conçu dans un souci d'économie. Les tarifs horaires sont très bas et vous ne payez que les ressources que vous consommez. Comparé à l'exploitation isolée d'un environnement de recherche, Amazon CloudSearch offre un faible coût total de possession pour vos applications de recherche.

Sécurité – Amazon CloudSearch utilise des méthodes cryptographiques évoluées pour authentifier les utilisateurs et prévenir la prise de contrôle illicite de vos domaines. Amazon CloudSearch prend en charge les protocoles HTTPS et fournit des interfaces de service Web pour configurer les paramètres du pare-feu qui contrôlent l'accès du réseau à votre domaine.


Tarification

Il n'y a pas de frais d'installation ou d'engagements pour commencer à utiliser Amazon CloudSearch. Les factures des clients sont calculées en fonction de leur utilisation mensuelle dans les dimensions suivantes :

  • Instances de recherche
  • Chargements par lots de documents
  • Demandes IndexDocuments
  • Transfert de données

Instances de recherche

Les frais d'instance vous sont facturés sur une base horaire. Amazon CloudSearch prend actuellement en charge trois types d'instances de recherche : Small, Large et Extra Large :

En tant que service géré, Amazon CloudSearch détermine la taille et le nombre d'instances nécessaires pour garantir des performances de recherche avec une latence minimale et un débit optimal. Lorsque vous téléchargez vos données et configurez votre index, Amazon CloudSearch génère un index et utilise le type d'instance de recherche initial approprié afin de s'assurer que l'index peut être stocké dans la mémoire RAM.

A mesure que votre volume de données et votre index augmentent, Amazon CloudSearch redimensionne le domaine de recherche selon un type d'instance plus grand (ou partitionne votre index en plusieurs instances si vous utilisez déjà le type le plus grand). Inversement, si votre volume de données et votre index diminuent, CloudSearch réduit la taille du domaine en abaissant le nombre d'instances de recherche (ou en utilisant un type d'instance plus petit si votre index tient sur une seule partition).

Parallèlement au volume de données, Amazon CloudSearch adapte automatiquement votre domaine de recherche en fonction de la demande en termes de trafic. Lorsqu'une instance de recherche atteint plus de 80 % d'utilisation des ressources CPU, CloudSearch développe votre domaine de recherche en y ajoutant une instance capable de prendre en charge la hausse du trafic. A l'inverse, si une instance utilise moins de 30 % des ressources CPU, CloudSearch réduit le domaine de recherche en supprimant les instances superflues, afin de limiter les coûts.

Le tarif correspond à une heure d'instance consommée pour chaque instance de recherche, à partir du moment où une instance de recherche est lancée jusqu'à ce qu'elle soit terminée. Chaque heure d'instance partielle consommée sera facturée comme une heure pleine.

Chargements par lots

Votre facture sera établie en fonction du nombre total de lots de documents chargés sur votre domaine de recherche. Les documents chargés sont automatiquement indexés.

  • 0,10 USD par 1 000 demandes de chargement par lots (la taille maximale de chaque lot est de 5 Mo)

Demandes IndexDocuments

Lorsque vous modifiez la configuration de votre index, par exemple en ajoutant un champ, vous devez reconstruire l'index. Vous utilisez, pour ce faire, AWS Management Console, les outils de ligne de commande ou des API pour émettre une demande IndexDocuments. Le tarif de cette demande est le suivant :

  • 0,98 USD par Go de données stocké dans votre domaine de recherche

Il peut arriver qu'Amazon CloudSearch émette ces appels pour vous. Par exemple, lorsque vous ajoutez des données à votre domaine, Amazon CloudSearch peut reconstruire de manière proactive votre index afin d'améliorer les performances d'interrogation. Vous n'aurez rien à payer dans ce cas, ni dans d'autres lorsque vous n'appelez pas explicitement IndexDocuments.

Transfert de données

Le tarif ci-dessous est basé sur les données transférées « sortantes » et « entrantes » d'Amazon CloudSearch.

Le transfert de données entre Amazon CloudSearch et les services AWS de la même région est gratuit.

Les données transférées entre Amazon CloudSearch et les services AWS de différentes régions sont facturées comme un transfert de données Internet de chaque côté du transfert.

Pour le trafic envoyé entre les instances Amazon CloudSearch et Amazon EC2 de la même région, les frais standard pour le transfert de données vers et depuis les instances Amazon EC2 et pour le transfert des données régionales d'Amazon EC2 s'appliquent. Pour en savoir plus, reportez-vous à la section relative à la tarification d'Amazon EC2.

Vous pouvez toujours voir les ressources que vous consommez dans Amazon CloudSearch sur la page Activité du compte du site Web AWS, dans AWS Management Console, via les outils de ligne de commande CloudSearch ou les API CloudSearch.

Exemple de coûts

Voici un exemple de coûts basé sur le jeu de données vidéo IMDb. Gardez à l'esprit que divers facteurs peuvent peser sur les caractéristiques de dimensionnement d'un domaine de recherche et sur le coût de son exploitation, notamment les valeurs réelles au sein de chaque champ à rechercher, les options d'indexation que vous configurez pour votre domaine et la puissance de calcul requise pour traiter vos demandes.

Dans le jeu de données IMDb, chaque vidéo constitue un document de 1 Ko. Une instance de recherche Small peut contenir 1 million de documents de 1 Ko. Pour calculer combien il vous en coûtera afin d'exécuter un domaine de recherche pour ces données, prenons comme hypothèse les niveaux d'utilisation suivants :

  • 100 000 demandes de recherche simple par mot-clé et par jour
  • 50 chargements par lot et par jour, chaque lot rajoutant 1 000 nouvelles vidéos (jusqu'à 1 million de vidéos au total)
  • 4 demandes IndexDocuments par mois

En tenant compte de ces niveaux d'utilisation, Amazon CloudSearch déploie automatiquement le domaine de recherche sur une instance de recherche de type Small. Vos coûts mensuels sont les suivants :

  • Instance de recherche Small : 720 heures (24 heures par jour x 30 jours) x 0,10 USD par heure = 72,00 USD par mois
  • Chargements par lot : (50/1000) x 0,10 USD x 30 jours = 0,15 USD par mois
  • IndexDocuments (100 Mo) : 0,1 Go (volume de données stockées dans votre domaine de recherche) x 0,98 USD par Go x 4 appels par mois = 0,39 USD par mois

TOTAL : 72,54 USD/mois

Notez que lorsqu'un domaine de recherche dépasse les capacités d'une instance de recherche Small, il est automatiquement mis à l'échelle vers une instance de recherche Large et des frais supplémentaires sont imputés. Vous pouvez surveiller votre utilisation et vos frais sur la page Activité du compte du site Web AWS.


Description détaillée

Instances de recherche

Vous pouvez créer un domaine de recherche Amazon CloudSearch pour chaque lot de données collectées que vous souhaitez rendre consultable. Un domaine est associé à une ou plusieurs instances de recherche, disposant chacune d'une quantité fixe de mémoire RAM et de ressources CPU pour l'indexation des données et le traitement des requêtes. Le nombre d'instances de recherche d'un domaine dépend des documents figurant dans votre lot de données collectées, ainsi que du volume et de la complexité de vos requêtes de recherche.

En tant que service géré, Amazon CloudSearch détermine la taille et le nombre d'instances nécessaires pour garantir des performances de recherche avec une latence minimale et un débit optimal. Lorsque vous téléchargez vos données et configurez votre index, Amazon CloudSearch génère un index et utilise le type d'instance de recherche initial approprié afin de s'assurer que l'index peut être stocké dans la mémoire RAM.

A mesure que votre volume de données s'accroît, Amazon CloudSearch redimensionne le domaine de recherche selon un type d'instance plus grand (ou partitionne votre index en plusieurs instances si vous utilisez déjà le type le plus grand). Inversement, si votre volume de données diminue, CloudSearch réduit la taille du domaine en abaissant le nombre d'instances de recherche (ou en utilisant un type d'instance plus petit si votre index tient sur une seule partition).

Parallèlement au volume de données, Amazon CloudSearch adapte automatiquement votre domaine de recherche en fonction de la demande en termes de trafic. Lorsqu'une instance de recherche atteint plus de 80 % d'utilisation des ressources CPU, CloudSearch développe votre domaine de recherche en y ajoutant une instance capable de prendre en charge la hausse du trafic. A l'inverse, si une instance utilise moins de 30 % des ressources CPU, CloudSearch réduit le domaine de recherche en supprimant les instances superflues, afin de limiter les coûts.

Ainsi, si le volume de votre lot de données collectées nécessite trois partitions, votre domaine de recherche disposera de trois instances de recherche (une par partition). Dès lors que le trafic devient supérieur à la capacité de traitement de chaque instance de recherche, chaque partition est dupliquée de façon à augmenter la capacité. Vous disposez alors au total de six instances de recherche prenant en charge les trois partitions de votre domaine. Chaque fois que le trafic augmente, de nouvelles instances sont ajoutées.

Vous pouvez toujours voir les ressources que vous consommez dans Amazon CloudSearch sur la page « Account Activity » du site d'AWS, AWS Management Console, les outils de ligne de commande CloudSearch ou les API CloudSearch.

Le volume de données pouvant être pris en charge par chaque type d'instance de recherche dépend essentiellement de la taille de vos documents (lot de données collectées consultables) et de la configuration des champs d'index. Nous allons utiliser un document et une configuration types pour l'ensemble de données publiques Wikipédia, défini comme exemple de référence, afin d'illustrer la capacité de chaque instance de recherche.

Dans Amazon CloudSearch, les documents sont décrits à l'aide du format SDF (Search Data Format). La version JSON de l'extrait de document Wikipédia illustré ci-dessous est d'environ 1 Ko :

{ "type": "add",
  "id": " wikipedia26678",
  "version": 5465249,
  "lang": "en",
  "fields": {
      "title": "Star Wars",
      "url": "http://en.wikipedia.org/wiki/Star_Wars",
      "author": "Jedi94",
      "type": "Article",
      "year": "1977",
      "teaser": "The Star Wars title card/logo, as seen in all films. 
        'Star Wars' is an American epic space opera film series created by 
        George Lucas. The first film in the series was originally released 
        on May 25, 1977, under the title Star Wars, by 20th Century Fox, 
        and became a worldwide pop culture phenomenon, followed by two 
        sequels, released at three-year intervals. Sixteen years after the 
        release of the trilogy's final film, the first in a new prequel 
        trilogy of films was released. The three films were ..." 
  } 
}

Chacun des champs de l'extrait de document doit être configuré selon plusieurs options d'indexation, telles que le type du champ, si la recherche peut porter sur ce dernier, ou encore si celui-ci est compatible avec les facettes ou les résultats. Toutes ces options ont un impact direct sur la capacité d'une instance de recherche en termes de nombre de documents. Le tableau ci-dessous présente un exemple de configuration pour les champs d'index de l'ensemble de données Wikipédia.

Nom Type Recherche Facette Résultat
title text
url text
author text
year uint
type literal
teaser text

En fonction de la taille du document (1 Ko) et de la configuration d'index présentée ci-dessus, chaque type d'instance de recherche peut contenir le nombre de documents ci-après.

Type d'instance de recherche Capacité en données
Instance de recherche Small 1 million de documents
Instance de recherche Large 4 millions de documents
Instance de recherche Extra Large 8 millions de documents

Bien entendu, ces restrictions ne sont fournies qu'à titre indicatif. Des documents différents ou une autre configuration peuvent considérablement modifier le nombre de documents qu'une instance peut contenir. Alors que l'évolution de votre activité vous amène au-delà des limites d'une seule instance de recherche Extra Large, Amazon CloudSearch ajoute automatiquement jusqu'à 9 instances de recherche Extra Large supplémentaires afin de mettre à l'échelle vos capacités de recherche pour que vous puissiez prendre en charge des dizaines, voire des centaines de millions de documents. Si vous avez besoin d'une mise à l'échelle plus importante, contactez-nous.

Un exemple expliquant la ventilation des coûts figure dans la section Tarification.

Architecture

Amazon CloudSearch gère les ressources serveur nécessaires à la création d'une solution de recherche. Trois services secondaires très simples permettent d'effectuer les opérations suivantes :

  • Configuration de domaines de recherche
  • Téléchargement de documents en vue de leur indexation
  • Soumission de requêtes de recherche

Service de configuration

Le service de configuration vous permet de créer et de configurer des domaines de recherche. Chaque domaine englobe des données collectées, sur lesquelles peut porter la recherche.

Pour créer un domaine, il vous suffit d'indiquer un nom y faisant référence. Chaque domaine de recherche peut ensuite être configuré en définissant des options d'indexation, des options de texte et des expressions de classement.

  • Les options d'indexation désignent les champs que vous souhaitez inclure dans l'index. A l'aide d'AWS Management Console ou des outils de ligne de commande, vous pouvez balayer vos données de façon à configurer automatiquement des options d'indexation par défaut.
  • Les options de texte vous permettent de définir des dictionnaires spécifiques au domaine concerné de façon à ignorer certains termes lors de l'indexation, de définir des synonymes courants pour certains termes, ou encore d'associer les variantes d'un mot à une racine commune afin que les résultats de la recherche renvoient toutes ces variantes.
  • Les expressions de classement sont des fonctions mathématiques qui permettent de modifier l'ordre dans lequel les résultats de la recherche s'affichent. Par défaut, les documents sont classés selon une note de pertinence du texte, qui tient compte de la proximité entre les termes recherchés et la fréquence de ces termes au sein d'un document. Vous pouvez utiliser ce type d'expressions pour inclure d'autres facteurs dans le classement. Par exemple, si votre domaine comporte un champ numérique intitulé « popularité », vous pouvez définir une expression de classement combinant la popularité avec la note par défaut de pertinence du texte, afin que les documents les plus demandés apparaissent en premier dans vos résultats de recherche.

Service de document

Le service de document permet de modifier les données consultables d'un domaine. Chaque domaine dispose d'un point de terminaison HTTP unique pour son service de document. Lorsque vous intégrez des données à votre domaine, elles sont automatiquement indexées et toute modification devient visible quasiment en temps réel dans les résultats de recherche.

Pour intégrer des données à votre domaine, vous devez les décrire à partir du format SDF (Search Data Format). Dans le format SDF, chaque élément que vous souhaitez pouvoir faire figurer dans les résultats de recherche est représenté sous la forme d'un document. Chaque document possède un identifiant unique (docid), un numéro de version, ainsi qu'un ou plusieurs champs contenant les données sur lesquelles peuvent porter les recherches. Les champs d'un document peuvent contenir n'importe quelles données de chaîne UTF-8. Les options d'indexation issues de la configuration de votre domaine déterminent la façon dont vous souhaitez associer les champs de document SDF aux champs de l'index de recherche.

Service de recherche

Le service de recherche traite les requêtes de recherche associées à un domaine. Chaque domaine dispose d'un point de terminaison HTTP unique. Lorsque vous envoyez une requête de recherche, le service renvoie une liste de documents, triés par pertinence. Les résultats de la recherche peuvent être renvoyés au format JSON ou XML.

Amazon CloudSearch fournit un langage de requête enrichi qui vous permet de faire porter la recherche sur certains champs en particulier, d'effectuer des recherches booléennes complexes, d'extraire les informations relatives aux facettes, ou encore de définir les données qui doivent être incluses dans les résultats.

Vous pouvez faire appel au testeur de recherches de la console Amazon CloudSearch pour réaliser des tests à partir d'exemples de requêtes.

Mise en route

Pour vous familiariser avec Amazon CloudSearch, vous pouvez utiliser le manuel Amazon CloudSearch Developer Guide et suivre le didacticiel de mise en route.


Vidéo : Introduction to Amazon CloudSearch

Présentation d'Amazon CloudSearch
Pour découvrir une synthèse des fonctionnalités d'Amazon CloudSearch, regardez cette vidéo.

Vidéo : Building a Search Application Using Amazon CloudSearch

Création d'une application de recherche à l'aide d'Amazon CloudSearch
Afin de découvrir comment utiliser Amazon CloudSearch pour développer une application de recherche, et notamment comment télécharger et indexer un ensemble de données public volumineux, personnaliser les paramètres de classement ou intégrer une fonction de recherche dans un modèle d'application, regardez cette vidéo.


Utilisation prévue et restrictions

Votre utilisation de ce service est soumise au Contrat client Amazon Web Services.

©2013, Amazon Web Services, Inc. or its affiliates. Tous droits réservés.