Apache Hive е пакет за съхранение на данни, изграден върху Hadoop и се използва за анализ на данни. Hive е насочен към потребители, които се чувстват добре с SQL. Той е подобен на SQL и се нарича HiveQL, използван за управление и заявки за структурирани данни. Apache Hive се използва за абстрахиране на сложността на Hadoop. Този език също позволява на традиционните програмисти за картографиране / редуциране да включат своите персонализирани картографи и редуктори. Популярната характеристика на Hive е, че няма нужда да се учи Java.
Hive, рамка за складиране на дата с петабайтови мащаби с отворен код, базирана на Hadoop, е разработена от екипа за инфраструктура за данни във Facebook. Hive също е една от технологиите, които се използват за справяне с изискванията на Facebook. Hive е много популярен сред всички потребители вътрешно във Facebook и се използва за изпълнение на хиляди работни места в клъстера със стотици потребители за голямо разнообразие от приложения. Клъстерът Hive-Hadoop във Facebook съхранява повече от 2PB необработени данни и редовно зарежда 15 TB данни ежедневно.
Нека разгледаме някои от неговите функции, които го правят популярен и удобен за потребителя:
- Позволява на програмистите да включат персонализирани картографи и редуктори.
- Има инфраструктура на хранилището за данни.
- Предоставя инструменти за активиране на лесен ETL за данни.
- Определя подобен на SQL език за заявки, наречен QL.
Калъф за използване на кошер Apache - Facebook:
Преди да внедри Hive, Facebook се сблъска с много предизвикателства, тъй като размерът на генерираните данни се увеличава или по-скоро експлодира, което затруднява боравенето с тях. Традиционните RDBMS не можеха да се справят с натиска и в резултат на това Facebook търсеше по-добри възможности. За да реши този предстоящ проблем, Facebook първоначално се опита да използва Hadoop MapReduce, но с трудности при програмиране и задължителни познания в SQL го направи непрактично решение. Кошерът им позволи да преодолеят предизвикателствата, пред които бяха изправени.
С Hive те вече могат да извършват следното:
- Масите могат да бъдат разделени и групирани
- Гъвкавост и еволюция на схемата
- Налични са JDBC / ODBC драйвери
- Таблиците на кошерите могат да бъдат дефинирани директно в HDFS
- Разширяема - типове, формати, функции и скриптове
Случай за използване на кошер в здравеопазването:
Къде да използвам кошер?
Apache Hive може да се използва на следните места:
- Извличане на данни
- Обработка на дневници
- Индексиране на документи
- Клиент, изправен пред бизнес разузнаване
- Предсказуемо моделиране
- Тестване на хипотези
Архитектура на кошера:
пример за статичен блок в java
Кошерът се състои от следните основни компоненти:
- Metastore - за съхраняване на метаданните.
- JDBC / ODBC - Компилатор на заявки и Изпълнителна машина за преобразуване на SQL заявки в последователност от MapReduce.
- SerDe и ObjectInspectors - За формати и типове данни.
- UDF / UDAF - за потребителски функции.
- Клиенти - Подобно на MySQL командния ред и уеб потребителския интерфейс.
Компоненти на кошера:
Metastore:
Metastore съхранява информацията за таблиците, дяловете, колоните в таблиците. Има 3 начина за съхранение в Metastore: Embedded Metastore, Local Metastore и Remote Metastore. Най-вече Remote Metastore ще се използва в производствен режим.
Ограничения на кошера:
Кошерът има следните ограничения и не може да се използва при такива обстоятелства:
- Не е предназначен за онлайн обработка на транзакции.
- Осигурява приемлива латентност за интерактивно сърфиране на данни.
- Не предлага заявки в реално време и актуализации на ниво ред.
- Латентността на заявките за Hive обикновено е много висока.
Имате въпрос към нас? Споменете ги в раздела за коментари и ние ще се свържем с вас.
Подобни публикации: