Video: Google Cloud Next Amsterdam '17 : "Introduction to Google's Severless Analytics Platform" 2024
HBase is geschreven in Java, een elegante taal voor het bouwen van gedistribueerde technologieën zoals HBase, maar eerlijk gezegd - niet iedereen die voordeel wil halen uit innovaties van HBase is een Java-ontwikkelaar. Dat is de reden waarom er een rijk HBase-client-ecosysteem bestaat, waarvan het enige doel is om de zware Java-lifting voor u te doen en u te laten concentreren op het maken van HBase voor u.
Rich is meestal een goede eigenschap, maar wanneer dat adjectief de lijn overschrijdt naar overweldigend, begin je een probleem te hebben. Hier is een overzicht van het clientecosysteem in diagramvorm. Merk op dat het diagram vergelijkbaar is met het HBase-architectuurdiagram, met een plofbeeld van de clientbox.
De volgende lijsten vatten uw opties samen, te beginnen met de Apache Hadoop-clients, meer specifiek die HBase-clients die deel uitmaken van het Apache Hadoop-ecosysteem, samen met de technologieën gebundeld met HBase die zijn ontworpen om u te helpen bouwen HBase-clients:
-
Hive: Hive is een ander topniveau-Apache-project. Hive biedt zijn eigen mogelijkheden voor datawarehousing bovenop Apache Hadoop. Het wordt geleverd met een opslaghandler voor HBase en biedt ook de HiveQL-querytaal, die behoorlijk lijkt op SQL. Met Hive kunt u al het ondervragen van HBase doen dat u wilt met behulp van HiveQL en - hier is de kicker - is er geen Java-codering vereist wanneer u HBase met Hive gebruikt.
-
MapReduce: MapReduce maakt deel uit van het Apache Hadoop-framework. MapReduce's roem tot roem is dat het een programmeermodel is voor het gelijktijdig verwerken van gegevens op een gedistribueerd cluster. In het Hadoop-universum is HBase de naam van de Hadoop-database (zoals de naam al aangeeft). "HBase maakt gebruik van het Hadoop Distributed File System (HDFS) en kan ook worden gebruikt door MapReduce-taken. HBase-tabellen kunnen een bron of een sink zijn voor parallelle verwerking van MapReduce-taken.
-
Varken: Varken is een andere technologie die is meegeleverd met Apache Hadoop en, zoals bij Hive, kan Pig HBase gebruiken. Pig neemt je een level hoger door je een programmeertaal op hoger niveau te geven, genaamd Pig Latin, die de zware MapReduce-lifting voor je kan doen.
-
Multi-Language Thrift System: Thrift biedt een taalneutrale benadering voor het bouwen van HBase-clients. De Interface Definition Language (IDL) van Thrift, ontwikkeld door Facebook, biedt u de mogelijkheid om datatypen en service-interfaces te definiëren, zodat twee verschillende systemen die in verschillende talen zijn geschreven met elkaar kunnen communiceren. Nadat de IDL is geschreven, genereert Thrift de code die nodig is voor communicatie.
-
Java-client: Als u toevallig een Java-ontwikkelaar bent en de ins en outs van Java-pakketten begrijpt, moet u het pakket bekijken dat bij de HBase-distributie wordt geleverd.
-
REST-systeem: Waarschijnlijk de snelste manier om toegang tot een HBase-tabel te krijgen, is gebruik te maken van de REST-interface. REST, wat staat voor Re presentational S tate T ransfer, is de technologie die ervoor zorgt dat uw webbrowser werkt. De meeste mensen nemen tegenwoordig webbrowsers als vanzelfsprekend, dus wat zou natuurlijker kunnen zijn voor iedereen dan alleen je favoriete browser te gebruiken als toegangspoort tot een HBase-cluster?
Net als bij de Thrift-aanpak wordt de REST-gatewayserver geleverd met HBase en moet u er ten minste één starten om browserinteractie met uw tabellen mogelijk te maken. Kies hiervoor een poortnummer voor uw gateway-server en typ de volgende opdracht:
$ INSTALL_DIR / hbase-0. 94. 7 / bin / hbase rest start _p 7777
-
JRuby (HBase Shell): De snelste manier om uw handen uit de mouwen te steken en te leren hoe u HBase kunt gebruiken, is via de HBase-shell. Zoals je waarschijnlijk al hebt gezien in het praktijkvoorbeeld van de HBase-shell in de vorige sectie, is de shell een krachtig hulpmiddel voor interactie met HBase. De HBase-shell is gebaseerd op JRuby's Interactive Ruby Shell of IRB in het kort.
Houd er echter rekening mee dat u ook scripts kunt schrijven en deze in batchmodus kunt uitvoeren.