当前位置: 首页 > news >正文

东莞市研发网站建设公司国外网站 icp备案

东莞市研发网站建设公司,国外网站 icp备案,网站推广思路,全球设计师知识更新服务平台1.背景介绍 流式计算一个很常见的场景是基于事件时间进行处理#xff0c;常用于检测、监控、根据时间进行统计等系统中。比如埋点日志中每条日志记录了埋点处操作的时间#xff0c;或者业务系统中记录了用户操作时间#xff0c;用于统计各种操作处理的频率等#xff0c;或…1.背景介绍 流式计算一个很常见的场景是基于事件时间进行处理常用于检测、监控、根据时间进行统计等系统中。比如埋点日志中每条日志记录了埋点处操作的时间或者业务系统中记录了用户操作时间用于统计各种操作处理的频率等或者根据规则匹配进行异常行为检测或监控系统告警。这样的时间数据都会包含在事件数据中需要提取时间字段并根据一定的时间范围进行统计或者规则匹配等。 使用Spark Streaming SQL可以很方便的对事件数据中的时间字段进行处理同时Spark Streaming SQL提供的时间窗口函数可以将事件时间按照一定的时间区间对数据进行统计操作。 本文通过讲解一个统计用户在过去5秒钟内点击网页次数的案例介绍如何使用Spark Streaming SQL对事件时间进行操作。 2.时间窗语法说明 Spark Streaming SQL支持两类窗口操作滚动窗口TUMBLING和滑动窗口HOPPING。 2.1滚动窗口 滚动窗口TUMBLING根据每条数据的时间字段将数据分配到一个指定大小的窗口中进行操作窗口以窗口大小为步长进行滑动窗口之间不会出现重叠。例如如果指定了一个5分钟大小的滚动窗口数据会根据时间划分到 [0:00 - 0:05)、 [0:05, 0:10)、[0:10, 0:15)等窗口。 语法 GROUP BY TUMBLING ( colName, windowDuration ) 示例 对inventory表的inv_data_time时间列进行窗口操作统计inv_quantity_on_hand的均值窗口大小为1分钟。 SELECT avg(inv_quantity_on_hand) qoh FROM inventory GROUP BY TUMBLING (inv_data_time, interval 1 minute) 2.2滑动窗口 滑动窗口HOPPING也被称作Sliding Window。不同于滚动窗口滑动窗口可以设置窗口滑动的步长所以窗口可以重叠。滑动窗口有两个参数windowDuration和slideDuration。slideDuration为每次滑动的步长windowDuration为窗口的大小。当slideDuration  windowDuration时窗口会重叠每个元素会被分配到多个窗口中。 所以滚动窗口其实是滑动窗口的一种特殊情况即slideDuration  windowDuration则等同于滚动窗口。 语法 GROUP BY HOPPING ( colName, windowDuration, slideDuration ) 示例 对inventory表的inv_data_time时间列进行窗口操作统计inv_quantity_on_hand的均值窗口为1分钟滑动步长为30秒。 SELECT avg(inv_quantity_on_hand) qoh FROM inventory GROUP BY HOPPING (inv_data_time, interval 1 minute, interval 30 second) 3.系统架构 业务日志收集到Aliyun SLS后Spark对接SLS通过Streaming SQL对数据进行处理并将统计后的结果写入HDFS中。后续的操作流程主要集中在Spark Streaming SQL接收SLS数据并写入HDFS的部分有关日志的采集请参考日志服务。 4.操作流程 4.1环境准备 创建E-MapReduce 3.21.0以上版本的Hadoop集群。下载并编译E-MapReduce-SDK包 git clone gitgithub.com:aliyun/aliyun-emapreduce-sdk.git cd aliyun-emapreduce-sdk git checkout -b master-2.x origin/master-2.x mvn clean package -DskipTests 编译完后, assembly/target目录下会生成emr-datasources_shaded_${version}.jar其中${version}为sdk的版本。 4.2创建表 命令行启动spark-sql客户端 spark-sql --master yarn-client --num-executors 2 --executor-memory 2g --executor-cores 2 --jars emr-datasources_shaded_2.11-${version}.jar --driver-class-path emr-datasources_shaded_2.11-${version}.jar 创建SLS和HDFS表 spark-sql CREATE DATABASE IF NOT EXISTS default; spark-sql USE default;-- 数据源表 spark-sql CREATE TABLE IF NOT EXISTS sls_user_log USING loghub OPTIONS ( sls.project ${logProjectName}, sls.store ${logStoreName}, access.key.id ${accessKeyId}, access.key.secret ${accessKeySecret}, endpoint ${endpoint});--结果表 spark-sql CREATE TABLE hdfs_user_click_count USING org.apache.spark.sql.json OPTIONS (path ${hdfsPath});4.3统计用户点击数 spark-sqlSET streaming.query.nameuser_click_count; spark-sqlSET spark.sql.streaming.checkpointLocation.user_click_counthdfs:///tmp/spark/sql/streaming/test/user_click_count; spark-sqlinsert into hdfs_user_click_count select sum(cast(action_click as int)) as click, userId, window from sls_user_log where delay(__time__)1 minute group by TUMBLING(__time__, interval 5 second), userId; 其中内建函数delay()用来设置Streaming SQL中的watermark后续会有专门的文章介绍Streaming SQL watermark的相关内容。 4.4查看结果 可以看到产生的结果会自动生成一个window列包含窗口的起止时间信息。 5.结语 本文简要介绍了流式处理中基于事件时间进行处理的场景以及Spark Streaming SQL时间窗口的相关内容并通过一个简单案例介绍了时间窗口的使用。后续文章我将介绍Spark Streaming SQL的更多内容。 原文链接 本文为云栖社区原创内容未经允许不得转载。
http://www.zqtcl.cn/news/509670/

相关文章:

  • 网站制作流程有哪些wordpress众筹
  • 网站打开是建设中手机咋建网站
  • 外贸专业网站的公司建百度网站
  • 北京做网站开发公司有哪些网站技术开发文档模板
  • 图解asp.net网站开发实战外管局网站先支后收怎么做报告
  • 访问自己做的网站吗织梦自动生成手机网站
  • 湖南岳阳网站开发网络公司兰州最好的互联网公司
  • 网站上线 流程网站左侧漂浮代码
  • 基于mvc4商务网站开发网站建设引言
  • 深圳网站设计师西安企业100强
  • dz网站数据备份购物网站配色怎么设计
  • 适合网站开发工程师的公司图片百度搜索
  • 网站界面设计需求wordpress single.php
  • 比较权威的房产网站合肥瑶海区地图全图高清版
  • 网站建设公司果动小学电教检查网站建设资料
  • 电子商务网站设计成功的要素青岛网页设计师
  • 门户网站平台建设方案网站开发后如何上线
  • 濮阳做网站的番禺区网络推广渠道
  • 杭州网站seo外包外链图片
  • 苏州网站建设有限公司枣阳建网站
  • 网站开发平台选择如何制作购物网站
  • 专业建设网站企业外包公司企业网站
  • 网站开发需求确认书国家商标注册官网查询系统
  • 国内个人网站建设wordpress 添加搜索
  • 网站建设创新简述网站开发具体流程
  • wordpress小说网站模板南宁企业网站seo
  • 网站开发与设计课程时间网站推广的搜索引擎推广
  • 网站首页幻灯片不显示网页设计制作项目
  • 遂宁网站建设哪家好深圳做响应式网站设计
  • 慈溪建设企业网站wordpress 增加分类字段