【离线数仓CDH版本】即席查询工具(Presto、Druid、Kylin)、CDH数仓、Impala查询








1.即席查询
一、Presto
大数据量、秒级、多数据源的查询引擎【支持各种数据源work的内存级查询】
由coordinator和多个work构成,work对应不同数据源Catalog
特点:基于内存运算,无需map reduce,但连查表可能会产生大量临时数据
安装:server、client、可视化client
优化:列式、Snappy压缩、SQL优化
二、Druid
适用于:按照时间作为索引分片、单表的实时查询与存储系统【按时间和不同维度对各种指标聚合,segment存】
包含:时间列、维度列、指标列(数据存储时便可以对数据聚合后的结果)
原理:segment块是实际存储形式,按时间分片,避免全表查询,提高效率
使用:安装、启动、Flume采集和Kafka传输、调用日志生成脚本,web页面SQL查询数据
三、Kylin
分析查询巨大的hive表数据,元数据存储在HBASE中【按01构建cube,可视化查询与图表展示】
web界面添加数据源、选择维度表、度量字段构建cube,选择构建的时间区间(编写每日构建的脚本)
cube构建原理:cubeid+纬度01值构成HBASE的K,通过逐行/层快速构建
cube构建优化:衍生维度中间表实现主向非主的映射、使用聚合组、RowKey的优化
BI可视化工具集成:测试Zepplin访问kylin输入SQL语句查看各种图表,JDBC、ODBC、RestAPI
2.CDH数仓
一、数仓之Cloudera Manager
自动化安装、管理、监控的工具,包括agent、client、server、repository
步骤:购买服务器、安全组、host、SSH免密登录、selinux、集群同步脚本
安装:jdk、MySQL、改配置、启动systemctl start、查看日志和web界面
二、数仓之CDH
本地parcel库、组件安装、角色分布
数据库连接测试
三、数仓搭建环境准备
flink、sqoop、yarn、hue
配置:Hadoop的lzo压缩、yarn的内存
四、行为数仓搭建
行为日志生成:日志生成jar包上传,并编写调用日志生成脚本
日志采集flume从生成的日志文件中导入kafka:flume编写ETL和LogType类型区分拦截器
日志消费flume从kafka的不同topic导入hdfs的不同位置
ODS层:创建库和启动日志表,编写指定日期数据加载脚本(加载至数据库)
DWD、DWS、ADS层创建表、编写数据加载脚本
五、业务数仓搭建
调方法生成(订单、商品、用户)数据、编写sqoop定时导入脚本
DWD层对商品分类进行维度退化,编写数据导入脚本
编写用户行为宽表:下单次数、支付金额等
Hue中创建Oozie任务实现GMV全流程调度,脚本传至hdfs,通过hue查看
六、数仓之即席查询数仓搭建
Impala服务添加、角色分配、启动
基于hive但无需写入磁盘和转换MR
基于Hue查询与hive查询速度进行比较
七、安全之Kerberos安全认证
秘钥分发中心KDC记录授权信息
节点配置、生成Kerberos数据库
启动、创建管理员实例、使用kinit验证
密码验证/秘钥文件验证
配置CDH、kafka、hive、flume
八、安全之Sentry权限管理
给组的不同角色赋予读写权限
界面与命令行实战,配置Hive/Impala、hue
九、集群测试
性能测试-DFSIO及TeraSort测试
集群资源管理:可视化界面、动态静态(CPU)资源池
十、节点的添加和删除
退役、停服、移除Parcels
3.Impala
一、基本概念
对hdfs和HBASE的高性能、低延迟查询工具,impalad负责查询与执行
特点:基于内存、Data Locality调度、完全依赖于hive、只能读取文本文件
原理及架构:catalog获取元数据信息、StateStore与impalad持续通信获取状态信息
二、安装及常用命令
手动/CDH安装、添加服务、角色分配、配置、启动
入门:建库、建表、查看、导入数据
命令:连接主机、查询数据并导出、内部、外部shell、去格式化输出、刷新元数据
三、DDL数据定义
建库、查询desc、删除
建表、管理表、外部表、分区表partitioned by
导入数据、查询数据、增加分区、查看分区、删除分区
四、DML数据操作
数据导入与导出并进行查询(txt文本文件)
五、函数
创建自定义函数extends UDF并打包,调用创建命令
使用select和查看show
六、存储与压缩
文件格式:Parquet、SequenceFile(只支持查询,不支持插入)
压缩编码方式:Snappy, GZIP
【离线数仓CDH版本】即席查询工具(Presto、Druid、Kylin)、CDH数仓、Impala查询的更多相关文章
- 分享自研实现的多数据源(支持同DB不同表、跨DB表、内存数据、外部系统数据等)分页查询工具类实现原理及使用
思考: 提起分页查询,想必任何一个开发人员(不论是新手还是老手)都能快速编码实现,实现原理再简单不过,无非就是写一条SELECT查询的SQL语句,ORDER BY分页排序的字段, 再结合limit ( ...
- CentOS7安装CDH 第十一章:离线升级CDH版本
相关文章链接 CentOS7安装CDH 第一章:CentOS7系统安装 CentOS7安装CDH 第二章:CentOS7各个软件安装和启动 CentOS7安装CDH 第三章:CDH中的问题和解决方法 ...
- 【Hadoop离线基础总结】CDH版本Hadoop 伪分布式环境搭建
CDH版本Hadoop 伪分布式环境搭建 服务规划 步骤 第一步:上传压缩包并解压 cd /export/softwares/ tar -zxvf hadoop-2.6.0-cdh5.14.0.tar ...
- 【Hadoop离线基础总结】CDH版本的zookeeper环境搭建
CDH版本的zookeeper环境搭建 下载 下载地址 http://archive.cloudera.com/cdh5/cdh/5/ 修改配置文件 创建ZooKeeper数据存放目录 mkdir - ...
- Hadoop数据分析平台项目实战(基于CDH版本集群部署与安装)
1.Hadoop的主要应用场景: a.数据分析平台. b.推荐系统. c.业务系统的底层存储系统. d.业务监控系统. 2.开发环境:Linux集群(Centos64位)+Window开发模式(win ...
- 强大的数据库查询工具Database.NET 9.4.5018.42
原文:强大的数据库查询工具Database.NET 9.4.5018.42 强大的数据库查询工具Database.NET 9.4.5018.42 两个工具的下载地址,两个软件都是绿色免安装的,直接双击 ...
- Python3实现火车票查询工具
Python 实现火车票查询工具 一. 实验介绍 通过python3实现一个简单的命令行版本的火车票查询工具,用实际中的例子会更感兴趣,不管怎么样,既练习了又可以自己使用. 1. 知识点: Pyth ...
- #数据技术选型#即席查询Shib+Presto,集群任务调度HUE+Oozie
郑昀 创建于2014/10/30 最后更新于2014/10/31 一)选型:Shib+Presto 应用场景:即席查询(Ad-hoc Query) 1.1.即席查询的目标 使用者是产品/运营/销售 ...
- PHP mysql查询工具
PHP基于PDO的 mysql 查询工具 单页面实现,将页面放在任意目录即可. 访问用户 admin 密码 password 代码很简单,主要为了在没有phpMyAdmin时方便执行SQL. 效果如下 ...
- 10.18 nslookup:域名查询工具
功能说明 nslookup命令是常用的域名解析查询工具. 如果系统没有nslookup命令,则需要安装下面的软件包: yum-y inatall bind-otil9 语法格式 nslookup ...
随机推荐
- 使用Prometheus和Grafana监控nacos集群
官方文档:https://nacos.io/zh-cn/docs/monitor-guide.html 按照部署文档搭建好Nacos集群 配置application.properties文件,暴露me ...
- Kibana:在Kibana中定制Regional Map
- 了解Elasticsearch写入磁盘的数据
文章转载自: https://mp.weixin.qq.com/s?__biz=MzI2NDY1MTA3OQ==&mid=2247484171&idx=1&sn=985a71a ...
- 开启tcp_timestamps和tcp_tw_recycle造成NAT转发连接不上
文章转载自:https://segmentfault.com/a/1190000022264813
- 企业信息化建PLM系统、ERP系统、MES系统是单个逐步建设好,还是同时上比较好?
企业信息化建PLM系统.ERP系统.MES系统肯定是单个逐步建设好啊,不仅仅是各个系统单独建设,系统内各模块的实施也应该先后逐步推进,切不可想着一口吃个大胖子,一股脑的全上,求全求快是很多系统实施失败 ...
- spring cron表达式源码分析
spring cron表达式源码分析 在springboot中,我们一般是通过如下的做法添加一个定时任务 上面的new CronTrigger("0 * * * * *")中的参数 ...
- @input含义和用法
@input :一般用于监听事件只要输入的值变化了就会触发input 示例: <div id="div1"> <input type="text&quo ...
- WinDbg Preview安装以及符号表配置
1.安装WinDbgPreview 在Microsoft Store直接搜索windbg就可以下载. 2.配置符号服务器 2.1 符号 符号是方便调试程序的文件,通常是pdb文件.一个模块(可执行程序 ...
- 斗鱼 H5 直播原理解析,它是如何省了 80% 的 CDN 流量?
斗鱼直播相信大家都听说过,打开斗鱼官网就可以直接在浏览器中观看直播.那么斗鱼是如何实现浏览器视频直播的呢?本篇文章就来解析斗鱼是如何实现直播的,以及它是如何节省 80% 的 CDN 流量,要知道视频直 ...
- 绝杀processOn,这款UML画图神器,阿里字节都用疯了,你还不知道?
大家好,我是陶朱公Boy,又和大家见面了. 前言 在文章开始前,想先问大家一个问题,大家平时在项目需求评审完后,是直接开始编码了呢?还是会先写详细设计文档,后再开始进行编码开发? ☆现实 这个时候可能 ...