在前面的文章Fayson介绍了《如何在Hadoop中处理小文件》,《如何使用Impala合并小文件》和《如何在Hadoop中处理小文件-续》。...config-env.sh:脚本主要用户配置集群信息(如:ImpalaDaemon访问地址、存储的表名、临时文件存放目录等) [root@cdh02 fsimage]# more config-env.sh...*.keytab:两个keytab文件为前面环境准备过程中导出的hive和hdfs用户 offline_fsimage.sh:脚本主要用于创建分析用户的数据表及生成分析需要的数据 ?...4 基于Hive库和表的统计分析 如下统计方式主要基于Hive库和表的统计分析,统计Hive中所有库存的数据文件数、Block数量、文件总大小(bytes)及平均文件大小(bytes)。...5 总结 如上SQL的统计分析可以看到有三个比较重要的统计指标file_nums、blockcounts和avg_filesize。
背景 Storm是TRC(腾讯实时计算)平台的核心组件。与Hadoop不同,storm之上没有像hive,pig之类的解放应用开发人员效率的工具。...用于描述用户业务逻辑的SQL脚本通过上层提供的不同接口以文本的方式传递给开源语法解析工具Antrl,生成AST(抽象语法树)。...TDBank系统,根据用户登录流水数据,统计这两款游戏 1) 每分钟的用户登录次数,每分钟输出一次。...2) 最近连续5分钟的用户登录次数,每分钟输出一次。 3) 统计当前小时开始到当前分钟的用户登录次数,每分钟输出一次。 4) 统计结果插入指定的关系型数据库MYSQL的结果表中。...l sql部分简要说明: 脚本使用了FROM_UNIXTIME(),COUNT(),UNIX_TIMESTAMP()函数是hive的函数,本系统兼容hive的官方的大部分函数,并沿用了hive自定义函数
这里的计算有两种: 一种是只有边界内的数据进行计算,这种好理解,比如统计每个用户最近五分钟内浏览的新闻数量,就可以取最近五分钟内的所有数据,然后根据每个用户分组,统计新闻的总数。...另一种是边界内数据与外部数据进行关联计算,比如:统计最近五分钟内浏览新闻的用户都是来自哪些地区,这种就需要将五分钟内浏览新闻的用户信息与 hive 中的地区维表进行关联,然后在进行相关计算。...所以我们统计每15秒钟通过红路灯的汽车数量,如第一个15秒为2辆,第二个15秒为3辆,第三个15秒为1辆 … tumbling-time-window (无重叠数据) 我们使用 Linux 中的 nc...,每个sensorId一个sliding窗口,窗口大小3条数据,窗口滑动为3条数据 //也就是说,每个路口分别统计,收到关于它的3条消息时统计在最近5条消息中,各自路口通过的汽车数量 val ds2:...,这个时间和 WaterMark 中的时间概念不同。
SQL支持大部分查询功能 3.交互式查询能力: - 通过Kylin,用户可以与Hadoop数据进行亚秒级交互,在同样的数据集上提供比Hive更好的性能 4.多维立方体(MOLAP Cube): - 用户能够在.../cn/,本文主要描述如何在CDH集群中部署及使用Kylin。...查看Hive default库中的表,多了五张表 ? 2.进入kylin Web界面reload metadata ? 3.查看导入模型 ? 4.构建cube ? 5.选择数据分区范围 ?...耗时1.89s,查询支持多种展示方式,如:Line chart、bar chart、pie chart,可以点击Visualization查看可视化展示方式,并且可以选择不同的维度和度量字段。...://hadoop2.macro.com:10000/default" -n hive -f create_table.sql (可左右滑动) ?
不一样的地方在于,滑动窗口有另一个参数控制窗口计算的频率(滑动窗口滑动的步长)。因此,如果滑动的步长小于窗口大小,则滑动窗口之间每个窗口是可以重叠。在这种情况下,一条数据就会分配到多个窗口当中。...渐进式窗口可以认为是首先开一个最大窗口大小的滚动窗口,然后根据用户设置的触发的时间间隔将这个滚动窗口拆分为多个窗口,这些窗口具有相同的窗口起点和不同的窗口终点。...这时,有离线 Hive SQL 使用经验的小伙伴萌就会想到,如果有了 Grouping Sets,我们就可以直接用 Grouping Sets 将维度组合写在一条 SQL 中,写起来方便并且执行效率也高...Flink SQL 中 Grouping Sets 的语法和 Hive SQL 的语法有一些不同,如果我们使用 Hive SQL 实现上述 SQL 的语义,其实现如下: insert into sink_table...(十八):在 flink 中还能使用 hive udf?
的OpenLDAP的文章具体如下: 《1.如何在RedHat7上安装OpenLDA并配置客户端》 《2.如何在RedHat7中实现OpenLDAP集成SSH登录并使用sssd同步用户》 《3.如何RedHat7...的OpenLDAP认证》 《7.如何在RedHat7的OpenLDAP中实现将一个用户添加到多个组》 通过如上面文章的介绍我们可以轻易的将OpenLDAP与安全环境的的CDH集群集成,那么我们在OpenLDAP...这里我们也没有在Hue中添加testsentry用户就可以登录,因为Fayson在集成Hue的时候勾选了“登录时创建 LDAP 用户”选项,所以默认不需要在Hue中手动的同步OpenLDAP用户。...执行SQL查询tpcds_text_2库下customer表,执行成功 ? 执行SQL统计tpcds_text_2库下customer表总数,执行成功 ? 使用Impala引擎测试 ? ?...7.总结 ---- OpenLDAP中的用户中与Linux中的用户是一致的 Sentry授权是针对用户组的,所以在需要在Hue中授权的用户组名与OpenLDAP中的用户组名称一致 如果集群启用了Kerberos
& SQL的一些核心概念,本部分将介绍 Flink 中窗口和函数。...例如,可以开一个滚动窗口,统计10秒内出现的每个sensor的个数。...,用户定义的表函数,可以将0、1或多个标量值作为输入参数;与标量函数不同的是,它可以返回任意数量的行作为输出,而不是单个值。...一是利用了 Hive 的 MetaStore 作为持久化的 Catalog,用户可通过HiveCatalog将不同会话中的 Flink 元数据存储到 Hive Metastore 中。...例如,用户可以使用HiveCatalog将其 Kafka 表或 Elasticsearch 表存储在 Hive Metastore 中,并后续在 SQL 查询中重新使用它们。
如将集合中每个元素按照空格切分。...滑动窗口(Sliding Window)滑动窗口是固定窗口的更广义的一种形式,滑动窗口由固定的窗口长度和滑动间隔组成。...一次数据统计的时间长度 每次统计移动多长的时间特点:时间对齐,窗口长度固定,可以有重叠。...一个数据可以被统计多次,滑动间隔、窗口长度是某个数值的整数倍滑动窗口分配器将元素分配到固定长度的窗口中,与滚动窗口类似,窗口的大小由窗口大小参数来配置,另一个窗口滑动参数控制滑动窗口开始的频率。...与常规 SQL 语言中将查询指定为字符串不同,Table API 查询是以 Java 或 Scala 中的语言嵌入样式来定义的,具有 IDE 支持如:自动完成和语法检测;允许以非常直观的方式组合关系运算符的查询
Fayson的github: https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1.文档编写目的 ---- 在前面的文章Fayson介绍了《如何在...在上一章节的测试中可以看到使用Beeline连接Spark ThriftServer时并未模拟本地指定的fayson用户访问Hive数据库。...1.在 Spark ThriftServer的启动命令中增加Hive的参数 ....在启动参数中增加hive.server2.enable.doAs参数并设置为true,参数说明: 该参数true则表示以登录ThriftServer的用户身份执行查询,如果为fasle在表示以启动ThriftServer...kinit的用户,否则获取到的是ThriftServer的启动用户(即启动参数中的--principal的值)。
Fayson的github: https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 在前面的文章Fayson介绍了《如何在CDH集群中部署Presto...由于hive.properties配置文件中Fayson配置了presto用户访问HDFS,并且启用了用户模拟的功能,所以需要在core-site.xml中增加presto用户代理配置。...4.Presto与Hive集成测试 ---- 这里测试Presto与Hive的集成使用Presto提供的Presto CLI,该CLI是一个可执行的JAR文件,也意味着你可以想UNIX终端窗口一样来使用...登录Presto的8080界面查看SQL执行记录 ? 可以看到在使用CLI访问Hive时,指定了user用户为hive,执行SQL是会模拟hive用户访问Hive。...2.如果在访问HDFS服务中启用了用户模拟功能则需要在到HDFS的core-site.xml文件中增加presto用户的代理配置。
如将集合中每个元素按照空格切分。...滑动窗口(Sliding Window) 滑动窗口是固定窗口的更广义的一种形式,滑动窗口由固定的窗口长度和滑动间隔组成。...一次数据统计的时间长度 每次统计移动多长的时间 特点:时间对齐,窗口长度固定,可以有重叠。...一个数据可以被统计多次,滑动间隔、窗口长度是某个数值的整数倍 滑动窗口分配器将元素分配到固定长度的窗口中,与滚动窗口类似,窗口的大小由窗口大小参数来配置,另一个窗口滑动参数控制滑动窗口开始的频率。...与常规 SQL 语言中将查询指定为字符串不同,Table API 查询是以 Java 或 Scala 中的语言嵌入样式来定义的,具有 IDE 支持如:自动完成和语法检测;允许以非常直观的方式组合关系运算符的查询
Fayson的github: https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1.文档编写目的 ---- 在前面的文章Fayson介绍了《如何在...CDH中启用Spark Thrift》,《如何在Kerberos环境下的CDH集群部署Spark1.6 Thrift及spark-sql客户端》,《如何在Kerberos环境下的CDH集群部署Spark2.1...本篇文章Fayson主要介绍如何在Kerberos环境下的CDH集群中部署Spark2.1的Thrift Server服务和Spark SQL客户端。...注意:为了防止和HiveServer2的10000端口冲突,可以在启动脚本中增加如下配置自定义端口,端口默认绑定的地址为127.0.0.1,不能远程访问需要将指定绑定host,0.0.0.0为监听所有IP...2.在Kerberos环境下部署Spark Thrift服务时在启动时需要执行prinicipal和keytab文件,该Kerberos账号需要为hive用户。
Fayson的github: https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1.文档编写目的 ---- 在前面的文章Fayson介绍了《如何在...CDH中启用Spark Thrift》和《如何在Kerberos环境下的CDH集群部署Spark1.6 Thrift及spark-sql客户端》,本篇文章Fayson主要介绍如何在非Kerberos环境下的...3.启动与停止Spark Thrift ---- 1.进入/opt/cloudera/parcels/CDH/lib/spark/sbin目录下执行脚本启动Thrift Server 指定hive用户启动...注意:为了防止和HiveServer2的10000端口冲突,可以在启动脚本中增加如下配置自定义端口,端口默认绑定的地址为127.0.0.1,不能远程访问需要将指定绑定host,0.0.0.0为监听所有IP.../lib/spark2/bin/spark-sql (可左右滑动) ?
Fayson的github:https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1.文档编写目的 ---- 在前面的文章Fayson介绍了《如何使用...和Hive》,关于Hive和Impala如何启用Sentry可以参考Fayson前面的文章《如何在CDH启用Kerberos的情况下安装及使用Sentry(一)》,《如何在CDH启用Kerberos的情况下安装及使用...Sentry(二)》和《如何在CDH未启用认证的情况下安装及使用Sentry》,在集群只启用了Sentry的情况下如何访问?...4.代码测试 ---- 1.Hive测试 使用hive用户测试,hive用户拥有Hive库的所有权限,所以可以看到Hive下面所有的库。...[p491x9xo6u.jpeg] 使用faysontest用户测试,faysontest用户只拥有Hive库下的default库操作权限,所以我们可以看到只能获取到default库信息 [pprjnwn50p.jpeg
Fayson的github: https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1.文档编写目的 ---- 在前面的文章Fayson介绍了《如何在...CDH中启用Spark Thrift》,本篇文章Fayson主要介绍如何在Kerberos环境下的CDH集群中部署Spark1.6的Thrift Server服务和Spark SQL客户端。...前面《如何在CDH中启用Spark Thrift》处理方式是在/etc/spark/conf/classpath.txt文件末尾增加依赖,这种配置方式在修改Spark客户端配置后会被覆盖,需要重新手动加入...3.通过Yarn的8088界面查看SQL操作都是通过Spark执行 ? ?...5.总结 ---- 1.在Kerberos环境下部署Spark Thrift服务时在启动时需要执行prinicipal和keytab文件,该Kerberos账号需要为hive用户。
Fayson的github:https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1.文档编写目的 ---- 前面Fayson介绍了《如何在Impala...表中。...2.使用hive命令行执行如下脚本,创建Parquet表并导入数据 [root@ip-172-31-21-83 impala-parquet]# hive -f load_parquet_hive.sql...如上截图可以看parquet文件的Block为1个,说明生成的paruqet文件未出现跨Block的现象,与Fayson前面文章《如何在Impala中使用Parquet表》中介绍的“为Impala使用合适大小的...6.总结 ---- Hive生成Parquet文件的大小取决于 mapreduce.input.fileinputformat.split.maxsize/minsize两个参数 如:该参数设置为1GB
Fayson的github: https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1.文档编写目的 ---- Fayson在前面的文章《01-如何在...1.在AD上创建测试用户testa并将用户加入groupa组中 ?...Enter password for jdbc:hive2://cdh01.fayson.com:10000: ****** (可左右滑动) 在命令行使用错误的用户密码登录,显示如下错误 ?...使用正确的密码登录,可以成功访问HiveServer2服务 ? 执行SQL查询 ? 执行MapReduce作业 ?...Fayson前面讲的《如何在CDH启用Kerberos的情况下安装及使用Sentry(一)》、《如何在CDH启用Kerberos的情况下安装及使用Sentry(二)》和《Hive CLI禁用补充说明》。
Fayson的github: https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1.文档编写目的 ---- 前面Fayson介绍了《如何在CDH...中启用Spark Thrift》和《如何在Kerberos环境下的CDH集群部署Spark1.6 Thrift及spark-sql客户端》,本篇文章Fayson主要介绍如何使用Java JDBC连接非Kerberos...成功的从Hive库中取出test表的数据。 5.查看Yarn上的作业 ? Spark执行的SQL语句 ?...5.总结 ---- 通过JDBC访问Spark ThriftServer使用Hive JDBC驱动即可,不需要做额外的配置 在启用非Kerberos环境下的Spark ThriftServer服务时需要指定用户为...hive,否则在执行查询的时候会出现访问HDFS文件权限问题 访问Kerberos环境下的Spark ThriftServer需要在运行环境中增加Kerberos的环境
⭐ Over 聚合定义(支持 Batch\Streaming):可以理解为是一种特殊的滑动窗口聚合函数。...那这里我们拿 Over 聚合 与 窗口聚合 做一个对比,其之间的最大不同之处在于: ⭐ 窗口聚合:不在 group by 中的字段,不能直接在 select 中拿到 ⭐ Over 聚合:能够保留原始字段...在 Hive 中也有相同的聚合,但是小伙伴萌可以想想你在离线数仓经常使用嘛? ⭐ 应用场景:计算最近一段滑动窗口的聚合结果数据。...如下案例所示: a. ⭐ 时间区间聚合: 按照时间区间聚合就是时间区间的一个滑动窗口,比如下面案例 1 小时的区间,最新输出的一条数据的 sum 聚合结果就是最近一小时数据的 amount 之和。...(十八):在 flink 中还能使用 hive udf?
领取专属 10元无门槛券
手把手带您无忧上云