1,126
edits
(Added Table Segment Size Optimization Graphic.) |
m (Added more detail about native database support for segmentation.) |
||
| Line 1: | Line 1: | ||
== Introduction == | == Introduction == | ||
In order to keep database queries fast, OnDemand uses a concept called "database table segmentation". | In order to keep database queries fast, OnDemand uses a concept called "database table segmentation". The term 'table segmentation' refers to splitting extremely large tables into 'segments' of smaller tables for performance and/or ease of maintenance. Although the latest versions of database engines can do this natively, at the time CMOD was created, there was no built-in support for this functionality, so it still uses the old style segmentation to achieve the scalability and speed that customers require. | ||
When an end user performs a search, CMOD performs the search on one or more tables, based on the date range contained in individual tables. This 'date range' is called the 'segment date'. | |||
Before DB2 supported its own table segmentation natively, the Content Manger OnDemand developers decided to split index data into tables of 10 million rows each. Using this method keeps search performance linear, as only the tables containing documents in the date range you're looking for ( for example, 3 months, or 1 year) are actually searched. | Before DB2 supported its own table segmentation natively, the Content Manger OnDemand developers decided to split index data into tables of 10 million rows each. Using this method keeps search performance linear, as only the tables containing documents in the date range you're looking for ( for example, 3 months, or 1 year) are actually searched. | ||