Цитата(Vofka @ 08.02.10, 9:23)
Я б хотел узнать о "логике" индексов и их структуре (как они физически хранятся)
Самый простой индекс у симейства DBASE (CLIPPER,FOXPRO ну и прочие...).
Индекс нужен за тем, чтобы быстрее находить нужные записи в БД. в DBASE индекс представлен двоичным деревом. Вершина дерив в идеале - середина списка, у вершины два указателя, указывают на средины младших значений и старших. И т.д.
Таким образом для поиска нужной записи нужно сделать ln2 переходов и сравнений. а не сравнивать все записи с искомым ключем.
Если индексов много, то быстро можно находить информацию по разным ключам, но при это очень может возрастать время записи.
Никогда не бойся делать то, что не умеешь, помни - Ноев ковчег был построен любителем, профессионалы построили Титаник.
ЗиУП