首页 > 代码库 > postgreSQL数据库(索引、视图)

postgreSQL数据库(索引、视图)

索引的含义与特点

  索引是一个单独的、存储在磁盘上的数据库结构,它们包含对数据所有记录的引用指针,postgresql列类型都可以被索引,对相关列索引是提高查询操作效率的最佳途径。例如,查询select * from table where num=10000.如果没有索引,必须遍历整个表,如果在num上创建索引,PostgreSQL不需要任何扫描,直接索引里面找10000.就知道这行的位置。

索引的优点有:1234 唯一性索引,保证数据完整性2提高查询数据3实现数据参考的完整性,加速表与表连接4.提高数据分组、排序操作的速度。

        缺点有:1索引建立耗费一定的物理空间2创建索引耗费时间、数据量的增加,创建索引所耗费的时间增加3数据维护时,索引也要需要动态维护

索引设计原则:1.索引并非越多越好,大量的索引占用大量磁盘空间,影响Insert、delete、update的速度

                    2.避免对经常更新的表建立索引,对经常查询的表应该创建索引,避免不必要增加字段

                    3.数据量小的表最好不用索引,数据量少,查询花费的时间可能比遍历索引的时间还要短

                    4.在条件表达中经常用的,不同值较多的列上建立索引,例如“性别字段”不需要建立索引

                    5.当唯一性是数据本身的特征时,制定唯一索引,保证列的完整性,提高查询速度

                    6.在频繁建立排序或分组的列上建立索引时,如果排序的列有多个,可以再这些列上建立组合索引

 视图

视图优点:1 简单化

              2 安全性,可以用数据库授权命令使每个用户对数据库的检索限制在特定的数据库对象上。但不能限定在特定的行和列上,通过视图,可以将用户限制在数据的不同子集上。

             3 保证逻辑数据的独立性

 

postgreSQL数据库(索引、视图)