Ich habe einige Probleme mit HBase REST API durchgelaufen.HBase REST API - Datenproblem, Browserproblem, scheint nicht zu funktionieren
Lassen Sie mich zuerst einen kleinen Hintergrund geben: Ich baute eine HBase-Tabelle in meinem Unternehmen CDH-Cluster. Der Zeilenschlüssel ist "|" . Spaltenfamilie ist "d" und der Spaltenqualifizierer ist das Datum, das ebenfalls eine Zeichenfolge ist (z. B. 2012-01-27). Um anderen interessierten Personen im Unternehmen den Zugriff auf die Tabellendaten zu ermöglichen, habe ich eine Django-API erstellt, die sehr gut funktioniert. Jemand in meinem Team hat vorgeschlagen, dass Hbase mit einer integrierten API ausgestattet ist, und ich könnte sie direkt verwenden, um auf die Daten zuzugreifen. Ich lese die Online-HBase-Dokumentation und in der Tat sieht es so aus, als gäbe es schon etwas von der Stange, das mit HBase geliefert wird. Aber ich war nicht erfolgreich damit und deshalb suche ich hier nach Hilfe. Hier
ist eine Liste von Fragen, die ich durch bin mit:
Chrome Browser Im Chrome-Browser, die ich in der folgenden URL eingegeben: http: // < IP-Adresse>: 20550/Namespace: Tabellenname/# 00003 | 313001098/d Ich erwartete, dass die Daten für den angegebenen Zeilenschlüssel im Browser angezeigt werden, aber stattdessen wird eine HTML-Datei heruntergeladen, die nur Daten für einen Spaltenqualifizierer enthält Informationen darüber haben, zu welchem Spaltenqualifizierer die Daten gehören.
Curl Ich habe das gleiche mit curl Befehl in Unix-Shell. curl -i http: // < IP-Adresse>: 20550/Namespace: Tabellenname /% 2300003% 7C313001098/d Bitte beachten Sie, dass% 23 eine Kodierung für # und% 7C eine Kodierung für | ist (Rohr). Der obige Befehl gibt mir nur die Daten für eine Spalte Qualifier.
Ich doppelt überprüft meine Daten mit HBase Shell den folgenden Befehl:
get 'namespace:tablename', '#00003|313001098'
und ich die Daten aus mehreren Spalten Qualifier erhalten. Daher kann ich bestätigen, dass mir entweder etwas fehlt oder die integrierte HBase-API nicht dafür gebaut ist, die Dinge zu tun, die ich versuche zu tun.
Vielen Dank im Voraus.