自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

表格存儲(chǔ) SQL 查詢多元索引

網(wǎng)絡(luò)
多元索引是表格存儲(chǔ)產(chǎn)品中一個(gè)重要的功能,多元索引使用倒排索引技術(shù)為表格存儲(chǔ)提供了非主鍵列上的快速檢索功能,另外也提供了統(tǒng)計(jì)聚合功能。

 [[423572]]

多元索引是表格存儲(chǔ)產(chǎn)品中一個(gè)重要的功能,多元索引使用倒排索引技術(shù)為表格存儲(chǔ)提供了非主鍵列上的快速檢索功能,另外也提供了統(tǒng)計(jì)聚合功能。表格存儲(chǔ)近期開(kāi)放了SQL查詢功能,SQL引擎默認(rèn)從原始表格中讀取數(shù)據(jù),非主鍵列上的查詢需要掃描全表。開(kāi)啟了多元索引之后,如果一個(gè)查詢的過(guò)濾條件或者統(tǒng)計(jì)聚合可以下推至多元索引執(zhí)行,那么SQL引擎將部分查詢計(jì)劃轉(zhuǎn)換為多元索引請(qǐng)求,將從多元索引中獲取數(shù)據(jù),提高查詢效率。

一 多元索引SQL算子支持

1 前提條件

在使用SQL查詢多元索引之前,首先需要在表格上創(chuàng)建多元索引。如果多元索引包含SQL語(yǔ)句中涉及的數(shù)據(jù)列,則SQL引擎會(huì)通過(guò)多元索引讀取數(shù)據(jù)并下推多元索引支持的算子。例如有一張表exampletable有a, b, c, d四列,多元索引中包含了b, c, d三列,只有當(dāng)SQL語(yǔ)句中只涉及b, c, d中的數(shù)據(jù)列時(shí),才會(huì)從多元索引讀取數(shù)據(jù)。

  1. SELECT a, b, c, d FROM exampletable; /* 多元索引不包含a,b,c,d,掃描全表讀取數(shù)據(jù),不支持算子下推 */SELECT b, c, d FROM exampletable;    /* 多元索引包含b,c,d,通過(guò)多元索引讀取數(shù)據(jù),支持算子下推 */ 

2 支持下推的算子

二 多元索引SQL查詢實(shí)戰(zhàn)

為了直觀地展示SQL查詢多元索引功能,下文將以某自行車租賃商的訂單表為例,使用多元索引上的SQL功能完成一些簡(jiǎn)單的查詢分析任務(wù)。某自行車租賃商的訂單表如下:

整張表格名為trips,每一筆租車訂單都有唯一的訂單號(hào)作為主鍵,訂單中記錄了租車時(shí)長(zhǎng)、開(kāi)始日期、結(jié)束日期、開(kāi)始站點(diǎn)、結(jié)束站點(diǎn)等信息。表格中包含120萬(wàn)行數(shù)據(jù),在沒(méi)有開(kāi)啟多元索引的情況下對(duì)表格行數(shù)進(jìn)行統(tǒng)計(jì),查詢會(huì)因?yàn)槌鰭呙枧漕~限制而終止。

同樣地,如果以非主鍵列作為查詢條件進(jìn)行查詢,也會(huì)因?yàn)樯婕叭頀呙璩^(guò)掃描配額而被終止。

為了能夠根據(jù)非主鍵列的值進(jìn)行查詢以及統(tǒng)計(jì)聚合,需要?jiǎng)?chuàng)建覆蓋全部數(shù)據(jù)列的多元索引。對(duì)于數(shù)據(jù)量比較大的表格,需要較長(zhǎng)的時(shí)間等待多元索引同步完成。

1 過(guò)濾條件下推

在開(kāi)啟多元索引之后,即可在非主鍵列上進(jìn)行條件查詢。例如,下圖查詢起點(diǎn)編號(hào)31208到起點(diǎn)編號(hào)31209的租車訂單,借助多元索引,SQL引擎能夠在500毫秒之內(nèi)查詢到全表中滿足條件的140行記錄。

多元索引支持多個(gè)條件的組合,例如查詢2010年10月1日當(dāng)天,站點(diǎn)31208的訂單。由于外國(guó)10月1日不放假,那天的訂單數(shù)量并不是很多。

2 統(tǒng)計(jì)聚合下推

除了非主鍵列查詢,多元索引還提供了強(qiáng)大的統(tǒng)計(jì)聚合能力。在未創(chuàng)建多元索引的時(shí)候無(wú)法統(tǒng)計(jì)行數(shù),但是有了多元索引,能在500毫秒左右查詢到行數(shù)、站點(diǎn)數(shù)、平均租車時(shí)長(zhǎng)等信息。

同樣地,分組統(tǒng)計(jì)聚合也可以快速獲取結(jié)果,例如列出每個(gè)站點(diǎn)總訂單數(shù)目。

過(guò)濾條件和統(tǒng)計(jì)聚合可以一起使用,例如查詢2010年10月1日當(dāng)天每個(gè)站點(diǎn)訂單數(shù)目。

3 TopN下推

SQL中包含ORDER BY和LIMIT的語(yǔ)句成為TopN查詢,多元索引支持快速查詢TopN,圖中的查詢展示了最近的10條數(shù)據(jù)。

責(zé)任編輯:梁菲 來(lái)源: 阿里云云棲號(hào)
相關(guān)推薦

2021-09-09 14:11:58

表格存儲(chǔ) SQL

2010-10-21 14:54:32

查詢SQL Serve

2021-08-17 10:39:54

SQL Server數(shù)據(jù)庫(kù)優(yōu)化

2010-02-06 09:43:52

SQL Server

2011-07-21 09:19:38

SQL ServerDenali

2010-09-28 11:07:37

SQL索引

2010-07-19 16:43:07

SQL Server選

2022-06-08 07:34:02

持久化數(shù)據(jù)存儲(chǔ)原理索引存儲(chǔ)格式

2024-11-27 09:46:34

2024-03-29 08:10:43

索引失效SQL

2025-03-31 08:20:00

SQL 查詢數(shù)據(jù)庫(kù)dsq

2010-11-12 10:53:41

sql server表

2010-09-16 13:42:55

SQL SERVER索

2022-06-02 15:34:45

vmstorage監(jiān)控

2011-08-10 10:06:54

存儲(chǔ)過(guò)程SQL Server IP地址歸屬地查詢

2010-09-26 15:29:13

sql查詢分頁(yè)

2010-07-19 16:36:13

SQL Server視

2010-09-24 19:18:22

SQL索引

2009-09-18 14:33:37

LINQ to SQLSQL命令

2010-07-07 10:54:22

SQL Server索
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)