Mikor használjunk vektorizálást kaptárban?
Pontszám: 4,3/5 ( 33 szavazat )Lekérdezés vektorizálása. A vektorizálás lehetővé teszi a Hive számára, hogy a sorok egyenkénti feldolgozása helyett egy kötegsort dolgozzon fel együtt . Minden köteg általában primitív típusok tömbje. A műveleteket a teljes oszlopvektoron hajtják végre, ami javítja az utasításfolyamatokat és a gyorsítótár használatát.
Mi az a szikravektorizálás?
A vektorizált lekérdezés-végrehajtás egy olyan szolgáltatás, amely nagymértékben csökkenti a CPU-használatot az olyan tipikus lekérdezési műveleteknél , mint a szkennelés, szűrők, összesítések és csatlakozások. A vektorizálás az ORC formátumhoz is megvalósul. A Spark a Spark 2.0 óta használja a Whole Stage Codegen-t és ezt a vektorizálást (Parquethez).
Hogyan optimalizálja a Hive-táblát?
- Táblázatok particionálása: A hive particionálás hatékony módszer a nagyobb táblák lekérdezési teljesítményének javítására. ...
- Denormalizálási adatok: ...
- Leképezés tömörítése/kimenet csökkentése:...
- Csatlakozás a térképhez:...
- Bemeneti formátum kiválasztása:...
- Párhuzamos végrehajtás:...
- Vektorizálás: ...
- Egységteszt:
Mi az indexelés a Hive-ban?
Bevezetés a Hive indexeibe. Az indexek egy táblában lévő rekordra mutató mutató vagy hivatkozás, mint a relációs adatbázisokban. Az indexelés egy viszonylag új funkció a Hive-ben. A Hive-ban az indextábla eltér a főtáblától. Az indexek megkönnyítik a lekérdezés végrehajtását vagy a keresési műveletek gyorsabbá tételét.
Mi az a költségalapú optimalizálás a Hive-ben?
A Hive Cost-Based Optimizer (CBO) a Hive lekérdezésfeldolgozó motorjának alapvető összetevője . Az Apache Calcite által működtetett CBO optimalizálja és kiszámítja a különböző tervek költségeit egy lekérdezéshez. ... A Calcite hatékony tervmetszővel rendelkezik, amely a legolcsóbb lekérdezési tervet tudja kiválasztani.
Kaptár vektorizálás | Hadoop interjú kérdése
Mikor használjam a rendezést a sorrend helyett a Kaptárban?
A Hive támogatja a SORT BY funkciót, amely szűkítőnként rendezi az adatokat . A különbség a "rendezés szerint" és a "rendezés szerint" között az, hogy az előbbi teljes sorrendet garantál a kimenetben, míg az utóbbi csak a sorok sorrendjét egy szűkítőn belül. Ha egynél több szűkítő van, a "rendezés szerint" részben rendezett végeredményt adhat.
Mi a különbség a Hive és a HBase között?
A Hive és a HBase két különböző Hadoop alapú technológia . A Hive egy SQL-szerű motor, amely MapReduce-feladatokat futtat, a HBase pedig egy NoSQL-kulcs/érték-adatbázis a Hadoop-on. De ahogy a Google is használható keresésre, a Facebook pedig közösségi hálózatokra, a Hive használható analitikus lekérdezésekre, míg a HBase valós idejű lekérdezésre.
Létrehozhatunk indexet a Hive-on?
Az Apache Hive index létrehozása azonban azt jelenti, hogy egy mutatót kell létrehozni a táblázat egy adott oszlopán. Tehát indexelés létrehozása a kaptárban. INDEX index_neve LÉTREHOZÁSA A TÁBLÁBAN: alaptábla_neve (oszlopnév, ...) ... AZ 'index.kezelő.osztály.neve' [HASZNÁLT ÚJRAÉPÍTÉSSEL] [IDXPROPERTIES (tulajdonság_neve=tulajdon_értéke, ...)]
Létrehozhatunk indexet a Hive külső tábláján?
Mindkét táblán elvégezheti az indexelést . A belső vagy a külső táblázat nem tesz különbséget a teljesítmény szempontjából. Mindkettőre építhet indexeket.
Támogatja a Hive az elsődleges kulcsot?
A Hive jelenleg lehetővé teszi a felhasználók számára a következő megszorítások deklarálását: PRIMARY KEY . IDEGEN KULCS .
Mire használható a Hive a legjobban?
A Hive lehetővé teszi a felhasználók számára, hogy SQL használatával petabájtnyi adatokat olvassanak, írjanak és kezeljenek . A Hive az Apache Hadoopra épül, amely egy nyílt forráskódú keretrendszer, amelyet nagy adatkészletek hatékony tárolására és feldolgozására használnak. Ennek eredményeként a Hive szorosan integrálva van a Hadooppal, és úgy tervezték, hogy gyorsan dolgozzon petabájtnyi adattal.
Hogyan optimalizálhatja a csatlakozást a Hive-ben?
- Partíció metszés.
- A metszés ellenőrzése válaszfalak és kanálok alapján.
- Vizsgálja meg a metszést, ha a lekérdezés mintavételen alapul.
- Bizonyos esetekben alkalmazza a Csoportosítást a térkép oldalán.
- Optimalizálja az Uniót úgy, hogy az egyesítést csak a térképoldalon lehessen végrehajtani.
- A felhasználói tippek alapján döntse el, hogy melyik táblát kívánja utoljára streamelni, többutas összekapcsolás esetén.
Mi a stream táblázat szerepe a Hive-ban?
A Hive-ben a lekérdezést a STREAMTABLE tipp használatával optimalizálhatjuk . SELECT lekérdezésben tudjuk megadni a JOIN segítségével. A JOIN leképezés/kicsinyítés szakaszában a táblázat adatai streamelhetők ezzel a tippel.
Hogyan használod a vektorizálást a szikrában?
- sql. ork. enabled=true – Engedélyezi az új ORC formátum számára a Spark adatforrástáblázatok és -fájlok olvasását/írását.
- sql. kaptár. convertMetastoreOrc=true – Engedélyezi az új ORC formátumot Hive-táblázatok olvasásához/írásához.
- sql. ork. char.
Mi a szikra vektorának két fő típusa?
Egy lokális vektor egész típusú és 0 alapú indexekkel és kettős típusú értékekkel rendelkezik, egyetlen gépen tárolva. A Spark kétféle helyi vektort támogat: sűrű és ritka . A sűrű vektor mögött egy kettős tömb áll, amely a belépési értékeit képviseli, míg a ritka vektort két párhuzamos tömb: indexek és értékek.
Mi az a lekérdezés vektorizálás?
A vektorizált lekérdezés-végrehajtás egy Hive-szolgáltatás, amely nagymértékben csökkenti a CPU-használatot az olyan tipikus lekérdezési műveleteknél, mint a vizsgálatok , szűrők, összesítések és csatlakozások. Egy szabványos lekérdezés-végrehajtási rendszer egyszerre egy sort dolgoz fel. ... A vektorizált lekérdezés-végrehajtás leegyszerűsíti a műveleteket egy 1024 soros blokk egyszerre történő feldolgozásával.
Létrehozhatunk indexet külső táblákon?
A külső táblázatokról. ... Kijelölheti, egyesítheti vagy rendezheti például a külső táblázat adatait. Nézeteket és szinonimákat is létrehozhat külső táblázatokhoz. A DML-műveletek (UPDATE, INSERT vagy DELETE) azonban nem lehetségesek, és nem hozhatók létre indexek külső táblákon .
Milyen típusú költségek társulnak az index létrehozásához a Hive-táblákon?
43. kérdés: Milyen típusú költségek társulnak a kaptártáblákon való index létrehozásához? Válasz: Az indexek helyet foglalnak el, és feldolgozási költséggel jár az indexet tartalmazó oszlop értékeinek elrendezése.
Hogyan egyesíthetek két táblázatot a Hive-ban?
- BELSŐ CSATLAKOZÁS – Válassza ki azokat a rekordokat, amelyek mindkét táblában megegyező értékekkel rendelkeznek.
- LEFT JOIN (LEFT OUTER JOIN) – Visszaadja a bal oldali tábla összes értékét, plusz a jobb oldali tábla illesztett értékeit, vagy NULL-t, ha nincs egyező összekapcsolási predikátum.
Mi a hátránya, ha túl sok partíciót használunk a kaptártáblákban?
Korlátozások: A nagyszámú partíció sok fájlt/könyvtárat hoz létre a HDFS-ben, ami többletterhelést jelent a NameNode számára a metaadatok karbantartása során . Optimalizálhat bizonyos lekérdezéseket a hol záradék alapján, de lassú választ okozhat a csoportosítási záradékon alapuló lekérdezéseknél.
Mik azok a nézetek, amelyek nincsenek a kaptárban?
A nézet lehetővé teszi a lekérdezések mentését és táblázatként való kezelését. Ez egy logikai konstrukció, mivel nem tárol adatokat, mint egy táblázat. Más szavakkal, a Hive jelenleg nem támogatja a materializált nézeteket .
Mikor használjam a Hive-t?
A Hive-t egy bizonyos időszak alatt gyűjtött adatok analitikus lekérdezésére kell használni – például trendek vagy webhelynaplók kiszámításához. A Hive-t nem szabad valós idejű lekérdezésre használni, mivel eltarthat egy ideig, amíg az eredményeket visszaküldik. Nagy mennyiségű adat van.
A HBase OLAP vagy OLTP?
Az Apache Hive-et főként kötegelt feldolgozásra, azaz OLAP -ra használják, de a HBase-t széles körben használják tranzakciós feldolgozásra, ahol a lekérdezés válaszideje nem túl interaktív, azaz OLTP. A Hive-tól eltérően a HBase műveletei valós időben futnak az adatbázison, ahelyett, hogy leképezési feladatokká alakulnának át.