INDEXING

INDEXING is a fundamental technique in COMPUTER-SCIENCE used to speed up the retrieval of records from a dataset. In DATABASE-MANAGEMENT-SYSTEMS, an index is a data structure that improves the speed of data retrieval operations on a database table at the cost of additional storage and slower writes. For more on the basics, see Wikipedia's entry on Database Indexing.

Methodologies and Structures

Common indexing structures include the B-TREE, which is widely used in RELATIONAL-DATABASES like MYSQL and POSTGRESQL. Another approach is HASH-INDEXING, which is efficient for equality comparisons. Advanced systems might use a BITMAP-INDEX for columns with low cardinality. Technical implementation details are provided by the Oracle Documentation.

Web and Search Applications

In the context of the web, SEARCH-ENGINE-INDEXING is the process of a search engine collecting and storing data for use in search results. This involves CRAWLING the web and creating an INVERTED-INDEX. This allows engines like GOOGLE to provide results in milliseconds. Guidance on how this affects SEARCH-ENGINE-OPTIMIZATION can be found at Google Search Central.