博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《Greenplum企业应用实战》一3.5 索引
阅读量:7065 次
发布时间:2019-06-28

本文共 1050 字,大约阅读时间需要 3 分钟。

本节书摘来自华章出版社《Greenplum企业应用实战》一书中的第3章,第3.5节,作者 何勇 陈晓峰,更多章节内容可以访问云栖社区“华章计算机”公众号查看

3.5 索引

Greenplum支持B-tree、bitmap、函数索引等,在这里我们简单介绍一下B-tree索引:

testDB=# create table test_index_1 as select * from test_distribute_1;SELECT 5000000testDB=# select id,flag from test_index_1 where id=100; id  | flag -----+------ 100 |    0(1 row)Time: 2606.125 ms

接下来我们在flag字段上创建bitmap索引:

testDB=# CREATE INDEX test_index_1_idx ON test_index_1 (id);CREATE INDEXTime: 34997.881 ms再次查看执行计划,采用了索引扫描,如下所示。testDB=# explain select id,flag from test_index_1 where id=100;                                  QUERY PLAN                                          ------------------------------------------------------------------------------- Gather Motion 1:1  (slice1; segments: 1)  (cost=0.00..200.84 rows=1 width=12)   ->  Index Scan using test_index_1_idx on test_index_1  (cost=0.00..200.84 rows=1 width=12)         Index Cond: id = 100(3 rows)

建好索引后,再次执行上面的查询语句,有索引的情况下,用了23毫秒,相比未创建索引时2606毫秒,有了质的提升。

另外,表关联字段上的索引和appen-only压缩表上的索引都能带来较大的性能提升,虽然在数据库应用中,索引的应用场景不多,但是读者仍然可以结合实际的场景来运用索引。

转载地址:http://vwsll.baihongyu.com/

你可能感兴趣的文章
js中继承的几种实现方式
查看>>
Kotlin开发遇到问题汇总
查看>>
理解原型其实是理解原型链
查看>>
ES6语法(二) 函数
查看>>
《编程珠玑》读书笔记(2,3)
查看>>
this 绑定题目简析
查看>>
iOS标准库中常用数据结构和算法之查找
查看>>
每天学习2小时,17年前端经验分享,让你前端之路不再迷茫
查看>>
node学习记录(1)
查看>>
Eureka微服务实战-服务提供者
查看>>
简单的原生ajax
查看>>
h5开发坑点小总结
查看>>
几分钟内提升技能的8个 JavaScript 方法!
查看>>
mac显示隐藏文件
查看>>
Android 插件化原理-好文收集(陆续中。。。)
查看>>
双亲委派模型与Tomcat类加载架构
查看>>
Highcharts tooltip显示数量和百分比
查看>>
小程序兼容iphoneX(齐刘海)代码,mpvue的写法
查看>>
小米设备怎么不ROOT激活Xposed框架的步骤
查看>>
Vue Router
查看>>