2010-09-27 5 views
0

Je cours un peu de test/poc ici.demande rapide sur hbase

J'ai besoin de charger quelques millions de lignes chaque jour dans une base de données. Et ce ne sont pas des données de fichier journal, j'ai des lignes délimitées par des virgules (de colonnes) qui correspondraient exactement à une base de données relationnelle. Après le chargement, je dois autoriser un mécanisme de recherche très rapide. En regardant un peu la mise en œuvre de bigtable et de la structure autour de Google, j'ai d'abord pensé à utiliser hive intégré avec hbase. Hive en raison de ses capacités d'interrogation. Le chargement fonctionne bien, mieux que le RDBMS perf. Cependant, le goulot d'étranglement de l'interrogation, qui était la raison pour laquelle des alternatives au SGBDR ont été recherchées, continue également avec la ruche.

ruche Test pour effectuer des requêtes est pas vraiment des performances sidérantes. Peut-être que j'ai besoin de chercher des alternatives ..

Y a-t-il autre chose? tout autre outil/solution/bibliothèque que je peux mettre sur hbase? ou même sans hbase? (Je regardais HBase comme une alternative au SGBDR, se dirigeant vers l'informatique dist)

suggestions, veuillez ...

Répondre

3

Si vous voulez des fonctionnalités de recherche générales, vous pouvez rechercher des solutions comme Solr ou ElasticSearch à la place. HBase fonctionne bien si vous préparez les données pour les requêtes dont vous avez besoin (conception de clé) et non pour la recherche générale. vous pouvez également regarder Lily qui combine Solr et HBase

+0

grâce, solr ont beaucoup aidé. – Gyan

1

Le problème que vous avez est que la ruche fonctionne la plupart de ses requêtes que des programmes MapReduce qui sont par nature lente.

Si vous écrivez votre propre programme pour exécuter des analyses appropriées, puis groupe vous-même, HBase peut être très rapide. Si vous voulez un langage de requête bien qu'il n'y ait actuellement aucune solution à ma connaissance.

Il est difficile de dire plus que votre description des données et le genre de questions que vous souhaitez exécuter sur il est très générique.

0

Avez-vous regardé une solution de type solr ou lucene? Ce n'est pas une solution SQL, mais le langage de requête est assez flexible pour certains types d'utilisation, et il est extrêmement rapide. Il existe également des moyens de le distribuer sur un cluster de serveurs pour améliorer les performances, en augmentant la taille de l'index ou le nombre de requêtes qu'il peut gérer, ou les deux.

1

Ce n'est pas impensable d'utiliser MySQL pour ce nombre de lignes. Vous pouvez l'essayer avec quelques données de test et voir si vous pouvez vous en sortir.