Apache Hive és un paquet de Data Warehousing construït sobre Hadoop i que s'utilitza per a l'anàlisi de dades. Hive està dirigit a usuaris que estiguin còmodes amb SQL. És similar a SQL i s’anomena HiveQL, que s’utilitza per gestionar i consultar dades estructurades. Apache Hive s’utilitza per abstractitzar la complexitat d’Hadoop. Aquest llenguatge també permet als programadors tradicionals de mapes / reduccions connectar els seus mapers i reductors personalitzats. La característica popular d’Hive és que no cal aprendre Java.
Hive, un marc d’emmagatzematge de dates a escala peta-byte de codi obert basat en Hadoop, va ser desenvolupat per l’equip d’infraestructures de dades de Facebook. Hive també és una de les tecnologies que s’utilitzen per fer front als requisits de Facebook. Hive és molt popular entre tots els usuaris interns de Facebook i s’utilitza per executar milers de feines al clúster amb centenars d’usuaris per a una gran varietat d’aplicacions. El clúster Hive-Hadoop de Facebook emmagatzema més de 2PB de dades en brut i carrega regularment 15 TB de dades diàriament.
Vegem algunes de les seves funcions que el fan popular i fàcil d'utilitzar:
- Permet als programadors connectar mapers i reductors personalitzats.
- Té infraestructura de Data Warehouse.
- Proporciona eines per permetre ETL de dades fàcils.
- Defineix un llenguatge de consulta semblant a SQL anomenat QL.
Cas d’ús d’Apache Hive - Facebook:
Abans d’implementar Hive, Facebook es va enfrontar a molts desafiaments, ja que la mida de les dades que es generaven va augmentar o, més aviat, va explotar, cosa que fa que sigui molt difícil gestionar-los. Els RDBMS tradicionals no podien suportar la pressió i, com a resultat, Facebook buscava millors opcions. Per resoldre aquest problema imminent, Facebook va intentar inicialment utilitzar Hadoop MapReduce, però amb dificultats de programació i coneixements obligatoris en SQL, el van convertir en una solució poc pràctica. Hive els va permetre superar els reptes als quals s’enfrontaven.
Amb Hive, ara poden realitzar el següent:
- Les taules es poden porcionar i recollir
- Flexibilitat i evolució de l’esquema
- Hi ha disponibles controladors JDBC / ODBC
- Les taules de ruscs es poden definir directament a l’HDFS
- Extensible: tipus, formats, funcions i scripts
Cas d'ús del rusc a l'assistència sanitària:
On utilitzar Hive?
què és indexof a javascript
Apache Hive es pot utilitzar als llocs següents:
- Mineria de dades
- Processament de registres
- Indexació de documents
- Intel·ligència empresarial orientada al client
- Modelització predictiva
- Proves d’hipòtesis
Arquitectura del rusc:
Hive consta dels components principals següents:
- Metastore: per emmagatzemar les metadades.
- JDBC / ODBC: compilador de consultes i motor d'execució per convertir consultes SQL a una seqüència de MapReduce.
- SerDe i ObjectInspectors: per a formats i tipus de dades.
- UDF / UDAF: per a funcions definides per l'usuari.
- Clients: semblant a la línia d’ordres de MySQL i a una interfície d’usuari web.
Components de Hive:
Metastore:
Metastore emmagatzema la informació sobre les taules, les particions i les columnes de les taules. Hi ha 3 maneres d'emmagatzemar a Metastore: Embedded Metastore, Local Metastore i Remote Metastore. Majoritàriament, Remote Metastore s’utilitzarà en mode de producció.
Limitacions del rusc:
java converteix binari en decimal
Hive té les limitacions següents i no es pot utilitzar en aquestes circumstàncies:
- No dissenyat per al processament de transaccions en línia.
- Proporciona una latència acceptable per a la navegació interactiva de dades.
- No ofereix consultes en temps real ni actualitzacions de nivell de fila.
- La latència de les consultes de Hive és generalment molt alta.
Tens alguna pregunta? Esmenteu-los a la secció de comentaris i us respondrem.
Articles Relacionats: