2012-05-18 2 views
1

Je suis assez nouveau dans le monde Map/Reduce et j'essaie d'évaluer la meilleure option pour savoir si je peux l'utiliser pour créer un index dans Solr. Actuellement, j'utilise une exploration régulière pour extraire des données et les indexer directement dans Solr. Cela fonctionne sans aucun problème. Mais à l'avenir, nous devons accéder à des données importantes résidant dans Amazon S3. Il y a environ 5 millions de données actuellement stockées dans S3, qui doivent être indexées. Je songe à utiliser Amazon Elastic Map/Reduce (EMR) pour accéder directement au contenu de S3 et ensuite créer l'index dans Solr. La structure des données est simple, l'url (qui est unique) est la clé S3, la valeur est un fichier XML. L'URL sera utilisée comme ID de document dans Solr tandis que la partie pertinente des données XML sera stockée sous forme de champs dans l'index Solr.Besoin d'une suggestion sur l'utilisation de Map/Reduce pour créer l'index solr

Ma question est de savoir si EMR est la bonne approche? La tâche consiste à accéder aux données de S3, à extraire certains éléments du XML, à effectuer un traitement, puis à appeler l'API Solr pour générer l'index. La partie traitement nécessite peu de classes, éventuellement un modèle de chaîne de commande, avant d'indexer les données. Est-ce quelque chose de réalisable? Doo-je besoin d'un réducteur ou peut utiliser un mapper pour faire le processus? Si le réducteur est nécessaire, quelle en sera la portée? Actuellement, j'ai un seul index qui stocke les données.

Tout pointeur sera très apprécié.

Merci

Répondre

0

Vous pouvez essayer d'utiliser MapReduceIndexer Tool. Vous pouvez le télécharger depuis apache-sole. Cela fait partie du module contrib.

Questions connexes