HBase Tabel maken met voorbeeld

In HBase kunnen we op twee manieren tabelbewerkingen maken

  • Shell-opdracht
  • JAVA-API

We zullen beide leren gebruiken om tabellen te maken.

HBase maakt een tabel met Java API

In deze sectie gaan we enkele van de bewerkingen uitvoeren met behulp van Java-codering via Java API.

Via Java API kunnen we tabellen maken in HBase en ook gegevens in tabellen laden met behulp van Java-codering.

  • Verbinding maken met HBase via Java API
  • Eclipse gebruiken voor Java-codering, foutopsporing en testen

Verbinding tot stand brengen via Java API:

De volgende stappen begeleiden ons bij het ontwikkelen van Java-code om HBase te verbinden via Java API.

Stap 1) In deze stap gaan we een Java-project in eclipse maken voor een HBase-verbinding.

Creatie van nieuwe projectnaam 'HbaseConnection' in eclipse.

Voor het opzetten van een Java-gerelateerd project of het maken van een programma:

Als we de bovenstaande schermafbeelding bekijken.

  1. Geef de projectnaam op in dit vak. In ons geval hebben we de projectnaam 'HbaseConnection'
  2. Vink dit vakje aan om de standaardlocatie op te slaan. In deze /home/hduser/work/HbaseConnection is het pad
  3. Vink hier het vakje voor Java-omgeving aan. In deze JavaSE-1.7 zit de Java-editie
  4. Kies uw optie waar u het bestand wilt opslaan. In ons geval hebben we optie tweede geselecteerd 'Maak een aparte map voor bronnen en klassenbestanden'
  5. Klik op de knop Voltooien.
  • Wanneer u op de knop Voltooien klikt, wordt het 'HbaseConnection'-project in eclipse gemaakt
  • Het zal direct naar de eclipse-startpagina komen nadat u op de knop Voltooien hebt geklikt.

Stap 2) Volg op de Eclipse-startpagina de volgende stappen |__+_|

Van bovenaf screenshot

  1. Klik met de rechtermuisknop op een project
  2. Selecteer bouwpad
  3. Selecteer build-pad configureren

Nadat u op Build-pad configureren hebt geklikt, wordt een ander venster geopend zoals weergegeven in onderstaande schermafbeelding

In deze stap zullen we relevante HBase-potten toevoegen aan het Java-project, zoals weergegeven in de schermafbeelding.

  • Belangrijke potten die moeten worden toegevoegd hbase-0.94.8.jar, hadoop-core-1.1.2.jar
  • Klik op de knop Voltooien

  1. Kom naar bibliotheken
  2. Druk op optie - Externe potten toevoegen
  3. Selecteer de benodigde belangrijke potten
  4. Druk op de knop Voltooien om deze bestanden toe te voegen aan 'src' van het Java-project onder bibliotheken

Nadat u deze potten hebt toegevoegd, wordt deze weergegeven onder de locatie van het project 'src'. Alle Jar-bestanden die onder het project vallen, zijn nu klaar voor gebruik met het Hadoop-ecosysteem.

Stap 3) In deze stap zou met behulp van HBaseConnection.java de HBase-verbinding tot stand worden gebracht via Java Coding

  • Voer in het hoofdmenu van Eclipse een java-programma uit zoals hieronder wordt weergegeven:

    Uitvoeren -> Uitvoeren als -> Java-toepassing

  1. Selecteer Uitvoeren
  2. Selecteer Uitvoeren als Java-toepassing
  • Deze code brengt een verbinding tot stand met HBase via Java API
  • Na het uitvoeren van deze code wordt de 'on2vhf'-tabel gemaakt in HBase met twee kolomfamilies genaamd 'onderwijs' en 'projecten'. Op dit moment wordt het lege schema alleen in HBase gemaakt.

Uit de bovenstaande schermafbeelding voeren we de volgende functies uit.

  1. Met HTableDescriptor kunnen we een 'on2vhf'-tabel maken in HBase
  2. Met behulp van de addFamily-methode gaan we 'onderwijs' en 'projecten' als kolomnamen toevoegen aan de tabel 'on2vhf'.

De onderstaande codering gaat naar:

  • Breng een verbinding tot stand met HBase en
  • Maak een 'on2vhf'-tabel met twee kolommen

Code geplaatst onder HBaseConnection_Java-document

Right click on project -> Select Build Path -> Configure build path

Dit is vereiste code die u in HBaseConnection.java moet plaatsen en een java-programma moet uitvoeren

Nadat dit programma is uitgevoerd, gaat het een verbinding tot stand brengen met HBase en op zijn beurt zal het een tabel met kolomnamen maken.

  • De tabelnaam is 'on2vhf'
  • Kolomnamen zijn 'onderwijs' en 'projecten'

Stap 4) We kunnen controleren of de 'on2vhf'-tabel is gemaakt met twee kolommen in HBase of niet door de HBase-shellmodus te gebruiken met de opdracht 'list'.

Het 'list'-commando geeft informatie over alle tabellen die in HBase zijn gemaakt.

In dit scherm gaan we doen:

  • Codecontrole in HBase-shell door de opdracht 'list' uit te voeren.
  • Als we de opdracht 'list' uitvoeren, wordt de tabel weergegeven die in HBase is gemaakt, zoals hieronder. In ons geval kunnen we zien dat tabel 'on2vhf' is gemaakt

HBase Tabel maken met Shell

Syntaxis om een ​​tabel te maken is |__+_|

Voorbeeld:-

// Place this code inside Hbase connection import java.io.IOException; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.HBaseConfiguration; import org.apache.hadoop.hbase.HColumnDescriptor; import org.apache.hadoop.hbase.HTableDescriptor; Import org.apache.hadoop.hbase.client.HBaseAdmin; public class HBaseConnection { public static void main(String[] args) throws IOException { HBaseConfigurationhc = new HBaseConfiguration(new Configuration()); HTableDescriptorht = new HTableDescriptor('on2vhf'); ht.addFamily( new HColumnDescriptor('education')); ht.addFamily( new HColumnDescriptor('projects')); System.out.println( 'connecting' ); HBaseAdminhba = new HBaseAdmin( hc ); System.out.println( 'Creating Table' ); hba.createTable( ht ); System.out.println('Done......'); } } 

In het bovenstaande voorbeeld wordt uitgelegd hoe u een tabel in HBase maakt met de opgegeven naam volgens het woordenboek of specificaties per kolomfamilie. Daarnaast kunnen we er ook enkele attributen van het tabelbereik in doorgeven. |__+_|

Samenvatting:

HBase is een kolomgeoriënteerde NoSQL-database voor het opslaan van een grote hoeveelheid gegevens bovenop het Hadoop-ecosysteem. Het omgaan met tabellen in HBase is zeer cruciaal, omdat alle belangrijke functionaliteiten, zoals gegevensbewerkingen, gegevensverbeteringen en gegevensmodellering, alleen via tabellen in HBase kunnen worden uitgevoerd. Tabellen hebben de volgende functies 1) Tabellen maken met kolomnamen en rijen 2) Waarden in tabellen invoegen 3) Waarden uit tabellen ophalen