<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      ClickHouse 高級(一)優(yōu)化(1)Explain 查看執(zhí)行計劃

      目錄

      0 Explain 查看執(zhí)行計劃
      1 基本語法
      2 案例實操

      0 Explain 查看執(zhí)行計劃

        在 clickhouse 20.6 版本之前要查看 SQL 語句的執(zhí)行計劃需要設(shè)置日志級別為 trace 才能可以看到,并且只能真正執(zhí)行 sql,在執(zhí)行日志里面查看。在 20.6 版本引入了原生的執(zhí)行計劃的語法。在 20.6.3 版本成為正式版本的功能。
          本文檔基于目前較新穩(wěn)定版 21.7.3.14。

      1 基本語法

      EXPLAIN [AST | SYNTAX | PLAN | PIPELINE] [setting = value, ...] 
      SELECT ... [FORMAT ...]
      PLAN:用于查看執(zhí)行計劃,默認(rèn)值。
        ?header 打印計劃中各個步驟的 head 說明,默認(rèn)關(guān)閉,默認(rèn)值 0;
        ?description 打印計劃中各個步驟的描述,默認(rèn)開啟,默認(rèn)值 1;
        ?actions 打印計劃中各個步驟的詳細(xì)信息,默認(rèn)關(guān)閉,默認(rèn)值 0。
      ?AST :用于查看語法樹;
      ?SYNTAX:用于優(yōu)化語法;
      ?PIPELINE:用于查看 PIPELINE 計劃。
        ?header 打印計劃中各個步驟的 head 說明,默認(rèn)關(guān)閉;
        ?graph 用 DOT 圖形語言描述管道圖,默認(rèn)關(guān)閉,需要查看相關(guān)的圖形需要配合graphviz 查看;
        ?actions 如果開啟了 graph,緊湊打印打,默認(rèn)開啟。
      注:PLAN 和 PIPELINE 還可以進(jìn)行額外的顯示設(shè)置,如上參數(shù)所示。

      2 案例實操

      2.1 新版本使用 EXPLAIN

        可以再安裝一個 20.6 以上版本,或者直接在官網(wǎng)的在線 demo,選擇高版本進(jìn)行測試。
        官網(wǎng)在線測試鏈接:https://play.clickhouse.tech/?file=welcome
      1)查看 PLAIN
        簡單查詢
      explain plan select arrayJoin([1,2,3,null,null]);
        復(fù)雜 SQL 的執(zhí)行計劃
      explain select database,table,count(1) cnt from system.parts where 
      database in ('datasets','system') group by database,table order by 
      database,cnt desc limit 2 by database;
        打開全部的參數(shù)的執(zhí)行計劃
      EXPLAIN header=1, actions=1,description=1 SELECT number from 
      system.numbers limit 10;
      2)AST 語法樹
      EXPLAIN AST SELECT number from system.numbers limit 10;
      3)SYNTAX 語法優(yōu)化
      //先做一次查詢
      SELECT number = 1 ? 'hello' : (number = 2 ? 'world' : 'atguigu') FROM 
      numbers(10);
      //查看語法優(yōu)化
      EXPLAIN SYNTAX SELECT number = 1 ? 'hello' : (number = 2 ? 'world' : 
      'atguigu') FROM numbers(10);
      //開啟三元運算符優(yōu)化
      SET optimize_if_chain_to_multiif = 1;
      //再次查看語法優(yōu)化
      EXPLAIN SYNTAX SELECT number = 1 ? 'hello' : (number = 2 ? 'world' : 
      'atguigu') FROM numbers(10);
      //返回優(yōu)化后的語句
      SELECT multiIf(number = 1, \'hello\', number = 2, \'world\', \'xyz\')
      FROM numbers(10)
      4)查看 PIPELINE
      EXPLAIN PIPELINE SELECT sum(number) FROM numbers_mt(100000) GROUP BY number % 20; //打開其他參數(shù)
      EXPLAIN PIPELINE header
      =1,graph=1 SELECT sum(number) FROM numbers_mt(10000) GROUP BY number%20;
      2.2 老版本查看執(zhí)行計劃
      clickhouse-client -h 主機(jī)名 --send_logs_level=trace <<< "sql" > /dev/null
      其中,send_logs_level 參數(shù)指定日志等級為 trace,<<<將 SQL 語句重定向至 clickhouse-client 進(jìn)行查詢,> /dev/null 將查詢結(jié)果重定向到空設(shè)備吞掉,以便觀察日志。
      注意:
      1、通過將 ClickHouse 的服務(wù)日志,設(shè)置到 DEBUG 或者 TRACE 級別,才可以變相實現(xiàn)EXPLAIN 查詢的作用。
      2、需要真正的執(zhí)行 SQL 查詢,CH 才能打印計劃日志,所以如果表的數(shù)據(jù)量很大,最好借助 LIMIT 子句,減小查詢返回的數(shù)據(jù)量。
       

       

      posted @ 2021-08-07 22:01  秋華  閱讀(2723)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 国产女人和拘做受视频免费| 黄色三级亚洲男人的天堂| 日韩免费码中文在线观看| 美女黄网站人色视频免费国产| 天天躁夜夜躁天干天干2020| 国产精品一区中文字幕| 亚洲欧洲日韩精品在线| 欧美成人aaa片一区国产精品| 久久精品国产亚洲av麻豆长发| 中国国产免费毛卡片| 色吊丝二区三区中文写幕| 国产人妻一区二区三区四区五区六| 亚洲欧洲国产综合aⅴ无码| 东京热一精品无码av| 国产无遮挡吃胸膜奶免费看| 国产精品一二区在线观看| 久久精品国产中文字幕| 日韩中文字幕亚洲精品| 深夜福利啪啪片| 亚洲天堂av 在线| 久久久精品人妻一区二区三区| 日韩国产精品一区二区av| 日本丰满熟妇videossexhd| 日韩深夜视频在线观看| 日韩美av一区二区三区| 国产成人精品无人区一区| 亚洲熟妇无码av另类vr影视| 亚洲v欧美v国产v在线观看| 国产AV巨作丝袜秘书| 国精产品999国精产| 国产黄色精品一区二区三区| 护士张开腿被奷日出白浆| 天天做日日做天天添天天欢公交车| 国产成人综合久久亚洲精品| 中文字幕日韩精品亚洲一区| 国产在线午夜不卡精品影院| 色综合色综合色综合频道| 黑人玩弄人妻中文在线| 九九热免费精品视频在线| 精品国产成人a在线观看 | 国产亚洲精品俞拍视频|