国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

Apache Doris的Bitmap索引和BloomFilter索引使用及注意事項(xiàng)

瀏覽:117日期:2023-03-07 14:40:47
目錄
  • 1. Bitmap索引的使用
    • 1.1 Bitmap索引介紹
    • 1.2 Bitmap索引使用的注意事項(xiàng)
    • 1.3 Bitmap索引的使用
  • 2. BloomFilter索引
    • 2.1 BloomFilter索引介紹
    • 2.2 BloomFilter原理
    • 2.3 BloomFilter索引的使用
    • 2.4 Doris BloomFilter使用場景
    • 2.5 Doris BloomFilter使用注意事項(xiàng)

1. Bitmap索引的使用

1.1 Bitmap索引介紹

bitmap index是一種位圖索引,是一種快速數(shù)據(jù)結(jié)構(gòu),能夠加快查詢速度

1.2 Bitmap索引使用的注意事項(xiàng)

使用限制

  • 目前索引僅支持bitmap類型的索引
  • bitmap索引僅在單列上創(chuàng)建
  • bitmap索引能夠應(yīng)用在Duplicate、Uniq數(shù)據(jù)模型的所有列和Aggregate模型的key列上
  • bitmap索引僅在Segment V2儲存格式下生效。當(dāng)創(chuàng)建index時,表的存儲格式將默認(rèn)轉(zhuǎn)換為V2格式

bitmap索引支持的數(shù)據(jù)類型:

  • TINYINT
  • SMALLINT
  • INT
  • UNSIGNEDINT
  • BIGINT
  • CHAR
  • VARCHAR
  • DATE
  • DATETIME
  • LARGEINT
  • DECIMAL
  • BOOL

1.3 Bitmap索引的使用

創(chuàng)建索引

mysql> create index if not exists click_bitmap_index on test_db.click (user_id) using bitmap comment "bitmap index test";Query OK, 0 rows affected (0.05 sec)mysql> 

查看索引

mysql> show index from test_db.click;+-------------------------------+------------+--------------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+-------------------+| Table | Non_unique | Key_name   | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment   |+-------------------------------+------------+--------------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+-------------------+| default_cluster:test_db.click |    | click_bitmap_index |      | user_id     |   |     |  ||      | BITMAP     | bitmap index test |+-------------------------------+------------+--------------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+-------------------+1 row in set (0.04 sec)mysql> 

刪除索引

mysql> drop index if exists click_bitmap_index on test_db.click;Query OK, 0 rows affected (0.03 sec)mysql> 

2. BloomFilter索引

2.1 BloomFilter索引介紹

是一種多哈希函數(shù)映射的快速查找算法,本質(zhì)上是一種位圖結(jié)構(gòu)。通常應(yīng)用在一些需要快速判斷某個元素是否屬于集合,但是并不嚴(yán)格要求100%正確的場合,因?yàn)锽loomFilter會告訴調(diào)用者一個元素存在或不存在一個集合。但存在不一定準(zhǔn)確

2.2 BloomFilter原理

實(shí)際上是由一個超長的二進(jìn)制位數(shù)組和一系列的哈希函數(shù)組成。二進(jìn)制位數(shù)組初始全部為0,當(dāng)給定一個元素時,這個元素會被一系列哈希函數(shù)計(jì)算映射出一系列的值,所有的值在位數(shù)組的偏移量處置為1。而對于一個待查詢的元素,也會用相同的哈希函數(shù)映射到位數(shù)組上,只要有一個哈希函數(shù)映射沒有命中之前的元素的偏移量,則不存在于集合中

下圖所示出一個m=18, k=3(m是該Bit數(shù)組的大小,k是Hash函數(shù)的個數(shù))的Bloom Filter示例。集合中的x、y、z三個元素通過3個不同的哈希函數(shù)散列到位數(shù)組中。當(dāng)查詢元素w時,通過Hash函數(shù)計(jì)算之后因?yàn)橛幸粋€比特為0,因此w不在該集合中

BloomFilter索引也是以Block為粒度創(chuàng)建的。每個Block中,指定列的值作為一個集合生成一個BloomFilter索引條目,用于在查詢是快速過濾不滿足條件的數(shù)據(jù)

2.3 BloomFilter索引的使用

創(chuàng)建表使用BloomFilter索引

mysql> create table order_tb(    -> user_id bigint,    -> order_date date,    -> city varchar(32),    -> url varchar(512)    -> ) distributed by hash(user_id, city) buckets 8    -> properties(    -> "bloom_filter_columns"="user_id,order_date"    -> );Query OK, 0 rows affected (0.07 sec)mysql> 

查看BloomFilter索引

mysql> show create table order_tb;

刪除BloomFilter索引

mysql> alter table test_db.order_tb set ("bloom_filter_columns" = "");Query OK, 0 rows affected (0.05 sec)mysql>

修改BloomFilter索引

mysql> alter table test_db.order_tb set ("bloom_filter_columns" = "user_id,city");Query OK, 0 rows affected (0.05 sec)mysql> 

2.4 Doris BloomFilter使用場景

  • 首先BloomFilter適用于非前綴過濾
  • 查詢會根據(jù)該列高頻過濾,而且查詢條件大多是in和=過濾
  • 不同于Bitmap, BloomFilter適用于高基數(shù)列。比如UserID。因?yàn)槿绻麆?chuàng)建在低基數(shù)的列上,比如”性別“列,則每個Block幾乎都會包含所有取值,導(dǎo)致BloomFilter索引失去意義

2.5 Doris BloomFilter使用注意事項(xiàng)

  • 不支持對Tinyint、Float、Double 類型的列建Bloom Filter索引
  • Bloom Filter索引只對in和=過濾查詢有加速效果
  • 如果要查看某個查詢是否命中了Bloom Filter索引,可以通過查詢的Profile信息查看

到此這篇關(guān)于Apache Doris的Bitmap索引和BloomFilter索引使用的文章就介紹到這了,更多相關(guān)Apache Doris索引內(nèi)容請搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!

標(biāo)簽: Linux Apache
主站蜘蛛池模板: 女人扒开腿让男人捅啪啪 | 女人张开腿让男人桶视频免费大全 | 日韩欧美在线观看 | 亚洲欧美高清视频 | 亚欧精品在线观看 | japonensis国产福利 | 99久久这里只精品国产免费 | 久章草视频 | 亚洲欧洲日产国码二区在线 | 一区二三国产 | 人与拘一级a毛片 | 国产美女精品视频免费观看 | 高清国产美女一级a毛片 | 中文字幕 亚洲 一区二区三区 | 国内免费视频成人精品 | 日本在线www | 亚洲精品成人一区 | 精品日韩二区三区精品视频 | 国产成人久视频免费 | 欧美日韩成人 | 美国三级视频 | 久久综合久美利坚合众国 | 成人免费看毛片 | 美女三级在线 | 成人三级视频在线观看 | 国产亚洲人成a在线v网站 | 综合精品在线 | 国产情侣久久精品 | ccav在线永久免费看 | 久草视频福利在线 | 国产成人精品在线观看 | 一级毛片免费不卡在线视频 | 日韩美女在线看免费观看 | 一本高清 | 日本高清色本免费现在观看 | 亚洲欧美日韩国产专区一区 | 看片免费黄 | 欧美日韩一区二区三区在线视频 | 99国产福利视频区 | 成人国产视频在线观看 | 欧美成网站 |