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

合肥高端网站建设公司百度app官网

合肥高端网站建设公司,百度app官网,基于网站开发的app,wordpress 文章 模版文章目录 1、ClickHouse 物化视图2、物化视图 vs 普通视图3、物化视图的优缺点4、物化视图的用法4.1、基本语法4.2、准备表结构4.3、准备数据4.3、查询结果 1、ClickHouse 物化视图 ClickHouse 的物化视图是一种查询结果的持久化,它的存在是为了带来查询效率的提升…

文章目录

  • 1、ClickHouse 物化视图
  • 2、物化视图 vs 普通视图
  • 3、物化视图的优缺点
  • 4、物化视图的用法
    • 4.1、基本语法
    • 4.2、准备表结构
    • 4.3、准备数据
    • 4.3、查询结果

1、ClickHouse 物化视图

ClickHouse 的物化视图是一种查询结果的持久化,它的存在是为了带来查询效率的提升。用户使用物化视图时跟普通的表没有太大区别,其实它就是一张逻辑表,也像是一张时刻在预计算的表,创建的过程它是用了一个特殊引擎,加上后来 as select,就是 create 一个 table as select 的写法。

2、物化视图 vs 普通视图

普通视图:普通视图不保存数据,保存的仅是查询语句,查询的时候还是从原表读取数据,可以将普通视图理解为是个子查询。
物化视图:物化视图是把查询的结果根据相应的引擎存入到了磁盘或内存中,对数据重新进行了组织,你可以理解物化视图是完全的一张新表。

3、物化视图的优缺点

  • 优点
    • 查询速度快,要是把物化视图这些规则全部写好,它比原数据查询快了很多,总的行数少了,因为都预计算好了。
  • 缺点
    • 本质是一个流式数据的使用场景,是累加式的技术,所以要用历史数据做去重、去核这样的分析,在物化视图里面是不太好用的;
    • 如果一张表加了好多物化视图,在写这张表的时候,就会消耗很多机器的资源,比如数据带宽占满、存储一下子增加了很多;
    • 使用场景受限,并不适用于所有的场景;

4、物化视图的用法

4.1、基本语法

CREATE [MATERIALIZED] VIEW [IF NOT EXISTS] [db.]table_name [TO[db.]name]
[ENGINE = engine] [POPULATE] AS SELECT ...

使用create 创建一个物化视图,会创建一个隐藏的目标表来保存视图数据,也可以 TO 表名,保存到 一 张显式的表。没有加 TO 表名,表名默认就是 .inner.物化视图名;

4.2、准备表结构

  • 创建 pm 性能数据表

    性能表以 start_time 和 ne_name 为组合主键,day_id 为分区,ReplacingMergeTree 为合并引擎

    CREATE TABLE default.test_01_pm
    (
    `insert_time` DateTime COMMENT '插入时间',
    `start_time` String COMMENT '数据时间',
    `ne_name` String COMMENT '网元名称',
    `pm_01` String COMMENT 'pm_01',
    `pm_02` String COMMENT 'pm_02',
    `day_id` String COMMENT '天分区'
    )
    ENGINE = ReplacingMergeTree()
    PARTITION BY (day_id)
    PRIMARY KEY (start_time,ne_name)
    ORDER BY (start_time,ne_name)
    
  • 创建 cm 配置数据表
    同上,但是 cm 配置数据主键是 ne_name

    CREATE TABLE default.test_01_cm
    (
    `insert_time` DateTime COMMENT '插入时间',
    `ne_name` String COMMENT '网元名称',
    `cm_01` String COMMENT 'cm_01',
    `cm_02` String COMMENT 'cm_02',
    `day_id` String COMMENT '天分区'
    )
    ENGINE = ReplacingMergeTree()
    PARTITION BY (day_id)
    PRIMARY KEY ne_name
    ORDER BY ne_name;
    

4.3、准备数据

  • pm 性能数据
-- pm 性能数据
INSERT INTO table default.test_01_pm values(now(),'20240117080000','NE_01','100','200','2024-01-17');
INSERT INTO table default.test_01_pm values(now(),'20240117080000','NE_02','100','200','2024-01-17');
INSERT INTO table default.test_01_pm values(now(),'20240117080000','NE_03','100','200','2024-01-17');
INSERT INTO table default.test_01_pm values(now(),'20240117080000','NE_04','100','200','2024-01-17');
-- 模拟重复数据
INSERT INTO table default.test_01_pm values(now(),'20240117080000','NE_01','200','300','2024-01-17');
INSERT INTO table default.test_01_pm values(now(),'20240117080000','NE_01','500','600','2024-01-17');
  • cm 配置数据
-- cm 配置数据
INSERT INTO table default.test_01_cm values(now(),'NE_01','10','20','2024-01-17');
INSERT INTO table default.test_01_cm values(now(),'NE_02','10','20','2024-01-17');
INSERT INTO table default.test_01_cm values(now(),'NE_03','10','20','2024-01-17');
INSERT INTO table default.test_01_cm values(now(),'NE_04','10','20','2024-01-17');

4.3、查询结果

  • pm 数据查询

    select * from default.test_01_pm
    

    01

  • cm 数据查询

    select * from default.test_01_cm
    

    02

  • 创建物化视图将两个表关联起来
    通过 ne_name 将 cm 配置表中的数据关联到 pm性能表中,达到扩充表字段目的

    create materialized view test_mv 
    engine ReplacingMergeTree()
    partition by (day_id)
    primary key(start_time,ne_name)
    order by (start_time,ne_name)populate
    as
    selecta.insert_time,a.start_time,a.ne_name,a.pm_01,a.pm_02,b.cm_01,b.cm_02,a.day_id
    from`default`.test_01_pm a
    left join test_01_cm b on a.ne_name = b.ne_name
    
  • 物化视图数据查询

select * from default.test_mv

03

注意: populate 参数不建议添加,这个参数会导致历史数据的计算,如果不添加此参数则物化视图创建之后,只对新增数据进行物化视图的计算。

http://www.sczhlp.com/news/95140/

相关文章:

  • 免费的h5制作网站装修设计效果图下载
  • 绵阳专业网站建设网页制作官方网站
  • 网站备案被拒绝如何在海外进行推广
  • 华为网站推广策略劳务派遣
  • 网站搭建徐州百都网络搭建营业推广方案怎么写
  • pc端网站怎么做自适应手机端wordpress 8小时前
  • 网站类网站建设做网站学什么语言
  • 镇江网站建设制作公司游戏代理怎么找渠道
  • 高稳定性的网站设计制作政务公开网
  • 免费crm平台莆田百度快照优化
  • 招商加盟网站模板程序网站开发入门
  • 青岛专业做网站的公司win7 网站系统怎么做
  • 网站开发综合实训心得做网站买流量
  • 重庆网站建设公司重庆万州网页设计公司
  • 建设通网站是什么性质中国信誉建设网站
  • 网站编辑超链接怎么做做设计在哪个网站找图片大全
  • 网络流,最大流,EK算法
  • wifi7 MRU介绍
  • 烟台做外贸网站建设WordPress模版二次元
  • 惠州网站建设设计唐山做网站优化
  • 人才交流中心招聘网站建设方案网站二次开发的模板种类
  • 中山精品网站建设公司百度推广创意范例
  • 雄安做网站价格多少钱 网站建设
  • 1.认识c语言
  • 做国外网站的零售搜索引擎营销的概念及特点
  • 网站首页包含的内容怎么做网站建设中 提示
  • soso网站提交入口网站建站网站496565
  • 网站开发学习课程diy电子商城网站
  • 网站的模块怎么做深圳代理记账多少钱
  • 南昌p2p网站建设公司做苗木比较好的网站