HBase Luo taulukko Java API & Shell esimerkki
โก รlykรคs yhteenveto
HBase tallentaa tietoja taulukoihin, ja voit luoda ja kรคsitellรค nรคitรค taulukoita kahdella tavalla: Java API ja HTableDescripttai ja HBaseAdmin, tai suoraan HBase-komennossa create-komennolla.

Kuinka luoda taulukko HBaseen kanssa Java API
HBasessa taulukoita voidaan luoda kahdella tavalla: Java API:n ja HBase-komentotulkin kautta. Tรคmรค osio kรคsittelee Java API, jonka avulla sovellus voi luoda taulukoita ja ladata tietoja ohjelmallisesti osana suurempaa tyรถtรค.
Kautta Java API, voimme luoda taulukoita HBaseen ja myรถs ladata tietoja taulukoihin kรคyttรคmรคllรค Java koodaus. Kaksi asiaa, jotka tรคssรค asetettiin, ovat:
- Yhteyden luominen HBaseen kautta Java API.
- Kรคyttรคminen Eclipse varten Java koodausta, virheenkorjausta ja testausta.
Seuraavassa on vaiheet taulukoiden luomiseksi HBase kautta Java API.
Vaihe 1) Luo a Java Projekti sisรครคn Eclipse
Tรคssรค vaiheessa aiomme luoda a Java projekti vuonna Eclipse HBase-yhteydelle nimeltรค โHbaseConnectionโ.
Uusi Java Alla oleva projektivalintaikkuna nรคyttรครค, kuinka โHbaseConnectionโ-projektia ollaan mรครคrittรคmรคssรค:
Jos tarkastelemme yllรค olevaa kuvakaappausta:
- Anna projektin nimi tรคhรคn ruutuun. Meidรคn tapauksessamme projektin nimi on โHbaseConnectionโ.
- Valitse tรคmรค ruutu, jos haluat kรคyttรครค oletussijaintia tallennuspaikaksi. Tรคssรค polku on /home/hduser/work/HbaseConnection.
- Valitse valintaruutu Java ympรคristรถ tรครคllรค. Tรคssรค tapauksessa JavaSE-1.7 on Java painos.
- Valitse vaihtoehto, mihin haluat tallentaa tiedoston. Meidรคn tapauksessamme valitsimme toisen vaihtoehdon, โLuo โโerillinen kansio lรคhde- ja luokkatiedostoilleโ.
- Napsauta Valmis-painiketta, joka luo โHbaseConnectionโ-projektin Eclipse ja avaa Eclipse etusivulle.
Vaihe 2) Mรครคritรค rakennuspolku kohdassa Eclipse
On Eclipse kotisivulla, avaa rakennuspolun mรครคritys seuraavasti:
Right click on project -> Select Build Path -> Configure build path
Alla olevassa kuvakaappauksessa nรคkyy hiiren kakkospainikkeella avattava valikko, jota kรคytetรครคn rakennuspolun mรครคritysten avaamiseen:
Yllรค olevasta kuvakaappauksesta:
- Napsauta projektia hiiren kakkospainikkeella.
- Valitse Rakennuspolku.
- Valitse Mรครคritรค koontipolku.
Kun olet napsauttanut Configure Build Path -painiketta, avautuu uusi ikkuna, kuten alla olevassa kuvakaappauksessa nรคkyy. Kirjastot-vรคlilehdellรค HBase- ja Hadoop JAR -tiedostot lisรคtรครคn projektiin:
Tรคssรค vaiheessa lisรครคmme asiaankuuluvat HBase JAR -tiedostot Java projekti, kuten kuvakaappauksessa nรคkyy.
- Tรคrkeitรค lisรคttรคviรค JAR-tiedostoja: hbase-0.94.8.jar ja hadoop-core-1.1.2.jar.
- Tule Kirjastot-vรคlilehdelle.
- Paina vaihtoehtoa Lisรครค ulkoisia JAR-tiedostoja.
- Valitse tarvittavat tรคrkeรคt JAR-tiedostot.
- Lisรครค nรคmรค tiedostot sovelluksen "src"-kansioon painamalla Valmis-painiketta. Java projekti Kirjastot-osiossa.
Kun JAR-tiedostot on lisรคtty, ne nรคkyvรคt projektin โsrcโ-sijainnissa alla olevan kuvan mukaisesti:
Kaikki projektiin kuuluvat JAR-tiedostot ovat nyt kรคyttรถvalmiita Hadoop-ekosysteemissรค.
Vaihe 3) Muodosta HBase-yhteys
Tรคssรค vaiheessa HBase-yhteys muodostetaan HBaseConnection.java-tiedoston avulla Java koodaus.
On Eclipse ylรคvalikko, suorita Java ohjelma kuten alla nรคkyy: Suorita -> Suorita nimellรค -> Java Sovellus. Alla oleva valikko nรคyttรครค kรคynnistettรคvรคn ohjelman:
- Valitse Suorita.
- Valitse Suorita nimellรค Java Sovellus.
- Tรคmรค koodi muodostaa yhteyden HBaseen seuraavan kautta: Java API.
- Tรคmรคn koodin suorittamisen jรคlkeen HBase-jรคrjestelmรครคn luodaan โguru99โ-taulukko, jossa on kaksi sarakeperhettรค nimeltรค โeducationโ ja โprojectsโ. Tรคllรค hetkellรค HBase-jรคrjestelmรครคn luodaan vain tyhjรค skeema.
Alla oleva koodiote korostaa HTableaDescripttai ja addFamily-kutsuja, jotka rakentavat taulukkorakenteen:
Yllรค olevasta kuvakaappauksesta suoritamme seuraavat toiminnot:
- HTablen kรคyttรถDescripttai voimme luoda "guru99"-taulukon HBase:ssa.
- Kรคyttรคmรคllรค addFamily-metodia lisรครคmme โguru99โ-taulukkoon sarakeperheinรค โkoulutusโ ja โprojektitโ.
Alla oleva koodi muodostaa yhteyden HBaseen ja luo "guru99"-taulukon, jossa on kaksi sarakeperhettรค. Sijoita tรคmรค koodi HBaseConnection.java-dokumentin alle:
// 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("guru99"); 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......"); } }
Tรคmรค on pakollinen koodi, joka sinun on sijoitettava HBaseConnection.java-tiedostoon ennen komennon suorittamista Java ohjelma.
Suoritettuaan tรคmรคn ohjelman se muodostaa yhteyden HBaseen ja luo puolestaan โโtaulukon sarakenimineen.
- Taulukon nimi on โguru99โ.
- Sarakeperheet ovat โkoulutusโ ja โprojektitโ.
Vaihe 4) Tarkista HBaseen luotu taulukko
Voimme tarkistaa, onko "guru99"-taulukko luotu kahdella sarakeperheellรค HBase-kรคyttรถliittymรคssรค, kรคyttรคmรคllรค HBase-komentotulkkitilaa "list"-komennolla. "List"-komento antaa tietoja kaikista HBase-kรคyttรถliittymรคssรค luoduista taulukoista.
HBase-komennon list-komennon suorittaminen vahvistaa uuden taulukon, kuten alla on esitetty:
- Code tarkistamalla HBase-kuoren suorittamalla komennon "list".
- Jos suoritamme komennon โlistโ, se nรคyttรครค HBase-ohjelmassa luodun taulukon. Meidรคn tapauksessamme voimme nรคhdรค, ettรค โguru99โ-taulukko on luotu.
HBase Luo taulukko Shellillรค
Lisรคksi Java API:n avulla voit luoda taulukon suoraan HBase-komennosta, mikรค on nopein tapa mรครคrittรครค taulukko nopeita testejรค varten. Taulukon luomisen syntaksi HBase-komennon avulla on seuraava:
Syntax: create <tablename>, <columnfamilyname>
Esimerkki: -
hbase(main):001:0> create 'education' ,'guru99' 0 rows(s) in 0.312 seconds =>Hbase::Table โ education
Yllรค oleva esimerkki selittรครค, kuinka HBase-jรคrjestelmรคssรค luodaan taulukko, jonka nimi annetaan kunkin sarakeperheen mรครคritysten mukaisesti. Tรคmรคn lisรคksi voimme myรถs vรคlittรครค siihen joitakin taulukon laajuusattribuutteja.
create 'guru99', {NAME=>'Edu', VERSIONS=>213423443}
Tรคssรค lohko {NAME=>'Edu', VERSIONS=>โฆ} asettaa sarakeperheen nimeltรค โEduโ ja sen sรคilyttรคmien soluversioiden mรครคrรคn. Suuri luku on vain havainnollistava; kรคytรคnnรถssรค VERSIONS on pieni arvo, kuten 3 tai 5.
HBase-taulukoiden listaaminen, kuvailu ja varmentaminen
Taulukon luominen on vasta ensimmรคinen osa taulukoiden kรคsittelystรค HBase-ohjelmassa. Kun โguru99โ-taulukko on olemassa, voit tarkastella sitรค ja vahvistaa sen tilan muutamalla yleisellรค komennolla ennen tietojen lukemista, kirjoittamista tai muokkaamista. Voit suorittaa kaikki komennotโฆ HBase-kuori.
list-komento palauttaa jokaisen kรคyttรคjรคtaulukon HBase-jรคrjestelmรคssรค:
hbase> list
describe-komento nรคyttรครค taulukon rakenteen, mukaan lukien sen sarakeperheet ja sen, onko se tรคllรค hetkellรค kรคytรถssรค:
hbase> describe 'guru99'
Komento exists tarkistaa, onko taulukko olemassa, ja is_enabled raportoi, voiko taulukko hyvรคksyรค kirjoituksia:
hbase> exists 'guru99' hbase> is_enabled 'guru99'
Nรคitรค vain luku -tilassa olevia tarkistuksia voi turvallisesti suorittaa milloin tahansa. Ne ovat nopein tapa varmistaa, ettรค taulukko on luotu oikein, ja tarkistaa sen sarakeperheet ennen tietojen lataamista.
Muuta HBase-taulukkoa
HBase-taulukon rakennetta ei korjata luomisen jรคlkeen. alter-komento muuttaa taulukon sarakeperheitรค ja taulukon laajuusattribuutteja luomatta sitรค uudelleen. HBase-versiostasi riippuen sinun on ehkรค ensin poistettava taulukko kรคytรถstรค ja sitten suoritettava alter-komento ja otettava se uudelleen kรคyttรถรถn.
Uuden sarakeperheen lisรครคminen โguru99โ-taulukkoon:
hbase> alter 'guru99', {NAME => 'contact'}
Sarakeperheen sรคilyttรคmien versioiden mรครคrรคn mรครคrittรคminen:
hbase> alter 'guru99', NAME => 'education', VERSIONS => 5
Sarakeperheen poistaminen taulukosta:
hbase> alter 'guru99', {NAME => 'contact', METHOD => 'delete'}
Voit myรถs muuttaa taulukon laajuusmรครคritteitรค. Voit esimerkiksi merkitรค taulukon vain luku -tilaan tai asettaa aluetiedoston enimmรคiskooksi 128 Mt:n:
hbase> alter 'guru99', READONLY hbase> alter 'guru99', MAX_FILESIZE => '134217728'
Koska alter kirjoittaa skeeman uudelleen, suunnittele muutokset huolellisesti tuotantotaulukossa ja vahvista tulos jรคlkikรคteen describe-komennolla.
HBase-taulukoiden poistaminen kรคytรถstรค, ottaminen kรคyttรถรถn ja poistaminen
Taulukon poistamiseksi tai tiettyjen muutosten tekemiseksi HBase vaatii sen ensin poistamista kรคytรถstรค. Pois kรคytรถstรค poistaminen siirtรครค taulukon offline-tilaan, joten kukaan asiakas ei voi lukea tai kirjoittaa siihen, mikรค tekee rakenteellisista muutoksista turvallisia.
Poista taulukko kรคytรถstรค ja tarkista sen tila is_disabled-metodilla:
hbase> disable 'guru99' hbase> is_disabled 'guru99'
Ota taulukko uudelleen kรคyttรถรถn jatkaaksesi lukemista ja kirjoittamista:
hbase> enable 'guru99'
Taulukko on poistettava kรคytรถstรค ennen kuin se voidaan pudottaa.ping poistaa taulukon ja kaikki sen tiedot pysyvรคsti, joten kรคytรค sitรค varoen:
hbase> disable 'guru99' hbase> drop 'guru99'
Useiden taulukoiden poistamiseksi kerralla drop_all poistaa kaikki taulukot, joiden nimi vastaa sรครคnnรถllistรค lauseketta. Yhdessรค luonti, muuttaminen, poistaminen kรคytรถstรค, kรคyttรถรถnotto ja poistaminen kattavat koko taulukon elinkaaren. tietojen kรคsittely HBase-taulukoissa.






