gauss松鼠会吧 关注:60贴子:1,115
  • 0回复贴,共1

GaussDB索引背景信息

只看楼主收藏回复

索引可以提高数据的访问速度,但同时也增加了插入、更新和删除操作的处理时间。所以是否要为表增加索引,索引建立在哪些字段上,是创建索引前必须要考虑的问题。需要分析应用程序的业务处理、数据使用、经常被用作查询的条件或者被要求排序的字段来确定是否建立索引。
索引建立在数据库表中的某些列上。因此,在创建索引时,应该仔细考虑在哪些列上创建索引。
1、在经常需要搜索查询的列上创建索引,可以加快搜索的速度。
2、在作为主键的列上创建索引,强制该列的唯一性和组织表中数据的排列结构。
3、在经常使用连接的列上创建索引,可以加快连接的速度。
4、在经常需要根据范围进行搜索的列上创建索引,因为索引已经排序,其指定的范围是连续的。
5、在经常需要排序的列上创建索引,因为索引已经排序,这样查询可以利用索引的排序,加快排序查询时间。
6、在经常使用WHERE子句的列上创建索引,加快条件的判断速度。
7、为经常出现在关键字ORDER BY、GROUP BY、DISTINCT后面的字段建立索引。
说明:
1)索引创建成功后,系统会自动判断何时引用索引。当系统认为使用索引比顺序扫描更快时,就会使用索引。
2)索引创建成功后,必须和表保持同步以保证能够准确地找到新数据,这样就增加了数据操作的负荷。因此请定期删除无用的索引。
8、在开启逻辑复制的场景下,如需创建包含系统列的主键索引,必须将该表的REPLICA IDENTITY属性设置为FULL或是使用USING INDEX指定不包含系统列的、唯一的、非局部的、不可延迟的、仅包括标记为NOT NULL的列的索引。


IP属地:陕西1楼2023-11-23 08:56回复