Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Computação
Elastic Cloud Server
Bare Metal Server
Auto Scaling
Image Management Service
Dedicated Host
FunctionGraph
Cloud Phone Host
Huawei Cloud EulerOS
Redes
Virtual Private Cloud
Elastic IP
Elastic Load Balance
NAT Gateway
Direct Connect
Virtual Private Network
VPC Endpoint
Cloud Connect
Enterprise Router
Enterprise Switch
Global Accelerator
Gerenciamento e governança
Cloud Eye
Identity and Access Management
Cloud Trace Service
Resource Formation Service
Tag Management Service
Log Tank Service
Config
Resource Access Manager
Simple Message Notification
Application Performance Management
Application Operations Management
Organizations
Optimization Advisor
Cloud Operations Center
Resource Governance Center
Migração
Server Migration Service
Object Storage Migration Service
Cloud Data Migration
Migration Center
Cloud Ecosystem
KooGallery
Partner Center
User Support
My Account
Billing Center
Cost Center
Resource Center
Enterprise Management
Service Tickets
HUAWEI CLOUD (International) FAQs
ICP Filing
Support Plans
My Credentials
Customer Operation Capabilities
Partner Support Plans
Professional Services
Análises
MapReduce Service
Data Lake Insight
CloudTable Service
Cloud Search Service
Data Lake Visualization
Data Ingestion Service
GaussDB(DWS)
DataArts Studio
IoT
IoT Device Access
Outros
Product Pricing Details
System Permissions
Console Quick Start
Common FAQs
Instructions for Associating with a HUAWEI CLOUD Partner
Message Center
Segurança e conformidade
Security Technologies and Applications
Web Application Firewall
Host Security Service
Cloud Firewall
SecMaster
Anti-DDoS Service
Data Encryption Workshop
Database Security Service
Cloud Bastion Host
Data Security Center
Cloud Certificate Manager
Blockchain
Blockchain Service
Serviços de mídia
Media Processing Center
Video On Demand
Live
SparkRTC
Armazenamento
Object Storage Service
Elastic Volume Service
Cloud Backup and Recovery
Cloud Server Backup Service
Storage Disaster Recovery Service
Scalable File Service
Volume Backup Service
Data Express Service
Dedicated Distributed Storage Service
Containers
Cloud Container Engine
SoftWare Repository for Container
Application Service Mesh
Ubiquitous Cloud Native Service
Cloud Container Instance
Bancos de dados
Relational Database Service
Document Database Service
Data Admin Service
Data Replication Service
GeminiDB
GaussDB
Distributed Database Middleware
Database and Application Migration UGO
TaurusDB
Middleware
Distributed Cache Service
API Gateway
Distributed Message Service for Kafka
Distributed Message Service for RabbitMQ
Distributed Message Service for RocketMQ
Cloud Service Engine
EventGrid
Dedicated Cloud
Dedicated Computing Cluster
Aplicações de negócios
ROMA Connect
Message & SMS
Domain Name Service
Edge Data Center Management
Meeting
AI
Face Recognition Service
Graph Engine Service
Content Moderation
Image Recognition
Data Lake Factory
Optical Character Recognition
ModelArts
ImageSearch
Conversational Bot Service
Speech Interaction Service
Huawei HiLens
Developer Tools
SDK Developer Guide
API Request Signing Guide
Terraform
Koo Command Line Interface
Distribuição de conteúdo e computação de borda
Content Delivery Network
Intelligent EdgeFabric
CloudPond
Soluções
SAP Cloud
High Performance Computing
Serviços para desenvolvedore
ServiceStage
CodeArts
CodeArts PerfTest
CodeArts Req
CodeArts Pipeline
CodeArts Build
CodeArts Deploy
CodeArts Artifact
CodeArts TestPlan
CodeArts Check
Cloud Application Engine
MacroVerse aPaaS
KooPhone
KooDrive
Nesta página

Princípios básicos do Hive

Atualizado em 2023-05-19 GMT+08:00

O Hive é uma infraestrutura de armazém de dados construída sobre o Hadoop. Ele fornece uma série de ferramentas que podem ser usadas para extrair, transformar e carregar dados (ETL). Hive é um mecanismo que pode armazenar, consultar e analisar dados em massa armazenados no Hadoop. Hive define linguagem de consulta simples como SQL, que é conhecido como HiveQL. Ele permite que um usuário familiarizado com SQL consulte dados. A computação de dados do Hive depende do MapReduce, Spark e Tez.

O novo motor de execução Tez é usado para substituir o MapReduce original, melhorando significativamente o desempenho. O Tez pode converter vários jobs dependentes em um job, portanto, apenas quando a gravação do HDFS for necessária e menos nós de trânsito forem necessários, melhorando significativamente o desempenho dos jobs de DAG.

Hive fornece as seguintes funções:

  • Analisa dados estruturados massivos e resume os resultados da análise.
  • Permite que jobs complexas do MapReduce sejam compilados em linguagens SQL.
  • Suporta formatos flexíveis de armazenamento de dados, incluindo notação de objeto JavaScript (JSON), valores separados por vírgulas (CSV), TextFile, RCFile, SequenceFile e ORC (Optimized Row Columnar).

Estrutura do sistema do Hive:

  • Interface de usuário: três interfaces de usuário estão disponíveis, ou seja, CLI, Cliente e WUI. A CLI é a interface de usuário mais usada. Uma transcrição do Hive é iniciada quando a CLI é iniciada. Cliente refere-se a um cliente Hive, e um usuário cliente se conecta ao Servidor Hive. Ao entrar no modo cliente, você precisa especificar o nó em que o Servidor Hive reside e iniciar o Servidor Hive nesse nó. A IU da Web é usada para acessar o Hive através de um navegador. O MRS pode acessar o Hive somente no modo de cliente. Para obter detalhes, consulte Uso do Hive a partir rascunho. Para obter detalhes sobre como desenvolver aplicação do Hive, consulte Desenvolvimento de aplicação do Hive.
  • Armazenamento de metadados: o Hive armazena metadados em bancos de dados, por exemplo, MySQL e Derby. Metadados no Hive incluem um nome de tabela, colunas de tabela e partições e suas propriedades, propriedades de tabela (indicando se uma tabela é uma tabela externa) e o diretório onde os dados da tabela são armazenados.

Estrutura do Hive

O Hive é um processo de serviço de instância única que fornece serviços traduzindo o HQL em jobs de MapReduce relacionados ou operações de HDFS. Figura 1 mostra como o Hive está conectado a outros componentes.

Figura 1 Estrutura do Hive
Tabela 1 Descrição do módulo

Módulo

Descrição

HiveServer

Vários HiveServers podem ser implantados em um cluster para compartilhar cargas. O HiveServer fornece serviços de banco de dados do Hive externamente, converte instruções HQL em tarefas do YARN ou operações do HDFS para concluir a extração, conversão e análise de dados.

MetaStore

  • Vários MetaStores podem ser implantados em um cluster para compartilhar cargas. O MetaStore fornece serviços de metadados do Hive, além de ler, gravar, manter e modificar a estrutura e as propriedades das tabelas do Hive.
  • MetaStore fornece APIs Thrift para HiveServer, Spark, WebHCat e outros clientes de MetaStore para acessar e operar metadados.

WebHCat

Vários WebHCats podem ser implantados em um cluster para compartilhar cargas. O WebHCat fornece APIs REST e executa os comandos do Hive por meio das APIs REST para enviar jobs do MapReduce.

Cliente do Hive

O cliente do Hive inclui a interface de linha de comando (CLI) homem-máquina Beeline, unidade JDBC para aplicações JDBC, driver Python para aplicações Python e arquivos JAR HCatalog para MapReduce.

Cluster do ZooKeeper

Como um nó temporário, o ZooKeeper registra a lista de endereços IP de cada instância do HiveServer. O driver do cliente se conecta a ZooKeeper para obter a lista e seleciona instâncias de HiveServer correspondentes com base no mecanismo de roteamento.

Cluster do HDFS/HBase

O cluster do HDFS armazena os dados da tabela do Hive.

Cluster do MapReduce/YARN

Fornece serviços de computação distribuída. A maioria das operações de dados do Hive depende do MapReduce. A principal função do HiveServer é traduzir instruções HQL em jobs do MapReduce para processar dados massivos.

HCatalog é construído no Hive Metastore e incorpora a capacidade DDL do Hive. HCatalog também é uma tabela baseada em Hadoop e camada de gerenciamento de armazenamento que permite leitura/gravação de dados conveniente em tabelas de HDFS usando diferentes ferramentas de processamento de dados, como MapReduce e Pig. Além disso, o HCatalog também fornece APIs de leitura/gravação para essas ferramentas e usa uma CLI do Hive para publicar comandos para definir dados e consultar metadados. Depois de encapsular esses comandos, o WebHCat Server pode fornecer APIs RESTful, conforme mostrado em Figura 2.

Figura 2 Arquitetura lógica de WebHCat

Princípios

O Hive funciona como um armazém de dados baseado na arquitetura HDFS e MapReduce e converte instruções HQL em jobs do MapReduce ou operações HDFS. Para obter detalhes sobre o Hive e o HQL, consulte Manual de linguagem HiveQL.

Figura 3 mostra a estrutura do Hive.

  • Metastore: lê, grava e atualiza metadados como tabelas, colunas e partições. Sua camada inferior são os bancos de dados relacionais.
  • Driver: gerencia o ciclo de vida da execução da HiveQL e participa de toda a execução do job do Hive.
  • Compiler: traduz instruções HQL em uma série de jobs interdependentes de Map ou Reduce.
  • Optimizer: é classificado em otimizador lógico e otimizador físico para otimizar planos de execução HQL e jobs de MapReduce, respectivamente.
  • Executor: executa jobs Map ou Reduce com base em dependências de job.
  • ThriftServer funciona como os servidores de JDBC, fornece APIs Thrift e integra-se com Hive e outras aplicações.
  • Clients: inclui as APIs da WebUI e JDBC e fornece APIs para acesso do usuário.
Figura 3 Estrutura do Hive

Usamos cookies para aprimorar nosso site e sua experiência. Ao continuar a navegar em nosso site, você aceita nossa política de cookies. Saiba mais

Feedback

Feedback

Feedback

0/500

Conteúdo selecionado

Envie o conteúdo selecionado com o feedback