×
Показано с 1 по 27 из 27
  1. Модератор "v.8" Аватар для Flatter
    Регистрация
    20.11.2002
    Адрес
    Вологда
    Сообщений
    125

    Оптимальная БД

    Как добиться оптимальной структуры БД? Ведь в КИС есть несколько составляющих, которые используют как свои данные, так и данные составляющих. Как избавится от избыточности, как добиться наилучшей синхронизации?
    Поделиться с друзьями

  2. Фырчун Аватар для Dracosha Andrew
    Регистрация
    07.02.2002
    Адрес
    Санкт-Петербург
    Сообщений
    2,259
    Как избавится от избыточности, как добиться наилучшей синхронизации?
    А надо ли избавлятся от избыточности?

    Кстати, с синхронизацией вопрос давно решен....
    Всех благ!!!
    Чувелёв Андрей

    ps: Всё вышеизложенное является моим частным мнением и не может претендовать на полноту изложения.

  3. Модератор "v.8" Аватар для Flatter
    Регистрация
    20.11.2002
    Адрес
    Вологда
    Сообщений
    125
    Простой пример…
    Бухгалтерский учет оперирует информацией о контрагентах, CRM тоже. Пересечений между этими составляющими не особо много. Держать все данные этих составляющих вместе не всегда выгодно, вот и получается избыточность информации о контрагентах и вопрос о синхронизации этих данных. Легко может получится, что либо в бух учете не хватает каких либо данных которые знает CRM или, что данные разняться!

  4. Фырчун Аватар для Dracosha Andrew
    Регистрация
    07.02.2002
    Адрес
    Санкт-Петербург
    Сообщений
    2,259
    Простой пример…
    Ну вот, опят возвращаемся к лоскутной автоматизации.
    Не может быть таких проблем, если система одна.
    Всех благ!!!
    Чувелёв Андрей

    ps: Всё вышеизложенное является моим частным мнением и не может претендовать на полноту изложения.

  5. Модератор "v.8" Аватар для Flatter
    Регистрация
    20.11.2002
    Адрес
    Вологда
    Сообщений
    125
    Общая БД панацея?
    _______________________________________

    Как вариант для решения данной проблемы я пытался реализовать следующее:
    Рассматриваем БД как множества… N множеств имеют какие-то пересечения, находим простейшие, не дробимые, и считаем их основой. Из получившегося набора множеств путем объединения получаем любое из больших.

    Любое из простейших множеств считаем самостоятельной БД со своей структурой и методами обработки данных, методами ссылочной целостности и т.д.

  6. Модератор "v.8" Аватар для Flatter
    Регистрация
    20.11.2002
    Адрес
    Вологда
    Сообщений
    125
    И при этом подходе мы не получаем лоскутной системы! Мы получаем гибко настраиваемые рабочие места, более легкое сопровождение. Все эти простейшие БД объединяются и работают как одно целое!

  7. Фырчун Аватар для Dracosha Andrew
    Регистрация
    07.02.2002
    Адрес
    Санкт-Петербург
    Сообщений
    2,259
    Рассматриваем БД как множества…
    При таком подходе требуется сначала дать определение базе данных.
    Всех благ!!!
    Чувелёв Андрей

    ps: Всё вышеизложенное является моим частным мнением и не может претендовать на полноту изложения.

  8. Модератор "v.8" Аватар для Flatter
    Регистрация
    20.11.2002
    Адрес
    Вологда
    Сообщений
    125
    Информационная область – совокупность конфигурации и БД, логически завершенная база данных. Любая ИО может быть полностью или частично использована в другой ИО. Дочерняя ИО т.е. ИО объекты (конфигурации) которой использованы в «материнской» ИО могут быть изменены только из самой «дочерней» ИО. Материнская ИО может только использовать эти объекты в собственной конфигурации. Работа с данными же происходит вне зависимости от принадлежности ИО т.е. данные дочерней ИО могут быть изменены как из дочерней так и материнской ИО.

    Информационная область состоит из:
    1. Конфигурации (структура данных, интерфейсные модули, методы работы с данными)
    2. Движок БД (алгоритмы получения/записи данных)
    3. Модули доступа к данным
    a. MS SQL Server Engine
    b. Oracle Engine
    c. …

    _____________
    Извиняюсь за сумбур ... Просто однажды Писал ТЗ "Комплес разработки бизнес приложений"
    Последний раз редактировалось Flatter; 17.04.2003 в 18:08.

  9. Фырчун Аватар для Dracosha Andrew
    Регистрация
    07.02.2002
    Адрес
    Санкт-Петербург
    Сообщений
    2,259
    Информационная область
    Это что то новое...

    Я не случайно спросил по определение базы данных. Существуещее совсем не подходит к обсуждению поднимаемых здесь вопросов.

    "База данных - набор данных и правил их обработки."
    Слишком общее не правда ли?
    Всех благ!!!
    Чувелёв Андрей

    ps: Всё вышеизложенное является моим частным мнением и не может претендовать на полноту изложения.

  10. Модератор "v.8" Аватар для Flatter
    Регистрация
    20.11.2002
    Адрес
    Вологда
    Сообщений
    125
    Информационная область - это то, чего мне жутко не хватает... Ничего подобного реализованного я не видел... Поэтому в свое время и стал разрабатывать "Комплес разработки бизнес приложений". Но уперся в то, что затраты и риск огромные...

  11. Фырчун Аватар для Dracosha Andrew
    Регистрация
    07.02.2002
    Адрес
    Санкт-Петербург
    Сообщений
    2,259
    Информационная область - это то, чего мне жутко не хватает...
    Максим, давайте проработаем теоретичеускую часть и кто-нибудь (может и я) реализует.
    Всех благ!!!
    Чувелёв Андрей

    ps: Всё вышеизложенное является моим частным мнением и не может претендовать на полноту изложения.

  12. Модератор "v.8" Аватар для Flatter
    Регистрация
    20.11.2002
    Адрес
    Вологда
    Сообщений
    125
    Почему бы и нет... Правда наработки, которые у меня были сделаны в этом направлении частично утеряны... Прикрепляю файлик в котором частично описано, что я хотел сделать... Образно понять можно хоть там и недоработано... Совместными усилиями можно доработать до ума...
    Вложения Вложения

  13. Фырчун Аватар для Dracosha Andrew
    Регистрация
    07.02.2002
    Адрес
    Санкт-Петербург
    Сообщений
    2,259
    ;(

    Маловато ....

    Ладно, буду думать.
    К TOT: если что получиться интересное оформим в виде статьи?
    Всех благ!!!
    Чувелёв Андрей

    ps: Всё вышеизложенное является моим частным мнением и не может претендовать на полноту изложения.

  14. Модератор "v.8" Аватар для Flatter
    Регистрация
    20.11.2002
    Адрес
    Вологда
    Сообщений
    125
    Остальное это объектная модель с комментариями, но разрабатывал ее не я, и публиковать не имею права, так как она была частично взята для реализации одного коммерческого проекта.

  15. Модератор Аватар для ToT
    Регистрация
    16.08.2021
    Адрес
    г. Краснодар, Краснодарский край, Russia
    Сообщений
    1,924
    К TOT: если что получиться интересное оформим в виде статьи?
    Андрей,конешно.

  16. модератор "Нашей КИС"
    Регистрация
    13.03.2003
    Сообщений
    67
    Господа.
    Позвольте встрянуть.
    Если Вы полагаете объектно-ориентированное решение, то надо понимать, что SQL не подразумевает подобный подход. Делить задачу на маленькие объектные составляющие с методами доступа к таблицам - примитивизация SQL и, по сути, решение которое игнорирует всю мощь SQL. (Хотя конечно можно классы наследовать ) Использовать SQL базы как простой менеджер записей - не очень продуктивно.
    Если же вы полагаете строить некую динамическую интерпретационную систему с динамическими таблицами, описателями, встроенными языками и генераторами SQL запросов, то IMHO при более-менее сложной структуре, управление таким механизмом становится задачей чрезвычайно сложной, и все равно все упрется в необходимость писать SQL запросы, отвечающие требованиям данного момента, с учетом всех тонкостей текущей организации информационного поля. Да и медленно все это.

  17. Фырчун Аватар для Dracosha Andrew
    Регистрация
    07.02.2002
    Адрес
    Санкт-Петербург
    Сообщений
    2,259
    то надо понимать, что SQL не подразумевает подобный подход
    Ну вроде бы Postgress это позволяет? Или я не прав?
    Да и медленно все это
    Не факт, замедляет конечно, но кто сказал, что объектный подход должен быть реализован на SQL? Тут как раз и приходит необходимость 3-х звенной архитектуры.
    Кстати, самая медленная система из всех мне известных - 1С, однако её популярность обусловлена не скоростью, а простотой разработки (маркетинговые фокусы отложим в сторону).
    Всех благ!!!
    Чувелёв Андрей

    ps: Всё вышеизложенное является моим частным мнением и не может претендовать на полноту изложения.

  18. модератор "Нашей КИС"
    Регистрация
    13.03.2003
    Сообщений
    67
    > Ну вроде бы Postgress это позволяет? Или я не прав?
    Ну разве наследование структуры таблиц это уже ООП?
    > Тут как раз и приходит необходимость 3-х звенной архитектуры.
    Я не говорю о забвении принципов ООП в решении задачи. Я говорю, что объектная декомпозиция на уровне создания простых "базных" частей и обертка их объектами и последующее использование полученных оберток в процессе создания более сложных классов уничтожает мощь SQL.

  19. Фырчун Аватар для Dracosha Andrew
    Регистрация
    07.02.2002
    Адрес
    Санкт-Петербург
    Сообщений
    2,259
    уничтожает мощь SQL
    Хм, не хочу спорить, но ведь и ООП и SQL это просто инструмент?
    Можно копать ломом, можно лопатой, но пользуются почему и тем и другим. Зачем противоставлять одно другому?
    Всех благ!!!
    Чувелёв Андрей

    ps: Всё вышеизложенное является моим частным мнением и не может претендовать на полноту изложения.

  20. модератор "Нашей КИС"
    Регистрация
    13.03.2003
    Сообщений
    67
    Такое ощущение что мы путаем мягкое с теплым.
    Никто никому ничего не противопоставляет. Ну а по существу вопроса я высказывался выше. Я говорил только о высказываниях Flattera о информационном поле и о таблично-объектной декомпозиции задачи. См. мои сообщения выше.

  21. Модератор "v.8" Аватар для Flatter
    Регистрация
    20.11.2002
    Адрес
    Вологда
    Сообщений
    125
    Я говорил немного не о том...
    Полная универсальность это абсурд для пользователя, можно работать и в Access очень универсально. Но пользователь без адресного внедрения работать в нем не будет да и затраты для этого адресного внедрения со стороны программера слишком велики.

    На самом деле основа любого бизнес приложения это справочники которые и составляют БД. В связи с этим нам нужно просто классифицировать требования прилагаемые бизнес приложениями к БД, и исходя из этого описать объектную модель нашей разработки. А не объектную модель БД!!! Объектная БД это конечно хорошо, но требуется ли она? Нам нужно то всего лишь быстрые выборки и апдейты данных, проработанная структура и контроль ссылочной целостности.

  22. модератор "Нашей КИС"
    Регистрация
    13.03.2003
    Сообщений
    67
    С этим трудно спорить.

  23. Модератор "v.8" Аватар для Flatter
    Регистрация
    20.11.2002
    Адрес
    Вологда
    Сообщений
    125
    В этом направлении и нужно работать

  24. модератор "Нашей КИС"
    Регистрация
    13.03.2003
    Сообщений
    67
    Надо подумать сперва.

  25. Модератор "v.8" Аватар для Flatter
    Регистрация
    20.11.2002
    Адрес
    Вологда
    Сообщений
    125
    Есть еще интересные вопросы касающиеся «информационного поля» с одной стороны это делается для уменьшения избыточности данных, но свести избыточность к 0 значит замедлить систему и сильно завысить требования к железу. Необходимо найти оптимальное соотношение допустимой избыточности данных к производительности системы.

    Например:
    ИО№1: Данные о контрагентах организаций.
    Справочник «Контрагенты»

    ИО№2: CMR (работа с клиентами)
    Справочник «Контрагенты» (ИО№1)
    Справочник «Контактные лица» (подчинен справочнику «Контрагенты»)

    Есть несколько путей реализации:
    1) минимальная избыточность
    В ИО№2: хранятся только уникальные идентификаторы элементов (ИО№1) используемых в ИО№2 т.е. те у которых есть подчиненные. А все выборки для просмотра списков запросами к БД ИО№1
    2) Использование всех данных ИО№1 и их синхронизация в определенные моменты в ИО№2
    3) Производные от первых 2.

  26. Фырчун Аватар для Dracosha Andrew
    Регистрация
    07.02.2002
    Адрес
    Санкт-Петербург
    Сообщений
    2,259
    свести избыточность к 0 значит замедлить систему
    Теоретики, типа Детй, говорят о другом.
    Всех благ!!!
    Чувелёв Андрей

    ps: Всё вышеизложенное является моим частным мнением и не может претендовать на полноту изложения.

  27. Модератор "v.8" Аватар для Flatter
    Регистрация
    20.11.2002
    Адрес
    Вологда
    Сообщений
    125
    Зависит от конкретной реализации... Зачастую оптимизация по скорости сводится к увеличению избыточности!

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)