powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Устройство базы
25 сообщений из 84, страница 1 из 4
Устройство базы
    #38752485
PGuser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте уважаемые.
Как называется принцип устройства базы когда для каждого типа данных существует отдельная таблица?
Например:
integer_table
float_table
character_table
boolean_table
text_table
и т.д

Спасибо.
...
Рейтинг: 0 / 0
Устройство базы
    #38752493
1001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PGuserЗдравствуйте уважаемые.
Как называется принцип устройства базы когда для каждого типа данных существует отдельная таблица?
Например:
integer_table
float_table
character_table
boolean_table
text_table
и т.д

Спасибо.
- пипец

а мож ваш вопрос глубже
или выше ...
...
Рейтинг: 0 / 0
Устройство базы
    #38752495
Гхостик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Мб, "хрень какая-то"?
...
Рейтинг: 0 / 0
Устройство базы
    #38752507
PGuser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
1001 и Гхостик,
Спасибо за оперативность.
Таким образом можно хранить данные разных типов например для создания классов с определёнными атрибутами (применительно к CMS), поэтому и хотелось узнать у знатоков как называется подобная модель, если конечно она существует и имеет название.
...
Рейтинг: 0 / 0
Устройство базы
    #38752511
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PGuserкак называется подобная модель, если конечно она существует и имеет название.

Это один (самый кривой) из способов реализации EAV (Entity-Attrobute-Value) модели.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Устройство базы
    #38752559
Arm79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovPGuserкак называется подобная модель, если конечно она существует и имеет название.

Это один (самый кривой) из способов реализации EAV (Entity-Attrobute-Value) модели.
Почему кривой?
...
Рейтинг: 0 / 0
Устройство базы
    #38752571
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PGuserКак называется принцип устройства базы

Может вопрос не так нужно поставить ?
А например так - Зачем хранить значения всех переменных в соответствующих таблицах ?
Тогда еще как то можно понять (но тоже почти фэнтази)...
Например, есть расчетная задача, которая на самом крутом компе закончится через год,
тогда для форс мажора (пожар, землетрясение, наводнение, в общем комп умер) можно каждый чих пых
хранить в таблицах БД и тогда на новом компе можно будет запустить повтор с места останова, а не с нуля... мдя.... кажись всяку хрень можно обосновать... во загнул....
...
Рейтинг: 0 / 0
Устройство базы
    #38752575
PGuser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Arm79Dimitry Sibiryakovпропущено...

Это один (самый кривой) из способов реализации EAV (Entity-Attrobute-Value) модели.
Почему кривой?

Dimitry Sibiryakov,
да, почему? и не могли бы привести пример не самого кривого способа (применительно к CMS)?
...
Рейтинг: 0 / 0
Устройство базы
    #38752598
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arm79Почему кривой?
Невозможностью проконтролировать соотношение атрибута и значения 1:1. Т.е. одному атрибуту
можно назначить дохрена значений и поди разберись какое из них правильное. Ну и запросы на
выборку атрибутов к сущности получаются кривые до невозможности.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Устройство базы
    #38752609
1001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PGuserArm79пропущено...

Почему кривой?

Dimitry Sibiryakov,
да, почему? и не могли бы привести пример не самого кривого способа (применительно к CMS)?
а
мож все-таки
вы покажете чо-нибудь
из вашего реала

без под*к
...
Рейтинг: 0 / 0
Устройство базы
    #38752611
Arm79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovArm79Почему кривой?
Невозможностью проконтролировать соотношение атрибута и значения 1:1. Т.е. одному атрибуту
можно назначить дохрена значений и поди разберись какое из них правильное. Ну и запросы на
выборку атрибутов к сущности получаются кривые до невозможности.

Не вижу особых проблем по первому пункту. "Умелые ручки" и нормально спроектированную БД (даже не EAV) сломают. Контролировать корректность заполнения атрибутов можно через триггеры.

А запрос на выборку в EAV сам по себе кривой, и несколько типизированных таблиц степень кривизны не увеличивают.

Зато из плюсов можно отметить контроль типов данных. А не хранить все значения в виде строк или sql_variant .

Дмитрий, приведите пожалуйста схему наиболее оптимальной с вашей точки зрения реализации EAV (вариант замены EAV не рассматриваем, интересует именно такая схема)
...
Рейтинг: 0 / 0
Устройство базы
    #38752614
Arm79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1001а
мож все-таки
вы покажете чо-нибудь
из вашего реала

Это был вопрос ко мне? EAV (не в чистом виде конечно, некоторые элементы) я видел в БД Siebel Customer HUB.
...
Рейтинг: 0 / 0
Устройство базы
    #38752619
SERG1257
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arm79 схему наиболее оптимальной с вашей точки зрения реализации EAV В таблице V несколько полей int_value, date_value, varchar_value, float_value .... и check что не нулл может быть только один из них.
...
Рейтинг: 0 / 0
Устройство базы
    #38752625
1001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Arm791001а
мож все-таки
вы покажете чо-нибудь
из вашего реала

Это был вопрос ко мне? EAV (не в чистом виде конечно, некоторые элементы) я видел в БД Siebel Customer HUB.
тсУ
...
Рейтинг: 0 / 0
Устройство базы
    #38752629
Arm79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SERG1257В таблице V несколько полей int_value, date_value, varchar_value, float_value .... и check что не нулл может быть только один из них.
То есть иметь на один атрибут штук 10 атрибутов, 9 из которых пустые - это комильфо, а иметь одно значение на один атрибут, распределенное по 10 таблицам - это кривота?
...
Рейтинг: 0 / 0
Устройство базы
    #38752630
PGuser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry SibiryakovArm79Почему кривой?
Невозможностью проконтролировать соотношение атрибута и значения 1:1. Т.е. одному атрибуту
можно назначить дохрена значений и поди разберись какое из них правильное. Ну и запросы на
выборку атрибутов к сущности получаются кривые до невозможности.

Dimitry Sibiryakov,
-атрибут типа float хранится в таблице float_table, чем не контроль?
-для случая хранения значений в отдельных таблицах правильное значение атрибута последнее по дате вставки
- запросы конечно не самые оптимальные, зато легко склеить динамически
...
Рейтинг: 0 / 0
Устройство базы
    #38752634
PGuser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
1001Arm79пропущено...


Это был вопрос ко мне? EAV (не в чистом виде конечно, некоторые элементы) я видел в БД Siebel Customer HUB.
тсУ

реал стандартный для EAV (наконец то выяснил как это называется)
таблицы:
classes,attributes,objects,relations(для связей) и далее по списку простых типов
...
Рейтинг: 0 / 0
Устройство базы
    #38752645
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arm79То есть иметь на один атрибут штук 10 атрибутов, 9 из которых пустые - это
комильфо
Угу. Хранение NULL ничего не стоит.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Устройство базы
    #38752654
Arm79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovУгу. Хранение NULL ничего не стоит.
Ну так и хранение одного значения в одной таблице тоже не приводит к избыточности?

А откель дровишки по поводу NULL ? Я как то считал, что если в поле типа bigint записать null, все равно на хранение будет выделено 8 байт. NULL не занимает место для var* полей.
...
Рейтинг: 0 / 0
Устройство базы
    #38752662
R7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
R7
Гость
SERG1257Arm79 схему наиболее оптимальной с вашей точки зрения реализации EAV В таблице V несколько полей int_value, date_value, varchar_value, float_value .... и check что не нулл может быть только один из них.
А если надо нулл хранить, появляются костыли типа "удаление при апдейте" или "ваще не храним - нуллей не бывает".
...
Рейтинг: 0 / 0
Устройство базы
    #38752663
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arm79Ну так и хранение одного значения в одной таблице тоже не приводит к
избыточности?
Оно приводит к необходимости лишних соединений. Это нагрузка на оптимизатор и random I/O.

Arm79А откель дровишки по поводу NULL ?
Знание физической структуры файла БД Interbase/Firebird.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Устройство базы
    #38752674
Arm79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovЗнание физической структуры файла БД Interbase/Firebird.
Ну так то Firebird. Хотя странно, конечно. Я в MS SQL такого не помню. Нужно у зубров с соответствующей ветки уточнить.
...
Рейтинг: 0 / 0
Устройство базы
    #38752675
prog123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PGuser1001пропущено...

тсУ

реал стандартный для EAV (наконец то выяснил как это называется)
таблицы:
classes,attributes,objects,relations(для связей) и далее по списку простых типов

Я еще несколько лет назад пытался дочитать до конца статью про этот так называемый EAV, xестно скажу, - не осилил, потому что было притивно моим представлениям о том же. Я тогда разработал свою. Где то год назад случайно нагуглил запатентованную схему.

Кто тут у нас самый продвинутый специалист? Дайте оценку схеме базы, т.е. это EAV или не EAV?

Вот ссылка на патент:
Universal database schema

Патент США US 20060225029 A1
...
Рейтинг: 0 / 0
Устройство базы
    #38752677
prog123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Картинка оттуда.
пусть разговор наконец станет предметным:)
...
Рейтинг: 0 / 0
Устройство базы
    #38752694
Arm79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovХранение NULL ничего не стоит.
Вот, откопал на форуме MS SQL:
Под поля фиксированной длины место выделяется всегда, независимо от NULL/NOT NULL, под поля переменной длины под NULL значения место не выделяется

А IB/FB: 12344935
Все таки какое то место NULL отнимают
...
Рейтинг: 0 / 0
25 сообщений из 84, страница 1 из 4
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Устройство базы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]