специалист DBA
Обработка баз данных.
Пока что задача в общих чертах: Сортировка базы данных по критериям, которым присвоена определенная релевантность.
Описание задачи:
На первом этапе для базы данных – БД нужно разработать алгоритм сортировки по заданным критериям без привязки к СУБД.
БД постоянно обновляется и формируется из каждого нового запроса.
Описание работы алгоритма:
1. Запрос к БД состоит из строки, которая сформирована из некоего количества критериев – столбцов
2. После заполнения этих критериев – формирование запроса, они становятся частью БД – добавляется новая строка в БД
3. Результатом запуска алгоритма должна быть таблица из k наиболее релевантных записей к вновь сформированному запросу
Детали:
• критерии, применяемые для сортировки, имеют определенный вес по степени их приоритетности
• критерии преимущественно цифровые, небольшая часть - текстовые
• текстовые критерии заданные, для которых производится действие «совпадает/не совпадает»
• алгоритм сортировки должен обеспечивать эффективный результат – максимально быстро производить сортировку большого массива данных и выводить задаваемое количество наиболее релевантных к запросу записей – k
Вводные параметры:
1. Вес/приоритетность критериев
2. Количество выводимых релевантных к запросу записей – k
3. Критерии – столбцы
Цель:
Разработать детальный алгоритм в виде блок-схемы
Внедрить алгоритм на примере MS Office и VBA для тестирования
Тех задание:
1. Есть база данных (БД), состоящая из 50 таблиц: таблицы А1 - А48 , таблицы Parameters и таблицы Results.
2. В БД поступают запросы.
3. Каждый запрос состоит из N полей. Все эти N полей также имеются в таблицах А1- А48 и таблице Results.
4. Поля таблиц А1 - А48 и Results связаны между собой транзитивными отношениями приоритетности строгого порядка. Эти соотношения задаются в таблице Parameters, путем присваивания ранга (натуральное число от 1 до N). Чем меньше ранг поля – тем оно приоритетней. Например, поле с рангом 1 приоритетней поля с рангом 2 и/или 3. Поле с рангом 2 приоритетнее полей с рангом 3+. У разных полей ранги должны быть разные. Таким образом таблица Parameters состоит из двух полей: 1 - название полей таблиц А1 - А48, 2 – ранг этих полей. Поля с рангами 1, 2 и 3 являются критическими.
5. Поля могут быть двух типов: текстовые или числовые (действительные числа). Критические поля могут приобретать предопределённое количество вариантов значений. Поле с рангом «один» – может иметь 2 варианта значений, поле с рангом «два» – 4 варианта значений, а поле с рангом «три» – 6 вариантов.
6. Все запросы, поступающие в БД, делятся на 48 видов, что соответствует числу возможных комбинаций значений критических полей (2х4х6=48). Для каждого из 48 видов запросов существует соответствующая таблица Аi , в которую он добавляется в виде верхней записи. Значения полей последнего запроса становятся значениями полей новой самой верхней записи соответствующей таблицы.
7. В результате каждого выполнения алгоритма все записи таблицы Аi, в которой в результате пришедшего запроса добавилась новая верхняя запись сортируются сверху вниз, начиная со второй, по степени близости к значениям полей верхней записи.
a. Т.к. значения критических полей для всех записей любой таблицы Аi всегда одинаковые, то сортировка производится по некритическим полям, с учетом их ранга приоритетности.
b. Чем выше находится запись – тем меньше значения ее более приоритетных полей отличаются от значений данных полей верхней записи (для числовых полей критерием сортировки является модуль разницы, для текстовых - проверяется полное совпадение).
8. В конце работы алгоритм выводит k верхних записей из вновь отсортированной таблицы Аi в таблицу Results.
9. Скорость работы алгоритма должна быть максимально стабильной при росте количества записей в таблицах БД.
10. Вводные параметры
a. Таблица Parameters
b. k - количество записей, которые выводятся в таблицу Results
Додатки 1
-
укажите хоть название СУБД
-
Добрый день.
Пока данные не могу уточнить.
Суть такова:
Есть база данных. Есть критерии фильтрации этой базы данных.
Каждому критерию присвоена определенная степень значимости.
Формируется запрос по поиску информации в БД из нескольких критериев.
Нужно: чтобы производилась фильтрация по этим критериям с учетом степени значимости конкретных критериев.
Это пока что на пальцах объясняю.
Насчет СУБД пока не могу ответить.
Для такой задачи, какая Вам нужна информация, чтобы можно было говорить предметно?
-
Актуальні фриланс-проєкти в категорії Бази даних та SQL
Потрібно розібрати бд так щоб на виході вийшли файли в форматіЄ БД форума і файли форума XENFORO 1.6.потрібно зробити файл імпорту в інший скріпт, але потрібні всі поля зберегти. я надаю файли ТЗ і файл FAQ які саме поля мені потрібні. ТЗ файли на кожен окремий тип параметрів. тобто на виході під кожне тз повинно бути 2 файли імпорта (один… Бази даних та SQL, Парсинг даних ∙ 3 хвилини тому ∙ 3 ставки |
Потрібен Power BI спеціаліст для побудови управлінської звітності на базі BAS Бухгалтерія КОРППро компаніюМи є дистриб’ютором міжнародних спортивних брендів в Україні. Облік ведеться в BAS Бухгалтерія КОРП.Шукаємо спеціаліста, який допоможе побудувати систему управлінської звітності для керівництва компанії на базі Power BI.Важливо: нас цікавить не просто візуалізація… Бази даних та SQL, Бухгалтерські послуги ∙ 3 дні 13 годин тому ∙ 6 ставок |
Технічне завдання: Інтеграція чат-бота Telegram з BAS1. Загальний опис Необхідно реалізувати інтеграцію чат-бота з системою BAS для передачі та запису даних про товари (замовлення). 2. Вхідні дані (що передає чат-бот): ID групи Назва товару (з кодом товару) Ціна товару 3. Логіка роботи: При натисканні накнопку Замовити Чат-бот… Автоматизація управління підприємством, Бази даних та SQL ∙ 3 дні 16 годин тому ∙ 19 ставок |
Интеграция данных 1СОрганізувати якісну підготовку та перетік данніх з 1С у BigQuery для подальшого використання у Looker:Організувати данізгідно того, які поля потрібні.Підготувати зрозумілу структуру таблиць і проміжних наборів даних, на яких будуватимуться дашборди.Налаштувати завантаження… Бази даних та SQL, Обробка даних ∙ 5 днів 7 годин тому ∙ 9 ставок |
Розробка простого системи контролінгу та обліку управлінського в Google Sheets «під ключ»Назва завдання: Розробка простого системи контролінгу та обліку управлінського в Google Sheets "під ключ" для будівельної компанії в Польщі (+ онлайн навчання та допомога при впровадженні) Про компанію, контекст і мою основну проблему Доброго дня, Шукаю досвідченого спеціаліста… Бази даних та SQL, Бухгалтерські послуги ∙ 6 днів 12 годин тому ∙ 36 ставок |