Es gibt 3 Möglichkeiten, die Ergebnisse von Ihrem Hbase zu erhalten.
1) Shell: Dies ist für einfache sichere Datenanalyse mit kleinen Datenmengen. Dies ist für kleine Datenmengen und ist für die Entwickleranalyse. Wenn Sie Ihren RowKey wissen direkt können Sie die Daten erhalten schnell
2) Hbase nicht Batch-Clients: Zum Beispiel Java-Client Hbase verbinden Filter anwenden und Ergebnisse erzielen Dies gilt auch für kleine Datenmenge ist.
Warum mapreduce Hbase API
Was Ihre Daten passiert, wenn sehr groß ist, und Sie müssen ... in diesem Fall verarbeiten, entweder Ihre hbase Shell hängen wird und es wird un responsiven oder kontinuierlicher Datenfluss wird dort die Scrollen wird .. Sie können kippen, das sehen und zu analysieren ..
3) Mapreduce (Batch Client): Zur Verarbeitung großer Datenmengen. Sie können das gleiche Filter- und Scan-Objekt verwenden, das im Java Hbase-Client-Programm verwendet wurde, um die Ergebnisse zu erhalten.
Vorteile/Grund zu verwenden MapReduce mit Hbase:
Batch/parllel Verarbeitung
Mindestens werden die Ergebnisse als Teil-Dateien in HDFS gespeichert werden (wenn Sie hdfs erwähnen als Senke)
Sie können Ergebnisse von ex: Staging-Tabelle zu einer anderen Übersichtstabelleaggregieren 0 wie ein ETL-Rohrleitung ...
Eine klassische Beispiele der obigen Erläuterung ist die Anzahl der Reihen zu zählen ...
Man denke nur, warum hbase Team gegeben hat mapreduce Job Bereitstellung von Zählzeilen sogar die gleiche kann mit Hbase Shell erreicht werden ...
Mapreduce Way:
$ hbase org.apache.hadoop.hbase.mapreduce.RowCounter
Usage: RowCounter [options]
<tablename> [
--starttime=[start]
--endtime=[end]
[--range=[startKey],[endKey]]
[<column1> <column2>...]
]
Hbase Shell Way: Durch hbase Shell als auch Sie diese
durch tun können
$ count 'hbase table'
Ich hoffe, Jetzt erhalten Sie eine Antwort :-)
Bitte lesen Sie meine Antwort zu verstehen, die Notwendigkeit der Batchclient –
pls fühlen sich frei als k Fragen, wenn Sie haben ... –
wenn Sie mit der Antwort sind pls flag-up "accept-as-owner" .Thanks –