|
|
|
Проектирование БД с созданием кучи таблиц
|
|||
|---|---|---|---|
|
#18+
LSVХотите сказать, что для того чтобы пользователь в окошечке мог сконструировать новый атрибут, достаточно лишь СУБД ? Хочу сказать, что это единственная составляющая решения, заслуживающая названия "движок". LSVНикакой DDL-движок (который превратит поток сознания юзера в DDL-инструкции) не нужен ? Вы серьезно ???? Примерно такой же, какой в случае EAV превратит этот поток сознания в DML-инструкции. Я сейчас посмотрел в свой проект, где как раз поддерживается генерация таблиц по произвольным атрибутам. Тот класс, который Вы называете "DDL-движок", занимает 105 строк вместе с комментариями. Я искренне не понимаю, как Вы собираетесь писать столь сложную и неподъёмную технологию в течение двух-трёх лет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2013, 16:34 |
|
||
|
Проектирование БД с созданием кучи таблиц
|
|||
|---|---|---|---|
|
#18+
БредятинаВпрочем, я согласен, что было бы здорово, если бы пользователь не смог самостоятельно заменить батарейку в бытовом приборе (или управлять телевизором), и требовалось бы вызвать профессионала. В этом плане прочим сферам еще далеко до технологий БД. Пожалуй, только производители атомных подводных лодок и атомных электростанций добились сопоставимых с технологиями БД результатов.Ну всё.... Если ЧАЛ в топике, топик можно закрывать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2013, 16:36 |
|
||
|
Проектирование БД с созданием кучи таблиц
|
|||
|---|---|---|---|
|
#18+
LSVНу всё.... Если ЧАЛ в топике, топик можно закрывать. Вот это достойная "пластинка" Здесь есть что сказать по существу. Вперед! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2013, 16:52 |
|
||
|
Проектирование БД с созданием кучи таблиц
|
|||
|---|---|---|---|
|
#18+
БредятинаДо сих пор такое деление МД было не известно ... Так Вам вроде не привыкать, что Вам многое из лекций за 3 курс до сих пор не известно. БредятинаК сожалению, это доказанные факты. . Если типа доказано Вами, то скорее всего, все с точностью наоборот: это не факты однозначно. БредятинаВы предпочитаете использовать такой термин. Я подробно объяснил, скрупулезно цитируя Дейта и др., почему "реляционные системы" не являются СУБД. У Дейта являются. Например, DB2. На той же странице, с которой Вы цитировали, но ничего не поняли. Да что говорить? Вы же якобы ошибки у Дейта типа находили. БредятинаОпять отвлеклись от обсуждаемых проблем. Я ни слова не говорил о MUMPS, и никаких планов у меня нет. Ну Вы как бы пиарщик МУМПСа. Хотите перехитрить? Здесь не Балабановская спичечная фабрика. Здесь такие трюки не пройдут. БредятинаНеудобно же перед людьми. С Вашей то репутацией думать о неудобстве перед людьми? Шутите? БредятинаДаже просто для того чтобы увидеть Фамилию вместо FirstName)) Напишите представление где будет Фамилию вместо FirstName. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2013, 17:05 |
|
||
|
Проектирование БД с созданием кучи таблиц
|
|||
|---|---|---|---|
|
#18+
vadiminfoТак Вам вроде не привыкать, что Вам многое из лекций за 3 курс до сих пор не известно. Зачем же Вы, вслед за LSV, переходите на личности)) Очевидно, что это никому неизвестно. И поэтому не может быть озвучено. Никем и никогда. Но вместо того, чтобы это признать, Вы обижаетесь, и говорите, что это неизвестно только мне)) vadiminfoЕсли типа доказано Вами, то скорее всего, все с точностью наоборот: это не факты однозначно. Нет, не мной. Я только привожу известные факты. Так что - однозначно факты, и именно поэтому Вы и обижаетесь, вместо того, чтобы говорить по существу этих фактов)) vadiminfoУ Дейта являются. Например, DB2. На той же странице, с которой Вы цитировали, но ничего не поняли. Да что говорить? Говорить по существу. Разве я говорил, что Дейт, как и Вы, не может использовать термин СУБД для именования СХОД??? По тем же самым причинам, что и Вы)) vadiminfoВы же якобы ошибки у Дейта типа находили. Очень серьезные. И детально показывал их суть. Не обижайтесь)) Говорите по существу. Почему нельзя использовать РМД, и приходится моделировать с ее помощью EAV. Где Вы нашли у Дейта объяснение? vadiminfoНу Вы как бы пиарщик МУМПСа. Хотите перехитрить? Здесь не Балабановская спичечная фабрика. Здесь такие трюки не пройдут. Пожалуйста, говорите по существу. Если хотите поговорить про MUMPS, перейдите в форум по Cache, например. Вы устраиваете провокации, а LSV, пользуясь этим, обвиняет меня в том, что я говорю не по существу, и поэтому тему можно закрывать. У него, конечно, не хватит совести сделать Вам замечание за недостойное поведение. Вы уж сами постарайтесь говорить по существу. vadiminfoС Вашей то репутацией думать о неудобстве перед людьми? Шутите? А зачем же Вы вступили в диалог с человеком с такой мерзкой репутацией?)) vadiminfoНапишите представление где будет Фамилию вместо FirstName. То, что факты Вы подменяете представлениями - это уже известно. Теперь и МД верхнего уровня Вы легко заменили "представлением")) При этом Вы рады, конечно, что пользователю придется обратиться к Вам - профессионалу, даже для того, чтобы узнать фамилию)) И я тоже, в общем-то, рад за Вас. И не считаю, что Вы как-то провели пользователей. Такова технология, которую Вы используете, против которой пользователи не возражают. Они же тоже получали образование в той же системе. Все нормально. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2013, 17:27 |
|
||
|
Проектирование БД с созданием кучи таблиц
|
|||
|---|---|---|---|
|
#18+
БредятинаВы устраиваете провокации, а LSV, пользуясь этим, обвиняет меня в том, что я говорю не по существу,Ну так говорите по существу. Возьмите стартовый пост и напишите аргументированную рекомендацию, как это сделал я. Укажите плюсы, минусы. Итак задача упрощенно: оперативно добавлять неким объектам дополнительную разнотипную инфу и далее ее анализировать. Предлагайте конкретные решения. ...а мы заодно посмеемся. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2013, 17:49 |
|
||
|
Проектирование БД с созданием кучи таблиц
|
|||
|---|---|---|---|
|
#18+
БредятинаОчевидно, что это никому неизвестно. Если набрать в Гугле "структурированные модели данных", то выяснится что это совсем не "очевидно". Бредятина Я только привожу известные факты. Вы всегда приводите какую-то отсебятину. БредятинаГоворить по существу. Разве я говорил, что Дейт, как и Вы, не может использовать термин СУБД для именования СХОД???. Вообще-то Вы построили фразу так, что тот кто не соглашается с этим, тот не соглашается с Дейтом. А теперь выясняется, что это Вы не соглашаетесь с Дейтом? Не морочьте плиз голову. БредятинаОчень серьезные. Может луче начать искать ошибки у себя? Бредятина Если хотите поговорить про MUMPS, .... Зачем он мне то нужен? Не я же 30 лет назад выбрал его по ошибке вместо РСУБД. БредятинаА зачем же Вы вступили в диалог с человеком с такой мерзкой репутацией?)) Вы написали ахинею на мою цитату, и не ответь я, кто-то мог подумать, что согласен с ней. БредятинаТо, что факты Вы подменяете представлениями - это уже известно. Теперь и МД верхнего уровня Вы легко заменили "представлением")) При этом Вы рады, конечно, что пользователю придется обратиться к Вам - профессионалу, даже для того, чтобы узнать фамилию)) И я тоже, в общем-то, рад за Вас. И не считаю, что Вы как-то провели пользователей. Такова технология, которую Вы используете, против которой пользователи не возражают. Они же тоже получали образование в той же системе. Все нормально. Судя по этому данному тексту Ваши представления о технологиях БД еще хуже, чем я думал до сих пор. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2013, 17:58 |
|
||
|
Проектирование БД с созданием кучи таблиц
|
|||
|---|---|---|---|
|
#18+
LSVНу так говорите по существу. Возьмите стартовый пост и напишите аргументированную рекомендацию, как это сделал я. Укажите плюсы, минусы. Пожалуйста, читайте не только свои сообщения. Я не вижу ни одного минуса в предложенном решении, если речь идет о подтипах одного типа сущности. LSVИтак задача упрощенно: оперативно добавлять неким объектам дополнительную разнотипную инфу и далее ее анализировать. Предлагайте конкретные решения. ...а мы заодно посмеемся. :) Откройте тему с такой задачей. Поясните, почему именно РМД невозможно использовать. И не нужно ни над кем смеяться. Говорите конструктивно и по существу. Как Вы знаете, я всегда готов помочь с формализацией и анализом проблемы. Составим простую табличку: № Ситуация (задача) Причина, по которой РМД нельзя использовать Решение в среде "реляционной системы" Комментарий И давайте, сообщите данные для первой записи)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2013, 20:05 |
|
||
|
Проектирование БД с созданием кучи таблиц
|
|||
|---|---|---|---|
|
#18+
softwarerArhat109Без указания конретных ограничений, Не имеет отношения к ситуации с довольно конкретными указаниями ограничений. Какие конкретно "ограничения" указаны в поставленной задаче? Развернёте или как? softwarerArhat109которые больше оттолкнуть не от чего как от "сложности алгоритма" (зевая) Пара заданий в любом приличном ВУЗе: 1. Назвать алгоритмы (например, сортировки), обладающие одинаковой вычислительной сложностью и при этом кардинально отличающиеся практическим быстродействием. 2. Сконструировать ситуацию, в которой алгоритм с большей вычислительной сложностью окажется значительно быстрее алгоритма с меньшей вычислительной сложностью. т.е. "по существу" сказать нечего, "фантазирование" замечено, начинаем "переводить стрелки" на знакомое... а по делу? softwarerПоясняю совсем просто: "вычислительная сложность" роляет только при решении задач типа "как изменится время выполнения программы на моём ноуте, если объём данных увеличить в десять раз". Но и тут существуют множество факторов, существенно меняющие картину по сравнению с напальцевыми теоретическими оценками . ... а по делу, оказывается, вы пишете то же самое что написано мною, но "внезапно" забытое в цитировании... Впрочем, я не гордый, не претендую на корректное заимствование. softwarerArhat109вы где нашли то, что написали про "всеоблемлемость"? :) Там, где я нашёл, что Вы не написали ни слова о действительно определяющих вещах, а упомянули только вычислительную сложность, да и в той по торопыжести допустили совершенно детскую ошибку. Да разве? :) "внезапно" вами забыто это: как только на первый план выйдет "сложность алгоритма" (логарифм против линейного роста), а не проблемы с различиями в Г-реализации "прочих" частей softwarer 1 Если честно, я не очень верю, что разум у Вас одолеет эмоции и Вы займётесь поиском ошибки. Я, конечно, могу ткнуть пальцем, но таки предпочитаю сначала надеяться на лучшее. Чтобы не так расстраивались - на моей памяти в этом форуме именно такую ошибку делают уже второй раз. уж будьте так любезны... а то я даже и искать не собираюсь без вашей помощи... давайте вместе ещё разок посмеемся. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2013, 20:06 |
|
||
|
Проектирование БД с созданием кучи таблиц
|
|||
|---|---|---|---|
|
#18+
Arhat109уж будьте так любезны... Да без проблем. Прочее позволю себе поскипать, ибо по сравнению с этой Вашей ошибкой довольно скучно. Если хотите, потом с тем разберёмся. Arhat109а то я даже и искать не собираюсь без вашей помощи... В общем не сомневался. давайте вместе ещё разок посмеемся.[/quot] Да и не только вместе, присутствующие тоже поучаствуют. Итак, позволю себе кратко изложить Ваши выкладки: 1. При поиске записи в одной [большой] таблице (по индексу) вычислительная сложность этой операции O(log(N)) 2. При поиске записи в куче [небольших] таблиц вычислительная сложность этой операции O(N) 3. Таким образом, по мере нарастания объёма данных первый вариант становится всё более предпочтительным ("летает") по сравнению со вторым ("тормозит"). Всё верно изложено? Есть последняя сложность подумать или хотя бы отползти. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2013, 20:15 |
|
||
|
Проектирование БД с созданием кучи таблиц
|
|||
|---|---|---|---|
|
#18+
softwarerВсё верно изложено? Есть последняя сложность подумать или хотя бы отползти. Есть последняя возможность подумать или хотя бы отползти. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2013, 20:20 |
|
||
|
Проектирование БД с созданием кучи таблиц
|
|||
|---|---|---|---|
|
#18+
vadiminfoБредятинаОчевидно, что это никому неизвестно. Если набрать в Гугле "структурированные модели данных", то выяснится что это совсем не "очевидно". Одной этой фразой Вы поставили крест на Ваших многолетних усилиях не вдаваться в подробности, основным лейтмотивом которых было: "Если чего-то не написано в толстой книге, то это не заслуживает внимания")) Теперь же Вы предлагаете: 1) Побывать в гостях у Славы http://slava.fateback.com/work/docs/database/index.htm 2) Подменить структурированные типы структурированными моделями http://citforum.ru/database/dblearn/dblearn02.shtml 3) Подменить модели структурированных данных структурированными моделями данных http://www.math.spbu.ru/user/boris_novikov/courses/mtim3/5-semistructured.pdf 4) И т.п. http://ru.wikipedia.org/wiki/%D0%91%D0%B0%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85 http://ref.by/refs/98/24089/1.html ... vadiminfoВы всегда приводите какую-то отсебятину. Называть факты представлениями Вам показалось недостаточно. Добавили "отсебятину". Пожалуйста, говорите по существу. vadiminfoВообще-то Вы построили фразу так, что тот кто не соглашается с этим, тот не соглашается с Дейтом. А теперь выясняется, что это Вы не соглашаетесь с Дейтом? Не морочьте плиз голову. Говорите по существу. Я полностью согласен с Дейтом в части интерактивного интерфейса. И подчеркиваю, что в "реляционных системах" возможны только такие задачи для интерактивного интерфейса, о которых и пишет Дейт. Из-за неустранимых недостатков РМД. Так что, "реляционная система" в принципе не может быть СУБД. Но, Дейт, как и Вы, может называть такие системы СУБД. Как и продавцы компрессоров, имеют право называть их холодильниками. Но, в отличие от Вас с Дейтом, не называют)) vadiminfoБредятинаОчень серьезные. Может луче начать искать ошибки у себя? Я к этому приучен с детства. Нахожу, и исправляю. Дейт тоже исправляет (в одной из соседних тем я приводил пример с его мнением о том, что отношение может являться значением атрибута другого отношения). Но многочисленные, и очень серьезные, ошибки во всех рассуждениях о связях не исправлены в 8-м издании. vadiminfoЗачем он мне то нужен? Не я же 30 лет назад выбрал его по ошибке вместо РСУБД. Отлично! Вот и не говорите)) vadiminfoБредятинаА зачем же Вы вступили в диалог с человеком с такой мерзкой репутацией?)) Вы написали ахинею на мою цитату, и не ответь я, кто-то мог подумать, что согласен с ней. Какую именно ахинею? Пожалуйста, говорите по существу, если уж приходится отвечать такому идиоту, как я. vadiminfoСудя по этому данному тексту Ваши представления о технологиях БД еще хуже, чем я думал до сих пор. Вы ушли даже от такого тривиального вопроса о "Фамилии". Другие участники довольно подробно обсуждают этот вопрос, и даже подсчитывают количество строк, которое нужно написать, чтобы пользователь мог бы добавить свойство "Фамилия" к типу сущности "Человек". Правда один явно говорит о разработке СУБД в среде РСХОД, для которой модель верхнего уровня осталась неизвестной, а на нижнем уровне предлагается использовать EAV. А другой говорит, что ему не составляет никакого труда реализовывать и модель верхнего уровня и EAV каждый раз в приложении. А Вы от только о моей глупости говорите, а не об обсуждаемой проблеме. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2013, 20:40 |
|
||
|
Проектирование БД с созданием кучи таблиц
|
|||
|---|---|---|---|
|
#18+
БредятинаОдной этой фразой Вы поставили крест На Вашем утверждении: БредятинаОчевидно, что это никому неизвестно. Бредятина Но, Дейт ... может называть такие системы СУБД.. Не может а называет. На той же странице. И тем более в 8 издании на стр. 70 называет и реляционные СУБД. И перечисление тучу продуктов. Потому, плиз, не морочьте голову, приплетая Дейта к своей ахинее. Бредятина Но многочисленные, и очень серьезные, ошибки во всех рассуждениях о связях .... Вам бы так ошибаться. БредятинаКакую именно ахинею? Что-то там про РМД, которая якобы модель хранения данных, где-то там, и т.д.. Не знаю, как Вы сами еще не поняли какую именно. БредятинаА Вы от только о моей глупости говорите, а не об обсуждаемой проблеме. Ну как бы проблема в Вашем так сказать специфическом мышлении. Кто еще может испытывать проблемы с представлением FirstName в виде Фамилии, тем более в РМД, которая обладает мощной системой запросов? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2013, 21:28 |
|
||
|
Проектирование БД с созданием кучи таблиц
|
|||
|---|---|---|---|
|
#18+
softwarer, "когда меня дополняют, я - молчу, но когда режут" (с) Барон Мюнхаузен. :) Вы упустили один важный пункт, связанный с постановкой этой конкретной задачи, а именно: Что лучше (или - или). То есть суммарный объем информации - примерно константен. А стало быть вопрос звучит "чуть-чуть" не так: Ваша редакция: 1. При поиске записи в одной [большой] таблице (по индексу) вычислительная сложность этой операции O(log(N)) 2. При поиске записи в куче [небольших] таблиц вычислительная сложность этой операции O(N) 3. Таким образом, по мере нарастания объёма данных первый вариант становится всё более предпочтительным ("летает") по сравнению со вторым ("тормозит"). Мои утверждения: 1 пост: Вы сравниваете "теплое с мягким" . ОДНА таблица с 100 строк работает быстрее ДРУГОЙ ОДНОЙ таблицы с миллионом строк. (это было "теплое") Но: ТЫСЯЧА таблиц в ОДНОМ запросе через UNION по 100 строк - далеко не факт, что будут быстрее чем 4 таблицы (EAV) по 100 тысяч строк в ОДНОМ запросе. (а это - "мягкое") 2 пост (с оценкой сложности): Да даже по миллиону. И даже если в реализации EAV более 4-х таблиц (например по одной на тип значений). От размера таблиц скорость работы зависит в среднем логарифмически (индексы). Запросы с Union по тысяче таблиц только парсится будут "годами"... :) и даже при наличии индексов - падение производительности надо ожидать ... линейное от количества таблиц (у каждой свой индекс). ... найдите 2 отличия между редакциями. :) Итого, хотите разобраться, давайте. 1. Вариант: Имеем (пусть для определенности) 1000 таблиц по 100 записей с небольшим количеством "общих" (pos_x,pos_y,type_name, owner_id) и разным количеством (возможно и большим? давайте рандомно от 1 до 10 разных базовых типов) "почти" уникальными наборами полей (по задаче, каждый тип имеет свои атрибуты)... т.е. "объем инфы" в районе 1000*100*(4+5) = 90_000 значений атрибутов с рандомным заполнением. Начальное заполнение параметризованной процедурой, рандомно. Названия атрибутов пишем param_номер_типа_номер атрибута, где номер типа - сквозной по всем значениям всех таблиц. 2 Вариант: То же самое, но в EAV: Таблица всех типов: 10_000 записей. Таблица атрибутов и их типов: 50_004 записи (4 общих). Таблица всех значений (для простоты, всё храним как vchar): 90_000 значений. Задача: 1. выбрать все значения всех объектов, находящиеся в квадрате {(X1,Y1),(X2Y2)} т.е. по общим атрибутам. 2. выбрать все объекты в том же квадрате, но имеющие атрибут типа "ДатаВремя" -- типа "время работы" (который в разных типах у разных пользователей может называться по-разному), со значениями заданном диапазоне... Выкладывайте "своё" решение тут, и я выложу вам на EAV. Давайте на чистом SQL, прогоню оба на своем Мускуле. Запустим и сравним с разным объемом данных. ... тут есть ещё спецы по Каше и Мумпс (с "настоящими СУБД")... тоже можно поучаствовать. ... только сильно боюсь, что вашего решения на 1000 таблицах (впрочем как и от настоящих СУБД), врядли дождешься в этой жизни. Потому как "теоретики", блин. ну что, будем тестить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2013, 06:46 |
|
||
|
Проектирование БД с созданием кучи таблиц
|
|||
|---|---|---|---|
|
#18+
Arhat109, Да, ещё п.3. Выдать список названий и типов ВСЕХ атрибутов (полезно для интерфейса пользователю для снижения количества "поохожих" атрибутов)... как понимаете, в EAV - это просто содержимое одной таблицы. ... Ваше решение, каково? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2013, 06:50 |
|
||
|
Проектирование БД с созданием кучи таблиц
|
|||
|---|---|---|---|
|
#18+
Arhat109, , а если учесть, что UNION всегда предполагает одинаковую структуру объединяемых таблиц... то запрос по п.2. я думаю "в этой жизни" ждать смысла нету... только навороченная хранимая процедура ... ... вы ещё по-прежнему уверены, что ваше решение точно лучше? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2013, 06:54 |
|
||
|
Проектирование БД с созданием кучи таблиц
|
|||
|---|---|---|---|
|
#18+
vadiminfoНа Вашем утверждении: Не меня процитировали)) Вот мое сообщение: Одной этой фразой Вы поставили крест на Ваших многолетних усилиях не вдаваться в подробности, основным лейтмотивом которых было: "Если чего-то не написано в толстой книге, то это не заслуживает внимания")) Теперь же Вы предлагаете: 1) Побывать в гостях у Славы http://slava.fateback.com/work/docs/database/index.htm 2) Подменить структурированные типы структурированными моделями http://citforum.ru/database/dblearn/dblearn02.shtml 3) Подменить модели структурированных данных структурированными моделями данных http://www.math.spbu.ru/user/boris_novikov/courses/mtim3/5-semistructured.pdf 4) И т.п. http://ru.wikipedia.org/wiki/%D0%91%D0%B0%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85 http://ref.by/refs/98/24089/1.html ... Пожалуйста, поясните что такое структурированная модель данных, и, соответственно, что такое не структурированная модель данных. vadiminfoНе может а называет. На той же странице. И тем более в 8 издании на стр. 70 называет и реляционные СУБД. И перечисление тучу продуктов. Потому, плиз, не морочьте голову, приплетая Дейта к своей ахинее. Говорите по существу. Я полностью согласен с Дейтом в части интерактивного интерфейса. И подчеркиваю, что в "реляционных системах" возможны только такие задачи для интерактивного интерфейса, о которых и пишет Дейт. Из-за неустранимых недостатков РМД. Так что, "реляционная система" в принципе не может быть СУБД. Но, Дейт, как и Вы, может называть такие системы СУБД. Как и продавцы компрессоров, имеют право называть их холодильниками. Но, в отличие от Вас с Дейтом, не называют)) vadiminfoВам бы так ошибаться. Говорите по существу. Многочисленные, и очень серьезные, ошибки во всех рассуждениях о связях не исправлены у Дйта в 8-м издании. vadiminfoЧто-то там про РМД, которая якобы модель хранения данных, где-то там, и т.д.. Не знаю, как Вы сами еще не поняли какую именно. Говорите конкретно. Что Вы имеете в виду. vadiminfoНу как бы проблема в Вашем так сказать специфическом мышлении. Кто еще может испытывать проблемы с представлением FirstName в виде Фамилии, тем более в РМД, которая обладает мощной системой запросов? Говорите по существу. Вы ушли даже от такого тривиального вопроса о "Фамилии". Другие участники довольно подробно обсуждают этот вопрос, и даже подсчитывают количество строк, которое нужно написать, чтобы пользователь мог бы добавить свойство "Фамилия" к типу сущности "Человек". Правда один явно говорит о разработке СУБД в среде РСХОД, для которой модель верхнего уровня осталась неизвестной, а на нижнем уровне предлагается использовать EAV. А другой говорит, что ему не составляет никакого труда реализовывать и модель верхнего уровня и EAV каждый раз в приложении. А Вы от только о моей глупости говорите, а не об обсуждаемой проблеме. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2013, 09:45 |
|
||
|
Проектирование БД с созданием кучи таблиц
|
|||
|---|---|---|---|
|
#18+
Arhat109Итого, хотите разобраться, давайте. 1. Вариант: Имеем (пусть для определенности) 1000 таблиц по 100 записей с небольшим количеством "общих" (pos_x,pos_y,type_name, owner_id) и разным количеством (возможно и большим? давайте рандомно от 1 до 10 разных базовых типов) "почти" уникальными наборами полей (по задаче, каждый тип имеет свои атрибуты)... т.е. "объем инфы" в районе 1000*100*(4+5) = 90_000 значений атрибутов с рандомным заполнением. Начальное заполнение параметризованной процедурой, рандомно. Названия атрибутов пишем param_номер_типа_номер атрибута, где номер типа - сквозной по всем значениям всех таблиц. 2 Вариант: То же самое, но в EAV: Таблица всех типов: 10_000 записей. Таблица атрибутов и их типов: 50_004 записи (4 общих). Таблица всех значений (для простоты, всё храним как vchar): 90_000 значений. ... Очевидно, что запросы никакого значения, пока, не имеют - они могут быть какие-угодно. Итак, в забытом Вами третьем варианте одна "нормальная таблица" с "полями" совершенно конкретных (нужных) типов. Количество полей: 4+(1000*10)=10004 Количество записей: (1000*100)=100000 В каждой из которых максимум 14 значений полей. Итого: (100000*14)=1400000 (один миллион четыреста тысяч) значений. Все правильно (мне кажется, у Вас какая-то путаница с расчетами)? И что за проблемы Вы хотите выявить? Поля нужно индексировать или, наоборот, индексов не должно быть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2013, 10:01 |
|
||
|
Проектирование БД с созданием кучи таблиц
|
|||
|---|---|---|---|
|
#18+
Бредятина, никакой проблемы с расчетами. Вы, как и большинство тут - не внимательны. Вы посчитали предельный объем атрибутов, а я - средний: "максимально 10 уникальных полей"... в среднем - 5 (половина есть, половины нет). Что хочу? Предлагаю выложить "тестовый пример" и прогнать его на одной машинке... оценить "тормоза" каждого решения. Участвовать со своей "настоящей СУБД" - будете? Если да - от Вас контрольный пример (даже готов себе ради такого удовольствия поставить Мумпс на машинку), который можно просто залить и прогнать. Требуемые запросы к СУБД - приведены (3шт). Если нет - ещё раз к Вам просьба: не отвечать далее на мои посты. Желательно ни прямо ни косвенно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2013, 10:16 |
|
||
|
Проектирование БД с созданием кучи таблиц
|
|||
|---|---|---|---|
|
#18+
Arhat109, контрольный пример: процедура самозаполнения данными с рандомными атрибутами (как по типу данных, так и по значению) с рандомным созданием структуры для каждого типа данных. Плюс запросы (или ХП) для решения трех поставленных задач. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2013, 10:19 |
|
||
|
Проектирование БД с созданием кучи таблиц
|
|||
|---|---|---|---|
|
#18+
Arhat109никакой проблемы с расчетами. Вы, как и большинство тут - не внимательны. Вы посчитали предельный объем атрибутов, а я - средний: "максимально 10 уникальных полей"... в среднем - 5 (половина есть, половины нет). Где об этом написано? Я внимательно читал, не увидел про средний . Хорошо, я не внимательный. Arhat109Что хочу? Предлагаю выложить "тестовый пример" и прогнать его на одной машинке... оценить "тормоза" каждого решения. Участвовать со своей "настоящей СУБД" - будете? Какой пример? Я все правильно описал в своем сообщении? При чем здесь СУБД??? Можно обойтись и СХОД. В моем распоряжении нет ни СУБД, ни СХОД. Я только присоединяюсь к Вашей просьбе создать одну обыкновенную таблицу с 10004 полями и т.д. по описанию структуры БД. Arhat109Если да - от Вас контрольный пример (даже готов себе ради такого удовольствия поставить Мумпс на машинку), который можно просто залить и прогнать. Требуемые запросы к СУБД - приведены (3шт). То есть, и Вы можете создать эту структуру (одну таблицу) и применить к ней SQL. В чем проблема-то??? Arhat109Если нет - ещё раз к Вам просьба: не отвечать далее на мои посты. Желательно ни прямо ни косвенно. Не хотите, не надо проверять третий вариант)) Больше не буду отвечать, конечно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2013, 10:36 |
|
||
|
Проектирование БД с созданием кучи таблиц
|
|||
|---|---|---|---|
|
#18+
БредятинаНе меня процитировали)) Т.е. не Вы писали: БредятинаОчевидно, что это никому неизвестно. А теперь, когда стало ясно, что широко известно, пытаетесь забалтывать? Дешевый прием. БредятинаvadiminfoНе может а называет. На той же странице. И тем более в 8 издании на стр. 70 называет и реляционные СУБД. И перечисление тучу продуктов. Потому, плиз, не морочьте голову, приплетая Дейта к своей ахинее. Говорите по существу. А существенно только то, что Дейт считает "реляционные системы" СУБД. На все повторы дальнейшие ответ в предыдущих постах. Жаль, что нет ф-ии на форуме объявлять повторы троллингом, и удалять все сообщения автора за них. Это все таки слишком выходит за рамки для технических форумов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2013, 10:52 |
|
||
|
Проектирование БД с созданием кучи таблиц
|
|||
|---|---|---|---|
|
#18+
Бредятина, Да "и я могу"... в т.ч. и на вашем любимом Мумпс. Но давайте, каждый сделает ТОТ пример, за который ратует. Считаете лучше - предложите пример, потестим. ЗА ВАС никто и ничего делать не будет. Не хотите делать - не отвечайте далее, как и просил ранее. Не надо флудить мне в ответ. ("внезапно" нет ни того ни другого... подозреваю, что никогда! и не было, поскольку в моем понимании, вы - "чистый теоретик" не написавший ни разу ни одной строчки кода) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2013, 11:03 |
|
||
|
Проектирование БД с созданием кучи таблиц
|
|||
|---|---|---|---|
|
#18+
ТС,вероятно, уже сдал проект заказчику и, может даже, вышел на пенсию ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2013, 11:04 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=38193643&tid=1541100]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
161ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
57ms |
get tp. blocked users: |
1ms |
| others: | 244ms |
| total: | 505ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...