This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
admin:admin:applications:design [2011/04/12 17:59] 127.0.0.1 external edit |
admin:admin:applications:design [2016/06/28 22:38] (current) |
||
---|---|---|---|
Line 109: | Line 109: | ||
* **Criteria Columns** - Most administrators index all of the columns used in criteria. Omnidex's SQL engine can process criteria that is not indexed, but it is affordable enough that administrators usually start by indexing all of the columns used in criteria. Each index can also have options, such as textual indexes and case sensitivity. | * **Criteria Columns** - Most administrators index all of the columns used in criteria. Omnidex's SQL engine can process criteria that is not indexed, but it is affordable enough that administrators usually start by indexing all of the columns used in criteria. Each index can also have options, such as textual indexes and case sensitivity. | ||
- | * **Aggregations** - Simple counts do not require any special indexing beyond indexing the criteria columns and optimizing the table joins. More complex aggregations, such as distinct counts, sums, averages, mins and maxs, require an index containing the group by columns and the aggregated columns in any order. When there are a lot of combinations of columns for aggregations, larger indexes can be created that satisfy multiple scenarios. | + | * **Aggregations** - Simple counts and distinct counts do not require any special indexing beyond indexing the criteria columns and optimizing the table joins. More complex aggregations, such as sums, averages, mins, maxs, and grouped distinct counts require an index containing the group by columns and the aggregated columns in any order. Multi-column indexes may be needed for high-cardinality group by columns as well. When there are a lot of combinations of columns for aggregations, larger indexes can be created that satisfy multiple scenarios. |
* **Ordering** - Ascending order by clauses are optimized with an index containing the order by columns. These indexes often overlap those created to optimize aggregations. | * **Ordering** - Ascending order by clauses are optimized with an index containing the order by columns. These indexes often overlap those created to optimize aggregations. |