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

织梦网站地图插件wordpress资源图片主题

织梦网站地图插件,wordpress资源图片主题,网站的速度,论坛营销Flink系列之#xff1a;Top-N 一、TOP-N二、无排名输出优化 一、TOP-N 适用于流、批Top-N 查询可以根据指定列排序后获得前 N 个最小或最大值。最小值和最大值集都被认为是Top-N查询。在需要从批表或流表中仅显示 N 个底部或 N 个顶部记录时#xff0c;Top-N 查询是非常有用… Flink系列之Top-N 一、TOP-N二、无排名输出优化 一、TOP-N 适用于流、批Top-N 查询可以根据指定列排序后获得前 N 个最小或最大值。最小值和最大值集都被认为是Top-N查询。在需要从批表或流表中仅显示 N 个底部或 N 个顶部记录时Top-N 查询是非常有用的。并且该结果集还可用于进一步分析。Flink 使用 OVER 窗口子句和过滤条件的组合来表达一个 Top-N 查询。借助 OVER 窗口的 PARTITION BY 子句能力Flink 也能支持分组 Top-N。例如实时显示每个分类下销售额最高的五个产品。对于批处理和流处理模式的SQL都支持 Top-N 查询。 下面展示了 Top-N 的语法 SELECT [column_list] FROM (SELECT [column_list],ROW_NUMBER() OVER ([PARTITION BY col1[, col2...]]ORDER BY col1 [asc|desc][, col2 [asc|desc]...]) AS rownumFROM table_name) WHERE rownum N [AND conditions]参数说明 ROW_NUMBER()根据分区数据的排序为每一行分配一个唯一且连续的序号从 1 开始。目前只支持 ROW_NUMBER 作为 OVER 窗口函数。未来会支持 RANK() 和 DENSE_RANK()。PARTITION BY col1[, col2…]指定分区字段。每个分区都会有一个 Top-N 的结果。ORDER BY col1 [asc|desc][, col2 [asc|desc]…] 指定排序列。 每个列的排序类型ASC/DESC可以不同。WHERE rownum N: Flink 需要 rownum N 才能识别此查询是 Top-N 查询。 N 表示将要保留 N 个最大或最小数据。[AND conditions]: 可以在 WHERE 子句中添加其他条件但是这些其他条件和 rownum N 需要使用 AND 结合。 Top-N 查询是结果更新的. Flink SQL会根据ORDER BY的字段对输入的数据流进行排序所以如果前 N 条记录发生了变化那么变化后的记录将作为回撤/更新记录发送到下游。 建议使用一个支持更新的存储作为 Top-N 查询的结果表。此外如果 Top-N 条记录需要存储在外部存储中结果表应该与Top-N查询的唯一键保持一致。 Top-N 查询的唯一键是分区字段和 rownum 字段的组合。Top-N 查询也可以获取上游的唯一键。用下面的 job 举例:比如 product_id 是 ShopSales 的唯一键这时 Top-N 查询的唯一键是[category, rownum] 和 [product_id]。 下面的示例展示了在流式表上指定 Top-N SQL 查询。这也是上面提到的 ‘实时显示每个分类下销售额最高的五个产品’ 的示例。 CREATE TABLE ShopSales (product_id STRING,category STRING,product_name STRING,sales BIGINT ) WITH (...);SELECT * FROM (SELECT *,ROW_NUMBER() OVER (PARTITION BY category ORDER BY sales DESC) AS row_numFROM ShopSales) WHERE row_num 5二、无排名输出优化 如上所述 rownum 将作为唯一键的一个字段写入到结果表这可能会导致大量数据写入到结果表。例如排名第九比如 product-1001的记录更新为 1排名 1 到 9 的所有记录都会作为更新信息逐条写入到结果表。如果结果表收到太多的数据它将会成为这个 SQL 任务的瓶颈。 优化的方法是在 Top-N 查询的外层 SELECT 子句中省略 rownum 字段。因为通常 Top-N 的数据量不大消费端就可以快速地排序。下面的示例中就没有 rownum 字段只需要发送变更数据product-1001到下游这样可以减少结果表很多 IO。 下面的示例展示了用这种方法怎样去优化上面的 Top-N CREATE TABLE ShopSales (product_id STRING,category STRING,product_name STRING,sales BIGINT ) WITH (...);-- omit row_num field from the output SELECT product_id, category, product_name, sales FROM (SELECT *,ROW_NUMBER() OVER (PARTITION BY category ORDER BY sales DESC) AS row_numFROM ShopSales) WHERE row_num 5Attention in Streaming Mode 为了上面的查询输出到外部存储的正确性外部存储必须和 Top-N 查询拥有相同的唯一键。在上面的示例中如果 product_id 是查询的唯一键外部表应该也把 product_id 作为唯一键。
http://www.sadfv.cn/news/228055/

相关文章:

  • 网站的功能互联网产品推广是做什么的
  • 养殖舍建设网站山西太原百度公司
  • 青岛餐饮加盟网站建设html网页制作流程
  • 网站怎么记录搜索引擎的关键词wordpress哪个主题适合做门户
  • 品牌运营seo快排软件
  • 上海专业做网站推广的公司ftp 企业网站
  • 湖南好搜网站建设外贸建个网站多少钱
  • 做网站需要什么代码asp.net做音乐网站
  • 兰州市建设厅官方网站做兼职的网站都有哪些工作
  • 白银市做网站wordpress centos安装
  • 嘉峪关建设局公告网站极简风格wordpress主题
  • 国外 素材 网站wordpress扁平化主题下载
  • 广州海外建站整站优化深圳
  • 网林时代网站建设8插槽x8插槽
  • 网上做的比较好的竞彩网站金蝶云企业云平台
  • 汽车网站建设制作费用连接国外网站做端口映射
  • 做虚假彩票网站判几年长沙seo霜天博客
  • 人力资源公司网站模板下载在线crm视频观看
  • 公司网站怎么建立优化体系徐州模板自助建站
  • 流浪猫狗救助网站开发设计建设一个网站多钱
  • 经营范围 网站建设google推广教程
  • 盐城网站建设科技有限公司网站结构分类
  • 青岛seo网站排名外包加工网合法吗
  • 私活做网站网站焦点图怎么做
  • 个人网站开发工具备案需要写网站建设方案书
  • 个人做电影网站合法吗反向代理
  • 网站建设公司自贡php企业网站开发框架
  • 做网站提升公司形象离石做网站的公司
  • 邢台网络优化技术公司深圳seo推广
  • 佛山网站建设的大品牌网站主要盈利模式