Иерархические справочники с линейным временем доступа
Состав работы
|
|
|
|
Работа представляет собой zip архив с файлами (распаковать онлайн), которые открываются в программах:
- Microsoft Word
Описание
Введение
Разработка иерархических справочников – достаточно часто встречающаяся задача в бизнес-приложениях. Существует достаточно много алгоритмов хранения дерева в реляционных СУБД. В данной статье будет рассказано об одной из таких моделей. Ее достоинства – простота реализации, быстрота выборки и добавления нового элемента, а среди недостатков можно выделить относительную сложность вставки и перемещения данных, а также конечную глубину иерархии. Но те или иные недостатки имеются в любой схеме хранения иерархических данных в РСУБД.
Насколько хорош алгоритм
Для иерархических справочников мы определим несколько наиболее часто встречающихся задач, которые затрагивают иерархию.
получение всех потомков узла;
получение непосредственных потомков узла;
добавление потомка;
удаление узла с потомками;
перенос узла.
Иерархия Дьюи (Dewey)
Иерархический справочник может быть основан на алгоритме записи, используемом в системе десятичной классификации Дьюи (Dewey Decimal Classification). Нас в данный момент интересует не сам классификатор, а используемый в нем принцип. Попробую его описать.
Каждый узел содержит некоторый идентификатор, уникальный среди потомков его родителя. Каждый узел содержит путь от корневого элемента к данному. Путь реализуется с помощью идентификаторов, разделенных символом точки.
Например:
1 Организация «Рога и копыта».
1.1 Департамент «Рога».
1.1.1 Отдел продажи рогов.
1.1.2 Отдел покупки рогов.
1.1.2.1 Группа оценки качества рогов.
1.1.3 Отдел проката рогов.
1.2. Департамент «Копыта»
1.2.1 Отдел покупки копыт.
1.2.2 Отдел продажи копыт.
Как можно сразу заметить, при работе с подобным классификатором удобно использовать оператор LIKE. Если указывается путь, в котором начальные символы не являются маской, база данных может использовать индекс с операцией index scan с диапазонным поиском.
Создадим тестовый пример.
Разработка иерархических справочников – достаточно часто встречающаяся задача в бизнес-приложениях. Существует достаточно много алгоритмов хранения дерева в реляционных СУБД. В данной статье будет рассказано об одной из таких моделей. Ее достоинства – простота реализации, быстрота выборки и добавления нового элемента, а среди недостатков можно выделить относительную сложность вставки и перемещения данных, а также конечную глубину иерархии. Но те или иные недостатки имеются в любой схеме хранения иерархических данных в РСУБД.
Насколько хорош алгоритм
Для иерархических справочников мы определим несколько наиболее часто встречающихся задач, которые затрагивают иерархию.
получение всех потомков узла;
получение непосредственных потомков узла;
добавление потомка;
удаление узла с потомками;
перенос узла.
Иерархия Дьюи (Dewey)
Иерархический справочник может быть основан на алгоритме записи, используемом в системе десятичной классификации Дьюи (Dewey Decimal Classification). Нас в данный момент интересует не сам классификатор, а используемый в нем принцип. Попробую его описать.
Каждый узел содержит некоторый идентификатор, уникальный среди потомков его родителя. Каждый узел содержит путь от корневого элемента к данному. Путь реализуется с помощью идентификаторов, разделенных символом точки.
Например:
1 Организация «Рога и копыта».
1.1 Департамент «Рога».
1.1.1 Отдел продажи рогов.
1.1.2 Отдел покупки рогов.
1.1.2.1 Группа оценки качества рогов.
1.1.3 Отдел проката рогов.
1.2. Департамент «Копыта»
1.2.1 Отдел покупки копыт.
1.2.2 Отдел продажи копыт.
Как можно сразу заметить, при работе с подобным классификатором удобно использовать оператор LIKE. Если указывается путь, в котором начальные символы не являются маской, база данных может использовать индекс с операцией index scan с диапазонным поиском.
Создадим тестовый пример.
Другие работы
Проектирование и разработка кран козлового грузоподъемностью 50 тонн
alfFRED
: 3 ноября 2012
1 Введение
2 Назначение
3 Техническая характеристика
4 Описание
5 Расчёты
5.1 Расчёт устойчивости крана
5.2 Расчёт механизма подъема
5.3 Расчёт механизма перемещения крана
5.4 Расчёт механизма перемещения тележки
5.5 Расчёт металлоконструкции
6 Литература
10 руб.
Сопротивление материалов СПбГУПТД 2023 Задача 3 Схема 6 Вариант 5
Z24
: 15 ноября 2025
Для заданных двух систем балок (рис. 3.1) требуется написать выражения Q и М для каждого участка в общем виде, построить эпюры Q и М, найти максимальное М и подобрать:
1) для схемы а деревянную балку круглого поперечного сечения при [σ] = 80 МПа;
2) для схемы б стальную балку двутаврового поперечного сечения при [σ] = 160 МПа.
550 руб.
Лабораторная работа №5 (3.6) по дисциплине: Метрология, стандартизация, сертификация. Вариант 18
Учеба "Под ключ"
: 16 сентября 2016
Лабораторная работа № 3.6
По дисциплине: «Метрология, стандартизация, сертификация»
Тема: «Измерение частоты и периода электрических сигналов»
Исходные данные:
Таблица 5.1. Значения частоты F1 генератора сигнала при измерении частоты и периода.
Последняя цифра пароля: 8
F1=0,075 кГц
Таблица 5.2. Значения частоты F2 генератора сигнала при измерении частоты и периода.
предпоследняя цифра пароля: 1
F2=75 кГц
450 руб.
Контрольная работа по дисциплине: «Культура речи и деловое общение»
Nastya2000
: 19 февраля 2016
Задания к лекции “Современный русский язык”:
1. Каким словарем можно воспользоваться, чтобы узнать род существительных: “визави”, “протеже”. (см. глоссарий)
2. Каким словарем можно воспользоваться, чтобы узнать происхождение слов: карболка, караван. (см. глоссарий)
3. Выскажите свое мнение по одному из поставленных вопросов (2-3-предложения):
1) В какой форме в современном русском языке используются пословицы и поговорки?
2) Что такое мужской и женский язык, что сегодня происходит с языком
200 руб.