You are on page 1of 1

Index awareness Index awareness is the ability to take advantage of the indexes on key column to speed data retrieval.

The objects that you create in the universe are based on database columns that are meaningful to an end user. Let us take an example of we have a customer table, in customer table we have customer name, customer id, customer address columns. In this situation the customer table typically has primary key (e.g. in integer) that is not meaningful to the end user, but which is very useful for DB performance. When you set up index awareness in designer, you tell designer which database columns are primary and foreign keys. This can have dramatic effect on query performance in the following ways. Designer can generate SQL that filters in the most efficient way. This is particularly more important in a start schema. If you build a query that involves filtering on a value from dimension table. Designer can apply the filter directly on the fact table using table foreign key. This eliminates unnecessary joins to dimensions tables. Designer does not ignore duplicates with index awareness. If two customers have same name. Designer retrieves only one unless it is aware that each customer has a separate primary key. To setup index awareness open the properties of objects, open Keys tab. Click insert and add respective PK and FK. Indexes allow the database application to find data fast; without reading the whole table. An index can be created in a table to find data more quickly and efficiently. The users cannot see the indexes; they are just used to speed up searches/queries. Note: Updating a table with indexes takes more time than updating a table without (because the indexes also need an update). So you should only create indexes on columns (and tables) that will be frequently searched against.

You might also like