Jump to content

Суть

В вычислительной технике GiST или обобщенное дерево поиска — это структура данных и API , которые можно использовать для построения различных дисковых деревьев поиска . GiST — это обобщение дерева B+ , обеспечивающее параллельную и восстанавливаемую инфраструктуру дерева поиска со сбалансированной высотой без каких-либо предположений о типе хранимых данных или обслуживаемых запросах. GiST можно использовать для простой реализации ряда известных индексов, включая B+-деревья , R-деревья , hB-деревья , RD-деревья и многие другие; это также позволяет легко разрабатывать специализированные индексы для новых типов данных. Его нельзя использовать напрямую для реализации деревьев без балансировки по высоте, таких как квадратные деревья или префиксные деревья (попытки), хотя, как и префиксные деревья, он поддерживает сжатие, включая сжатие с потерями . GiST можно использовать для любого типа данных, который можно естественным образом упорядочить в иерархию расширенных наборов . Он не только расширяем с точки зрения поддержки типов данных и структуры дерева, но и позволяет разработчику расширения поддерживать любые предикаты запросов по своему выбору.

GiST является примером расширяемости программного обеспечения в контексте систем баз данных: он позволяет легко развивать систему баз данных для поддержки новых древовидных индексов. Это достигается за счет выделения базовой системной инфраструктуры из узкого API , которого достаточно для отражения специфичных для приложения аспектов широкого спектра проектов индексов. Код инфраструктуры GiST управляет расположением страниц индекса на диске, алгоритмами поиска индексов и удаления из индексов, а также сложными деталями транзакций, такими как блокировка на уровне страниц для высокого уровня параллелизма и ведение журнала с упреждающей записью для восстановления после сбоя. Это позволяет авторам новых древовидных индексов сосредоточиться на реализации новых функций нового типа индексов — например, способа описания подмножеств данных для поиска — не становясь при этом экспертами во внутреннем устройстве системы баз данных.

Хотя изначально GiST был разработан для ответа на логические запросы выбора, он также может поддерживать поиск ближайшего соседа и различные формы статистической аппроксимации больших наборов данных.

Реализации

[ редактировать ]

Наиболее широко используемая реализация GiST находится в PostgreSQL реляционной базе данных ; он также был реализован в Informix Universal Server и как отдельная библиотека libgist.

Реализация PostgreSQL GiST включает поддержку ключей переменной длины, составных ключей, управления параллелизмом и восстановления; эти функции унаследованы всеми расширениями GiST. Существует несколько дополнительных модулей, разработанных с использованием GiST и распространяемых вместе с PostgreSQL. Например:

  • rtree_gist, btree_gist — реализация GiST R-дерева и B-дерева
  • intarray — поддержка индексов для одномерного массива int4
  • tsearch2 — тип данных с возможностью поиска (полнотекстовый) с индексированным доступом.
  • ltree — типы данных, индексированные методы доступа и запросы к данным, организованным в виде древовидных структур.
  • hstore — хранилище данных (ключ, значение)
  • куб — ​​тип данных, представляющий многомерные кубы

Реализация PostgreSQL GiST обеспечивает поддержку индексации для PostGIS ( географической информационной системы системы BioPostgres ) и биоинформатической .

[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: d1f84c843275d1b074ec9976f2be03a9__1642798920
URL1:https://arc.ask3.ru/arc/aa/d1/a9/d1f84c843275d1b074ec9976f2be03a9.html
Заголовок, (Title) документа по адресу, URL1:
GiST - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)