Hallitut taulukot ovat Hiven omistamia taulukoita, joissa Hive hallitsee ja valvoo taulukoiden tietojen koko elinkaarta. Ulkoiset taulut ovat tauluja, joissa Hivellä on löyhä kytkentä tietoihin. Replication Manager replikoi ulkoiset taulut onnistuneesti kohdeklusteriin. Hallitut taulut muutetaan ulkoisiksi tauluiksi replikoinnin jälkeen.
Hive tukee ulkoisten taulujen replikointia datan kanssa kohdeklusteriin ja se säilyttää kaikki ulkoisten taulujen ominaisuudet. Datatiedostojen käyttöoikeudet ja omistusoikeus säilyvät, jotta asianomaiset ulkoiset prosessit voivat jatkaa kirjoittamista niihin myös vikatilanteen jälkeen.
Kirjoitukset ulkoisiin tauluihin suoritetaan Hiven SQL-komennoilla, ja datatiedostoja voivat käyttää ja hallita myös Hiven ulkopuoliset prosessit. Jos ulkoinen taulukko tai osio poistetaan, vain taulukkoon tai osioon liittyvät metatiedot poistetaan, mutta taustalla olevat datatiedostot säilyvät ehjinä. Tyypillinen esimerkki ulkoisesta taulusta on analyyttisten kyselyjen suorittaminen HBasen tai Druidin omistamille tiedoille Hiven avulla, jolloin HBase tai Druid kirjoittaa datatiedostot ja Hive lukee ne analytiikkaa varten.
Kun luot aikataulun Hive-replikointikäytännölle, aseta taajuus niin, että muutokset replikoidaan riittävän usein, jotta vältät liian suuret kopiot.
Hive-replikoinnin aikana saatat törmätä seuraaviin käyttötapauksiin:
Replication Managerin päivityksen käyttötapaus Normaalissa skenaariossa, jos sinulla on ollut ulkoisia taulukoita, jotka replikoitiin hallittuina tauluina, päivitysprosessin jälkeen sinun on pudotettava nuo taulukot kohdepisteestä ja asetettava peruskansio. Seuraavassa instanssissa ne replikoidaan ulkoisina taulukoina. Ulkoisten taulujen tietojen sijainnin ristiriidat useiden lähdeklusterien replikoinnissa samaan kohdeklusteriin Jotta voidaan käsitellä ulkoisten taulujen tietojen sijainnin ristiriitoja useiden lähdeklusterien replikoinnissa samaan kohdeklusteriin, Replication Manager määrittää kullekin lähdeklusterille yksilöllisen perushakemiston, jonka alle kopioidaan ulkoisten taulujen tiedot vastaavasta lähdeklusterista. Jos esimerkiksi ulkoisten taulujen sijainti lähdeklusterissa on /ext/hbase_data, sijainti kohdeklusterissa replikoinnin jälkeen on <base_dir>/ext/hbase_data. Voit seurata ulkoisten taulujen uutta sijaintia DESCRIBE TABLE -komennolla. Replikointiristiriidat HDFS:n ja Hiven ulkoisen taulukon sijainnin välillä Kun käytät Hiven replikointikäytäntöä ulkoiselle taululle, tiedot tallennetaan kohdehakemistoon tiettyyn sijaintiin. Seuraavaksi, kun suoritat HDFS-replikointikäytännön, joka yrittää kopioida tietoja samaan ulkoisen taulukon sijaintiin, Replication Manager varmistaa, että HDFS ei ohita Hive-tietoja. Kun esimerkiksi suoritat Hive-replikointikäytännön ulkoiselle taululle, käytäntö luo kohdehakemiston /tmp/db1/ext1. Kun suoritat HDFS-replikointikäytäntöä, käytäntö ei saa ohittaa tietoja replikoimalla hakemistoon /tmp/db1/ext1. Ristiriidat ulkoisten taulujen replikointiprosessin aikana Ristiriitoja ilmenee, kun kahdella Hive-replikointikäytännöllä DB1:ssä ja DB2:ssa (joko samasta lähdeklusterista tai eri lähdeklustereista) on ulkoisia tauluja, jotka osoittavat samaan datasijaintiin (esimerkiksi /abc) ja jotka replikoidaan samaan kohdeklusteriin. Tällaisten ristiriitojen välttämiseksi sinun on määritettävä eri polut ulkoisen taulun perushakemiston määritykselle molemmille käytännöille. Aseta esimerkiksi /db1 DB1:lle ja /db2 DB2:lle. Näin varmistetaan, että ulkoisen taulukon kohdetietojen sijainti on eri molemmissa tietokannoissa. Esimerkiksi /db1/abcd ja /db2/abcd.