Impala简介

  • 用于处理存储在Hadoop集群中的大量数据的大规模并行处理SQL查询引擎,高性能低延迟

  • 底层基于C++编写

  • 优点

    • 执行数据处理时,不需要对存储在Hadoop上的数据进行转换或移动

    • 可以用传统的SQL处理数据

    • 使用Rarquet文件格式

  • 缺点

    • 不提供对序列化和反序列化的支持

    • 只能读取文本文件,不能读取自定义二进制文件

架构

Impala daemon

  • 即所谓的impalad,是运行在集群每个节点的守护进程,主要负责读写数据,接受其他接口的查询请求,并于其他节点分布式并行工作,将本节点的查询结果返回给中心协调点。

Impala Statestore

  • 用于检查集群中impalad节点的健康情况,保证不将请求放给不可用的节点上

  • 对集群各节点进行信息同步,相当于监控功能

Impala Catalog Serveice

  • 即catalogd,当impala集群中执行的SQL语句会引起元数据变化时,catalog服务会将这些变化推送到其他的impalad进程节点上

  • 一般将statestore和catalog放在一个节点上

查询处理接口

  • Impala-shell:命令行

  • Hue:浏览器

  • ODBC/JDBC驱动程序

语句命令

数据库命令

-- 创建数据库
creat database if not exisis my_database;
​
-- 选择数据库
use my_database;
​
-- 删除数据库
drop database is exsis my_database;
​

表命令

  • 基础增删改查

-- 新建表
create table if not exists my_database.my_table(col1 type2, col2 type2);
create table my_table_copy as
selet * from my_table;
​
-- 插入数据(追加)
insert into my_table value (v1, v2);
​
-- 插入数据(覆盖)
insert overwrite my_table value (v1, v2);
​
-- 获取数据
select col1, col2 from my_table;
​
-- 查看描述
describe my_table;
​
-- 改名表
alter table my_table rename to table_new;
​
-- 插入列
alter table my_table add columns (col3 type3, col4 type4);
​
-- 删除列,column可加可不加
alter table my_table drop [column] col4;
​
-- 更改column的数据类型和名称
alter table my_table change col3 col4 type4;
​
-- 删除表, drop为删除整个表,truncate为删除表数据
drop table if exists table_copy;
truncate table if exists table_copy;
​
-- 显示数据库中的所有表
use my_database;
show tables;
​
-- 创建视图,视图和临时表类似,但是他不是物理表而是虚拟表,主要是方便查询,同时可以不改变原表的结构
create view if not exists table_view as select col1, col2 from my_table;
​
-- 更改视图
alter view table_view as select col1, col3 from my_table;
​
-- 删除视图
drop view table_view;
  • 其他基础操作

-- 排序,asc为升序,desc为降序,nulls first表示将空值放到表头,nulls last表示将空值放到表尾
select * from my_table order by col1 [asc|desc] [nulls first|nulls last]
​
-- 聚合,按照col1聚合,func()为一些逻辑函数,如count(), sum(), max()等,下句表示按照col聚合,求相同col1对应的col2的和。同时过滤group by得到的结果不能用where,此时一般会用having,作用与where类似
select col1, sum(col2) from my_table group by col1;
select col1, sum(col2) from my_table group by col2 where col2>0;
​
-- 限制取前n行,一般limit可以和offset连用,表示取偏移后的n行,第一句表示取(1-n),第二句表示取(m-m+n-1)
select * from my_table limit n;
select * from my_table limit n offset m;
​
-- 连接两个命令
select * from my_table limt 1
union
select * from table_copy limit 4 offset 4;
​
-- with as,类似将查询结果作为一个临时表
with t1 as (select * from customers where age>25),
t2 as (select * from employee where age>25)
(select * from t1 union select * from t2);
​
-- 根据某几列去重
select distinct * from my_table;

Impala入门操作相关推荐

  1. 2021年大数据HBase(十):Apache Phoenix的基本入门操作

    全网最详细的大数据HBase文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 系列历史文章 前言 Apache Phoenix的基本入门操作 一.Pho ...

  2. v2视频服务器退出系统怎么启动,V2视频会议系统入门操作手册.doc

    V2视频会议系统入门操作手册 登陆方式 打开IE(浏览器),用户访问服务器地址00,进入V2 Conference系统主界面. 首次登录视频会议服务器,系统会自动提示客户端下载安装客户端插件,用户也可 ...

  3. arcgis 地图_ArcGIS超详细入门操作:ArcGIS矢量化地图详细步骤

    今天给大家带来的干货是[ArcGIS超详细入门操作:ArcGIS矢量化地图详细步骤],欢迎大家收藏查阅! 在桌面上新建一个文件夹,打开ArcCatalog, "文件"--" ...

  4. metainfo可以设置说明_Vs Code安装说明及入门操作

    因为要开发小程序,所以小新用到了微信开发者工具,但是发现前端开发的真正大佬是 Visual Studio Code. 下面小新就来教你微软的这款工具怎么安装. 一:下载这个软件 下载方法1. 首先,我 ...

  5. HBase入门: 简介、特点、优缺点、数据结构、系统架构、入门操作、适用场景、注意事项与遇到的坑

    原文地址 https://www.cnblogs.com/Little-Li/p/7878219.html https://yq.aliyun.com/articles/54410 https://b ...

  6. elasticsearch7.8.0入门操作

    一.基本概念 Cluster:集群, 由一组 es 实例组成 Node:节点, 单个 es 运行的实例 Index:索引, 类似于数据表 Type 类型ES7以后固定值是 _doc Document: ...

  7. 帆软报表入门操作(一)

    帆软报表入门操作(一) 1.企业传统报表:报表格式比较固定,sql代码量繁杂.2.帆软报表(优势):数据管理.数据分析.数据展示.适用各种业务应用 设计器使用: 准备工作: 1.新建数据连接(连接外置 ...

  8. Badboy入门操作手册

    Badboy入门操作手册 下载地址:http://www.badboy.com.au/ 版本:Version 2.2.5 1.安装及卸载 安装:解压,按照安装向导,安装即可. 启动:双击badboy. ...

  9. 【Cadence Virtuoso】IC617 入门操作 (MOS特性分析)

    Cadence Virtuoso IC617 入门操作篇 前言 一.软件操作 (1)创建自己的Library (2)创建Library下的 Cell 二.电路搭建 (1)调出器件 三.电路仿真 (1) ...

最新文章

  1. python中完善decorator
  2. SAP UI5 应用开发教程之二十七 - SAP UI5 应用的单元测试工具 QUnit 介绍
  3. java商品新增怎麽弄_添加新商品时如何初始化计数器 - java
  4. 【python】字符串的操作与方法、元组的定义与操作
  5. Python办公自动化(七)|自动更新不对称表格
  6. 图像椒盐噪声和高斯噪声
  7. Java从入门到入土
  8. VBA 学习笔记 Word样式处理
  9. SSM框架整合思想及步骤
  10. 中级网络工程师是什么?主要是考什么,有什么用?
  11. laravel响应速度慢
  12. 艺术范,技术芯——读达芬奇有感
  13. 400+条实用C/C++框架、库、工具整理 ,你能想到的都在这里了
  14. 计算机色温调整,电脑色温如何调节
  15. 放弃去FBI的机会,在美做了2年数据研究工作,如今回国创业,他把全球最顶级的智能预测算法带到了国内
  16. 注册CSDN七年才发布第一篇博文是什么感觉
  17. Android 触摸OnTouchListener没有响应问题解决
  18. 【Redis】Redis的五大数据类型
  19. 计算机中 8位无符号数,8位无符号数乘法运算HDL设计实例 - 全文
  20. 瞄准前沿科技,美团是不务正业还是另有所图?

热门文章

  1. java aws_适用于Java的AWS开发工具包-开发人员-AWS文档.PDF
  2. 费用报销与对公付款电子化管理系统:iBox+RPA已形成自动化闭环
  3. Linux系统之热插拨事件uevent
  4. PHASEN: A Phase-and-Harmonics-Aware Speech Enhancement Network
  5. 21.12.19初识C语言
  6. IAC工具的五个分类
  7. 淘宝/天猫按分类搜索淘宝直播接口 API 返回值说明
  8. Android手机投屏后没有声音,乐播投屏电视没有声音怎么办_乐播投屏电视没有声音手机有声音解决办法_3DM手游...
  9. 如何适配处理iphoneX底部的横条 ?(转)
  10. 用HTML+js实现求圆的面积和周长