В тази публикация в блога нека обсъдим най-добрите команди на Hive с примери. Тези Hive команди са много важни за създаване на основата за .
Edureka 2019 Tech Ръководство за кариера излезе! Най-горещите работни роли, прецизни учебни пътеки, перспективи за индустрията и други в ръководството. Изтегли сега.Какво е кошер?
Apache Hive е система за съхранение на данни, която е изградена за работа на Hadoop. Използва се за заявки и управление на големи масиви от данни, намиращи се в разпределено хранилище. Преди да стане проект с отворен код на Apache Hadoop, Hive е създаден във Facebook. Той осигурява механизъм за проектиране на структура върху данните в Hadoop и за заявки към тези данни, използвайки SQL-подобен език, наречен HiveQL (HQL).
Hive се използва, тъй като таблиците в Hive са подобни на таблици в релационна база данни. Ако сте запознати с SQL, това е торта. Много потребители могат едновременно да заявяват данни, използвайки Hive-QL.
Какво е HQL?
Hive дефинира прост език, подобен на SQL, за заявки и управление на големи масиви от данни, наречен Hive-QL (HQL). Той е лесен за използване, ако сте запознати с SQL езика. Hive позволява на програмистите, които са запознати с езика, да напишат персонализирана рамка MapReduce, за да извършат по-сложен анализ.
Употреба на кошер:
1. Разпределеното хранилище на Apache Hive.
2. Hive предоставя инструменти за лесно извличане / трансформиране / натоварване на данни (ETL)
3. Предоставя структурата на различни формати с данни.
4. Използвайки Hive, можем да получим достъп до файлове, съхранявани в Hadoop Distributed File System (HDFS се използва за заявки и управление на големи масиви от данни, пребиваващи в) или в други системи за съхранение на данни като Apache HBase.
Ограничения на кошера:
& bull Hive не е предназначен за онлайн обработка на транзакции (OLTP), той се използва само за онлайн аналитична обработка.
& bull Hive поддържа презаписване или задържане на данни, но не и актуализации и изтриване.
& bull В Hive, подзаявките не се поддържат.
Защо Hive се използва въпреки свинята?
По-долу са причините, поради които Hive се използва въпреки наличността на Pig:
- Hive-QL е декларативен езиков ред SQL, PigLatin е език за поток на данни.
- Pig: език за поток от данни и среда за изследване на много големи набори от данни.
- Hive: разпределено хранилище за данни.
Компоненти на кошера:
Metastore:
Hive съхранява схемата на таблиците Hive в Hive Metastore. Metastore се използва за съхранение на цялата информация за таблиците и дяловете, които се намират в склада. По подразбиране мета-хранилището се изпълнява в същия процес като услугата Hive и по подразбиране Мета-хранилището е DerBy база данни.
SerDe:
Сериализатор, Deserializer дава инструкции за кошера за това как да се обработи запис.
Команди за кошери:
Език за дефиниране на данни (DDL)
DDL изразите се използват за изграждане и модифициране на таблици и други обекти в базата данни.
DDL команда | Функция |
СЪЗДАЙТЕ | Използва се за създаване на таблица или база данни |
ШОУ | Използва се за показване на база данни, таблица, свойства и т.н. |
ВЪЗРАСТ | Използва се за извършване на промени в съществуващата таблица |
ОПИСВАМ | Той описва колоните на таблицата |
ПРЕКРАТЕТЕ | Използва се за трайно съкращаване и изтриване на редовете на таблицата |
ИЗТРИЙ | Изтрива данните от таблицата, но може да бъде възстановена |
Отидете до Hive shell, като дадете командата sudo hive и въведете командата ‘Създавам база данни име> ’ за да създадете новата база данни в кошера.
За да изброите базите данни в хранилището на Hive, въведете командата ‘ показват бази данни ’.
Базата данни се създава в местоположение по подразбиране на склада на Hive. В Cloudera, Hive база данни съхранява в / потребител / кошер / склад.
Командата за използване на базата данни е ИЗПОЛЗВАЙТЕ
Копирайте входящите данни в HDFS от локално, като използвате командата copy from Local.
Когато създаваме таблица в кошер, тя се създава в местоположението по подразбиране на склада на кошера. - “/ потребител / кошер / склад”, след създаване на таблицата можем да преместим данните от HDFS в таблица кошер.
Следващата команда създава таблица с местоположението на „/user/hive/warehouse/retail.db“
Забележка : retail.db е базата данни, създадена в склада на Hive.
Описвам предоставя информация за схемата на таблицата.
Език за управление на данни (DML)
DML изразите се използват за извличане, съхраняване, модифициране, изтриване, вмъкване и актуализиране на данни в базата данни.
Пример:
LOAD, INSERT Statements.
Синтаксис :
Заредете данни в пътя в таблица [име на таблица]
Операцията Load се използва за преместване на данните в съответната таблица на Hive. Ако ключовата дума местни е указано, тогава в командата за зареждане ще се даде път на локалната файлова система. Ако ключовата дума local не е посочена, трябва да използваме HDFS пътя на файла.
програма за сортиране на обединяване в java
Ето няколко примера за командата LOAD data LOCAL
След зареждане на данните в таблицата Hive можем да приложим изявления за манипулиране на данни или обобщени функции за извличане на данните.
Пример за преброяване на броя на записите:
Използва се обобщена функция за преброяване, отчита общия брой на записите в таблица.
Таблица „създаване на външна“:
The създайте външни ключовата дума се използва за създаване на таблица и осигурява местоположение, където ще се създава таблицата, така че Hive да не използва местоположение по подразбиране за тази таблица. An ВЪНШЕН таблицата сочи към всяко HDFS местоположение за неговото съхранение, а не по подразбиране.
Вмъкване на команда:
The вмъкване команда се използва за зареждане на таблицата с данни Hive. Вмъкванията могат да бъдат направени в таблица или дял.
& bull INSERT OVERWRITE се използва за презаписване на съществуващите данни в таблицата или дяла.
& bull INSERT INTO се използва за добавяне на данни към съществуващи данни в таблица. (Забележка: INSERT INTO синтаксис е работа от версия 0.8)
Пример за командата ‘Partitioned By’ и ‘Clustered By’:
‘Разделен от ‘Се използва за разделяне на таблицата на дяла и може да бъде разделена на групи с помощта на‘ Клъстериран от ‘Команда.
Когато вмъкваме грешки при хвърляне на данни Hive, режимът на динамичен дял е строг и динамичният дял не е активиран (от Джеф в уебсайт на dresshead ). Затова трябва да зададем следните параметри в обвивката на Hive.
задайте hive.exec.dynamic.partition = true
За да активирате динамични дялове, по подразбиране е false
задайте hive.exec.dynamic.partition.mode = nonstrict
Разделянето се извършва от категорията и може да бъде разделено на групи, като се използва командата „Clustered By“.
Изразът „Drop Table“ изтрива данните и метаданните за таблица. В случай на външни таблици се изтриват само метаданните.
Операторът „Drop Table“ изтрива данните и метаданните за таблица. В случай на външни таблици се изтриват само метаданните.
Заредете данните локално в пътя „aru.txt“ в таблица име на таблица и след това проверяваме таблица на служител1 с помощта на командата Select * от името на таблицата
За да преброите броя на записите в таблицата, като използвате Избор броя(*) от txnrecords
Агрегиране:
Изберете брой (DISTINCT категория) от името на таблицата
Тази команда ще отчита различната категория на таблицата „cate“. Тук има 3 различни категории.
Да предположим, че има друга таблица, където f1 е името на полето на категорията.
Групиране:
Командната група се използва за групиране на набора от резултати от една или повече колони.
Изберете категория, сума (сума) от txt записи по групи по категории
Той изчислява сумата от същата категория.
Резултатът една таблица се съхранява в друга таблица.
Създайте таблица newtablename като select * от oldtablename
Присъединете се към командата:
Тук в името е създадена още една таблица „Поща“
Присъединете се към операцията :
Операцията за присъединяване се извършва за комбиниране на полета от две таблици чрез използване на общи стойности за всяка.
Ляво външно присъединяване :
Резултатът от ляво външно съединение (или просто ляво съединение) за таблици A и B винаги съдържа всички записи на „лявата“ таблица (A), дори ако условието за присъединяване не намери съвпадащ запис в „дясната“ таблица (Б).
Правилно външно присъединяване :
Дясно външно съединение (или дясно съединение) наподобява ляво външно съединение, с изключение на обратната обработка на таблиците. Всеки ред от „дясната“ таблица (B) ще се появи в обединената таблица поне веднъж.
Пълно присъединяване :
Обединената таблица ще съдържа всички записи от двете таблици и ще попълни NULL за липсващи съвпадения от двете страни.
заместване и претоварване в java
След като приключим с кошера, можем да използваме командата quit за излизане от обвивката на кошера.
Hive е само част от големия пъзел, наречен Big Data and Hadoop. Hadoop е много повече от просто кошер. Кликнете по-долу, за да видите какви други умения трябва да овладеете в Hadoop.
Имате въпрос към нас? Моля, споменете го в раздела за коментари и ние ще се свържем с вас.
Подобни публикации:
7 начина, по които обучението за големи данни може да промени вашата организация