溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

infobright數據倉庫中的comment lookup

發布時間:2020-08-02 23:29:34 來源:網絡 閱讀:1607 作者:往事_Jim_遺 欄目:MySQL數據庫

   infobright數據倉庫能在高強度的壓縮中把大量的數據壓縮存儲,平時在不斷查詢的過程就是在做數據解壓的過程,當然具體的詳細介紹在以前有提過,這里就不做過程的介紹(https://blog.51cto.com/jim123/1975029)在infobright中支持所有的MySQL原有的數據類型,其中對×××的效率會比其他類型高,這一點同MySQL差不多,在infobright中比較高效的類型如下:

1、TINYINT,SMALLINT,MEDIUMINT,INT,BIGINT
2、DECIMAL(盡量減少小數點后的精度)
3、DATE ,TIME

這3種類型的數據能有比較高的壓縮比例及查詢速度,而效率比較低的、不推薦使用的數據類型有這幾種:

1、BINARY VARBINARY(二進制類型)
2、FLOAT
3、DOUBLE
4、VARCHAR
5、TINYTEXT TEXT(可變長度的非Unicode類型

這些數據類型在使用的過程中效率比較低且壓縮比例并不是很高,其中VARCHAR字段在MySQL中效率就不如CHAR字段,當然在某些業務場景下可能會不得不用到CHAR(VARCHAR)的時候又經常需要頻繁的查詢時,但數據的記錄數又并不是很多時(不多于10000行,且數據的類型多于10種以上,類似于省份、UUID這類的數據),就可以通過comment lookup的方式創建建表時的DDL來提高平時查詢的效率如下:

#原建表DDL
CREATE TABLE `test_default` (
  `dstphone` varchar(11) DEFAULT NULL,
  `gateid` varchar(255) DEFAULT NULL
) ENGINE=BRIGHTHOUSE DEFAULT CHARSET=utf8;
#comment lookup建表DDL
CREATE TABLE `test_lookup` (
  `dstphone` varchar(11) DEFAULT NULL COMMENT 'lookup',
  `gateid` varchar(255) DEFAULT NULL COMMENT 'lookup'
) ENGINE=BRIGHTHOUSE DEFAULT CHARSET=utf8;

這里需要注意的是comment lookup的方式目前僅有在CHAR(VARCHAR)中能使用,其次在平時帶來更高的查詢效率所帶來的代價就是磁盤開銷,因為infobright在平時查詢的時候就是在做解壓的過程,所以使用comment lookup的方式就是降低壓縮比例,在查詢的時候能更快速的解壓數據,如下可以看出comment lookup的方式同默認的建表時不同的壓縮比例infobright數據倉庫中的comment lookup

infobright數據倉庫中的comment lookup

查詢效率如下:

infobright數據倉庫中的comment lookupinfobright數據倉庫中的comment lookup

可以看相同的數據下所占用磁盤空間,但相應的在查詢記錄不能超過10000行,不然反而還會降低其效率:

infobright數據倉庫中的comment lookupinfobright數據倉庫中的comment lookup

所以在使用的過程中還需要根據實際情況來選擇

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女