Indexes trungtt dhbkhn

14 700 0
Indexes trungtt dhbkhn

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Jennifer Widom Indexes Jennifer Widom Indexes Indexes  Primary mechanism to get improved performance on a database  Persistent data structure, stored in database  Many interesting implementation issues But we are focusing on userapplication perspective Jennifer Widom Indexes Functionality A B C 1 cat 2 … 2 dog 5 … 3 cow 1 … 4 dog 9 … 5 cat 2 … 6 cat 8 … 7 cow 6 … … … … Index on T.A T Jennifer Widom Index on T.A Indexes Functionality A B C 1 cat 2 … 2 dog 5 … 3 cow 1 … 4 dog 9 … 5 cat 2 … 6 cat 8 … 7 cow 6 … … … … Index on T.B T Jennifer Widom Index on T.A Indexes Functionality A B C 1 cat 2 … 2 dog 5 … 3 cow 1 … 4 dog 9 … 5 cat 2 … 6 cat 8 … 7 cow 6 … … … … Index on T.B Index on T.(A,B) T Jennifer Widom Indexes Utility  Index = difference between full table scans and immediate location of tuples  Orders of magnitude performance difference  Underlying data structures – Balanced trees (B trees, B+ trees) – Hash tables Jennifer Widom Select sName From Student Where sID = 18942 Many DBMS’s build indexes automatically on PRIMARY KEY (and sometimes UNIQUE) attributes Indexes Jennifer Widom Select sID From Student Where sName = ‘Mary’ And GPA > 3.9 Indexes Jennifer Widom Select sName, cName From Student, Apply Where Student.sID = Apply.sID Indexes Jennifer Widom Indexes Downsides of Indexes 1) 2) 3) Jennifer Widom Indexes Picking which indexes to create Benefit of an index depends on:  Size of table (and possibly layout)  Data distributions  Query vs. update load Jennifer Widom Indexes “Physical design advisors” Input: database (statistics) and workload Output: recommended indexes Query Optimizer Database statistics Query or update Indexes Best execution plan with estimated cost Jennifer Widom Indexes SQL Syntax Create Index IndexName on T(A) Create Index IndexName on T(A1,A2,…,An) Create Unique Index IndexName on T(A) Drop Index IndexName Jennifer Widom Indexes Indexes  Primary mechanism to get improved performance on a database  Persistent data structure, stored in database  Many interesting implementation issues But we are focusing on userapplication perspective

Indexes Jennifer Widom Indexes Indexes  Primary mechanism to get improved performance on a database  Persistent data structure, stored in database  Many interesting implementation issues But we are focusing on user/application perspective Jennifer Widom Indexes Functionality T Index on T.A A B C cat … dog … cow … dog … cat … cat … cow … … … … Jennifer Widom Indexes Functionality T Index on T.A Index on T.B A B C cat … dog … cow … dog … cat … cat … cow … … … … Jennifer Widom Indexes Functionality Index Indexon T.A on T.(A,B) Index on T.B T A B C cat … dog … cow … dog … cat … cat … cow … … … … Jennifer Widom Utility Indexes  Index = difference between full table scans and immediate location of tuples  Orders of magnitude performance difference  Underlying data structures – Balanced trees (B trees, B+ trees) – Hash tables Jennifer Widom Indexes Select sName From Student Where sID = 18942 Many DBMS’s build indexes automatically on PRIMARY KEY (and sometimes UNIQUE) attributes Jennifer Widom Indexes Select sID From Student Where sName = ‘Mary’ And GPA > 3.9 Jennifer Widom Indexes Select sName, cName From Student, Apply Where Student.sID = Apply.sID Jennifer Widom Downsides of Indexes Indexes 1) 2) 3) Jennifer Widom Picking which indexes to create Indexes Benefit of an index depends on:  Size of table (and possibly layout)  Data distributions  Query vs update load Jennifer Widom “Physical design advisors” Input: database (statistics) and workload Output: recommended indexes Database statistics Query or update Indexes Indexes Query Optimizer Best execution plan with estimated cost Jennifer Widom SQL Syntax Indexes Create Index IndexName on T(A) Create Index IndexName on T(A1,A2,…,An) Create Unique Index IndexName on T(A) Drop Index IndexName Jennifer Widom Indexes Indexes  Primary mechanism to get improved performance on a database  Persistent data structure, stored in database  Many interesting implementation issues But we are focusing on user/application perspective Jennifer Widom [...]...Picking which indexes to create Indexes Benefit of an index depends on:  Size of table (and possibly layout)  Data distributions  Query vs update load Jennifer Widom “Physical design advisors” Input: database (statistics) and workload Output: recommended indexes Database statistics Query or update Indexes Indexes Query Optimizer Best execution plan with estimated cost Jennifer Widom SQL Syntax Indexes. .. with estimated cost Jennifer Widom SQL Syntax Indexes Create Index IndexName on T(A) Create Index IndexName on T(A1,A2,…,An) Create Unique Index IndexName on T(A) Drop Index IndexName Jennifer Widom Indexes Indexes  Primary mechanism to get improved performance on a database  Persistent data structure, stored in database  Many interesting implementation issues But we are focusing on user/application

Ngày đăng: 24/05/2016, 15:19

Tài liệu cùng người dùng

Tài liệu liên quan