乱码乱a∨中文字幕,在线免费激情视频,亚洲欧美久久夜夜潮,国产在线网址

  1. <sub id="hjl7n"></sub>

    1. <sub id="hjl7n"></sub>

      <legend id="hjl7n"></legend>

      當(dāng)前位置:首頁 >  站長 >  數(shù)據(jù)庫 >  正文

      淺析postgresql 數(shù)據(jù)庫 TimescaleDB 修改分區(qū)時間范圍

       2021-06-01 16:35  來源: 腳本之家   我來投稿 撤稿糾錯

        阿里云優(yōu)惠券 先領(lǐng)券再下單

      今天遇到一個問題 之前用TimescaleDB創(chuàng)建的超表 是已7天為單位的 由于7天的數(shù)據(jù)量過大 影響查詢效率 需要把7天的分區(qū)改為一天一分區(qū)。

      創(chuàng)建超表 create_hypertable()

      1.創(chuàng)建普通版表

      CREATE TABLE "超表名" (
       "collect_time" timestamp(6) NOT NULL,
       "code" varchar(36) COLLATE "pg_catalog"."default" NOT NULL,
       "value" numeric(14,4) NOT NULL,
       "create_time" timestamp(6) NOT NULL
      )
      ;

      2.改為超表 create_hypertable()

      1SELECT create_hypertable('超表名', 'collect_time', chunk_time_interval => INTERVAL '7 day');

      3.插入數(shù)據(jù)

      INSERT INTO 超表名("collect_time", "code", "value", "create_time") VALUES ('2020-10-15 16:35:00', '22255220522', '23.4672', '2020-10-14 16:35:26.659');
      INSERT INTO 超表名("collect_time", "code", "value", "create_time") VALUES ('2020-10-16 16:35:00', '26622569666', '0.1085', '2020-10-14 16:35:27.546');
      INSERT INTO 超表名("collect_time", "code", "value", "create_time") VALUES ('2020-10-13 16:35:00', '525941155555', '25.0549', '2020-10-14 16:35:28.473');
      INSERT INTO 超表名("collect_time", "code", "value", "create_time") VALUES ('2020-10-14 16:35:00', '744445411114', '0.0000', '2020-10-14 16:35:24.01');
      INSERT INTO 超表名("collect_time", "code", "value", "create_time") VALUES ('2020-10-12 16:35:00', '774484457444', '0.0000', '2020-10-14 16:35:23.032');

      查看分區(qū),你會發(fā)現(xiàn)這些數(shù)據(jù)在2個分區(qū)內(nèi)

      修改分區(qū) set_chunk_time_interval()

      一.查看分區(qū)情況

      1.查看_timescaledb_catalog.dimension 表

      1SELECT * FROM "_timescaledb_catalog"."dimension"

      interval_length上顯示 604800000000 (TIMESTAMP類型)意思是一周

      2.查看分區(qū)塊狀態(tài)

      查看 dimension_slice 表

      轉(zhuǎn)換時間戳

      1602720000000000 2020-10-15 08:00:00

      1603324800000000 2020-10-22 08:00:00

      這里可以看到分區(qū)是7天的

      二.修改分區(qū)時間 set_chunk_time_interval()

      1.修改分區(qū)時間

      1SELECT set_chunk_time_interval('超表名', interval '24 hours');

      2.插入數(shù)據(jù)驗證

      INSERT INTO 超表名("collect_time", "code", "value", "create_time") VALUES ('2021-1-14 16:35:00', '375222D001', '27.7932', '2020-10-14 16:35:15.011');
      INSERT INTO 超表名("collect_time", "code", "value", "create_time") VALUES ('2021-1-15 16:35:00', '3715044111', '0.0000', '2020-10-14 16:35:20.389');
      INSERT INTO 超表名("collect_time", "code", "value", "create_time") VALUES ('2021-1-16 16:35:00', '202Q0019QT001', '0.3663', '2020-10-14 16:35:19.087');
      INSERT INTO 超表名("collect_time", "code", "value", "create_time") VALUES ('2021-1-17 16:35:00', '3702000284441', '22.2946', '2020-10-14 16:35:15.035');
      INSERT INTO 超表名("collect_time", "code", "value", "create_time") VALUES ('2021-1-18 16:35:00', '37075225555501', '0.3022', '2020-10-14 16:35:24.041');
      INSERT INTO 超表名("collect_time", "code", "value", "create_time") VALUES ('2021-1-19 16:35:00', '25555222206001', '0.0000', '2020-10-14 16:35:23.956');

      三.查看 修改結(jié)果

      查看_timescaledb_catalog.dimension 表

      變成 86400000000 了

      2.查看分區(qū)

      分區(qū)也多了

      還有第2種(未測試)

      我想能不能直接"_timescaledb_catalog".“dimension” 表的 interval_length 字段直接 改為86400000000

      文章來源:腳本之家

      來源地址:https://www.jb51.net/article/204434.htm

      申請創(chuàng)業(yè)報道,分享創(chuàng)業(yè)好點子。點擊此處,共同探討創(chuàng)業(yè)新機遇!

      相關(guān)文章

      熱門排行

      信息推薦