|
|
|
Иерархические структуры в реляционной БД & нормализация
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakovkamenjahr(наименование+размерность) Это ты видиш там размерность отдельно. А для автора это составная и неотделимая часть названия. Он с этим полем обращается как с единым и неделимым целым. Потому что у него в ТЗ так написано. А ссылка есть на ТЗ? В самой статье нет, но может я не внимательно читал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2013, 16:20 |
|
||
|
Иерархические структуры в реляционной БД & нормализация
|
|||
|---|---|---|---|
|
#18+
kamenjahrЧто есть 1ая, 2ая и 3ая нормальные формы прописали еще в 70х годах 20г0 века по-моему. И как раз наличие разнородной инфо в одном столбце намекает на ненормалицацию (наименование+размерность). Какая неоднородная инфа? Строка, всего лишь :) А что тогда с XML документами делать? там внутри.... огого... что же теперь, повесится от безысходнности? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2013, 16:24 |
|
||
|
Иерархические структуры в реляционной БД & нормализация
|
|||
|---|---|---|---|
|
#18+
Мимо пробегал...kamenjahrЧто есть 1ая, 2ая и 3ая нормальные формы прописали еще в 70х годах 20г0 века по-моему. И как раз наличие разнородной инфо в одном столбце намекает на ненормалицацию (наименование+размерность). Какая неоднородная инфа? Строка, всего лишь :) Тык написал уж:размерность товара и наименование товара:-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2013, 16:38 |
|
||
|
Иерархические структуры в реляционной БД & нормализация
|
|||
|---|---|---|---|
|
#18+
kamenjahr, Вам же уже сказали - однородность/неоднородность неких данных зависит от задачи. для одной задачи - "Название + размерность", для другой - "просто строка", а для третьей - "набор символов английского алфавита". Если Вы в рамках задачи работаете с данными целиком , не пытаясь из них вычленять какие-то части - данные однородны. если вычленяете - неоднородны. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2013, 17:09 |
|
||
|
Иерархические структуры в реляционной БД & нормализация
|
|||
|---|---|---|---|
|
#18+
Кот Матроскинkamenjahr, Вам же уже сказали - однородность/неоднородность неких данных зависит от задачи. для одной задачи - "Название + размерность", для другой - "просто строка", а для третьей - "набор символов английского алфавита". Если Вы в рамках задачи работаете с данными целиком , не пытаясь из них вычленять какие-то части - данные однородны. если вычленяете - неоднородны. Ежели бы только исходили из поставленных задач/ТЗ, не абстагируясь хоть на уровень "вышее", то дизайнеры БД токма и занимались редизайном моделей данных. Кроме того, я кагбе вопрос про нормализацию не задавал. Меня интересовало, не "поламает" ли нормализация иерархическую структуру данных то. Во время плодотворной дискуссии с посылами на какиетотамстатьи про нестессетс с матрицами-смежности, а также просьбами "а-вываликасюда БД-амы-поглядим" пришел к сам к выводу, что нормализация при представлении иехрархических структур данных в принципе ниче поламать не могет, т.к столбцы, необходимые для реализации - не несут избыточной информации. В то же время сие представление может быть не нормализованным. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2013, 17:29 |
|
||
|
Иерархические структуры в реляционной БД & нормализация
|
|||
|---|---|---|---|
|
#18+
> Эта таблица не нормализована, поскольку атрибут name, Содержит размерность в дюймах Вам русским языком сказали: таблица нормализована. Ваша проблема - не в нормализации, а в кривой идентификации. Никакая иерархия никаким боком к этому отношения не имеет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2013, 19:26 |
|
||
|
Иерархические структуры в реляционной БД & нормализация
|
|||
|---|---|---|---|
|
#18+
guest_20040621> Эта таблица не нормализована, поскольку атрибут name, Содержит размерность в дюймах Вам русским языком сказали: таблица нормализована. Ваша проблема - не в нормализации, а в кривой идентификации. Никакая иерархия никаким боком к этому отношения не имеет. Так и я русским языком отвечаю всем тем, кто считает нормализованной таблицy, где в поле name содержится разнородная информация : наименование товара и размерность, что данная таблица не находится даже в 1НФ именно в виду разнородности информации. При этом я исхожу не из ТЗ,а из определения , что есть нормализованная таблица, а что нет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2013, 00:07 |
|
||
|
Иерархические структуры в реляционной БД & нормализация
|
|||
|---|---|---|---|
|
#18+
kamenjahrв поле name содержится разнородная информация : наименование товара и размерность Не, если ты такой телепат и уверен, что цифра 17 это размерность, а не порядковый номер модели - флаг тебе в руки, нормализуй. Но про геморрой на ровном месте я уже сказал. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2013, 00:27 |
|
||
|
Иерархические структуры в реляционной БД & нормализация
|
|||
|---|---|---|---|
|
#18+
kamenjahrguest_20040621> Эта таблица не нормализована, поскольку атрибут name, Содержит размерность в дюймах Вам русским языком сказали: таблица нормализована. Ваша проблема - не в нормализации, а в кривой идентификации. Никакая иерархия никаким боком к этому отношения не имеет. Так и я русским языком отвечаю всем тем, кто считает нормализованной таблицy, где в поле name содержится разнородная информация : наименование товара и размерность, что данная таблица не находится даже в 1НФ именно в виду разнородности информации. При этом я исхожу не из ТЗ,а из определения , что есть нормализованная таблица, а что нетВы правильные статьи читаете. Я лишь хочу сказать, что не стоит впадать в крайности, а то можно дойти до того, что "17 мгновений весны" нормализовать захочется, в силу разнородности представленной информации. Или другой пример. Модели BMW обозначаются трехзначным индексом - 318, 760 и тп, где первая цифра - кузов а вторая и третья - объем мотора. Тоже разнородная информация и вроде повод для нагородить табличек. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2013, 00:49 |
|
||
|
Иерархические структуры в реляционной БД & нормализация
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakovkamenjahrв поле name содержится разнородная информация : наименование товара и размерность Не, если ты такой телепат и уверен, что цифра 17 это размерность, а не порядковый номер модели - флаг тебе в руки, нормализуй. Но про геморрой на ровном месте я уже сказал. Совершенно не надо обладать телепатическими способностями, чтобы глянув на вот эту таблицу Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. из предложенной мне тут выше по теме статьи узреть что например 20" или 36" ни что иное как размерность в дюймах , поскольку вот такой символ " использован . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2013, 00:50 |
|
||
|
Иерархические структуры в реляционной БД & нормализация
|
|||
|---|---|---|---|
|
#18+
Мимо пробегал...kamenjahrпропущено... Так и я русским языком отвечаю всем тем, кто считает нормализованной таблицy, где в поле name содержится разнородная информация : наименование товара и размерность, что данная таблица не находится даже в 1НФ именно в виду разнородности информации. При этом я исхожу не из ТЗ,а из определения , что есть нормализованная таблица, а что нетВы правильные статьи читаете. Я лишь хочу сказать, что не стоит впадать в крайности, а то можно дойти до того, что "17 мгновений весны" нормализовать захочется, в силу разнородности представленной информации. Или другой пример. Модели BMW обозначаются трехзначным индексом - 318, 760 и тп, где первая цифра - кузов а вторая и третья - объем мотора. Тоже разнородная информация и вроде повод для нагородить табличек. Совершенно согласен, что крайности это гибель. И расчленять на атомы нет ессно нужды. А то джойнить-не-переджойнить потом. Однако пример из статьи, где размер+наименование имхо вопиющий. Иное дело, что в статье упор делался на несколько иное, а именно как обустроить иерархии в чужеродном теле реляционных БД:-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2013, 00:55 |
|
||
|
Иерархические структуры в реляционной БД & нормализация
|
|||
|---|---|---|---|
|
#18+
kamenjahrузреть что например 20" или 36" ни что иное как размерность в дюймах, поскольку вот такой символ " использован. Прэлестно... А взглянув на наименование товара "твердотопливная ракета-носитель Тополь-2М" ты сразу поймёшь, что эта ракета двухметровая. Ню-ню... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2013, 01:13 |
|
||
|
Иерархические структуры в реляционной БД & нормализация
|
|||
|---|---|---|---|
|
#18+
kamenjahrDimitry Sibiryakovпропущено... Не, если ты такой телепат и уверен, что цифра 17 это размерность, а не порядковый номер модели - флаг тебе в руки, нормализуй. Но про геморрой на ровном месте я уже сказал. Совершенно не надо обладать телепатическими способностями, чтобы глянув на вот эту таблицу Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. из предложенной мне тут выше по теме статьи узреть что например 20" или 36" ни что иное как размерность в дюймах , поскольку вот такой символ " использован .И что дальше? Если это БД этикеток, то сюда до кучи можно производителя и страну впихнуть, это все равно будет лишь строка на этикетке. А если это БД, что бы какие-то аналитики строить (как народ за дюймами гонится), то конечно, эти дюймы надо в отдельную таблицу вытащить. Нормализовать нужно под задачу, а не из принципа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2013, 01:13 |
|
||
|
Иерархические структуры в реляционной БД & нормализация
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakovkamenjahrузреть что например 20" или 36" ни что иное как размерность в дюймах, поскольку вот такой символ " использован. Прэлестно... А взглянув на наименование товара "твердотопливная ракета-носитель Тополь-2М" ты сразу поймёшь, что эта ракета двухметровая. Ню-ню... К чему лепить горбатого "Тополя", если упорядочивание товаров народного потребления по размеру диогонали - азм езмь реальность. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2013, 01:50 |
|
||
|
Иерархические структуры в реляционной БД & нормализация
|
|||
|---|---|---|---|
|
#18+
Мимо пробегал...kamenjahrпропущено... Совершенно не надо обладать телепатическими способностями, чтобы глянув на вот эту таблицу Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. из предложенной мне тут выше по теме статьи узреть что например 20" или 36" ни что иное как размерность в дюймах , поскольку вот такой символ " использован .И что дальше? Если это БД этикеток, то сюда до кучи можно производителя и страну впихнуть, это все равно будет лишь строка на этикетке. А если это БД, что бы какие-то аналитики строить (как народ за дюймами гонится), то конечно, эти дюймы надо в отдельную таблицу вытащить. Нормализовать нужно под задачу, а не из принципа. Из текста статьи и приводимыми в ней примерами как раз БД этикеток вообще ни при чем. А нормализовать надо так, чтобы как можно меньше редизайнить БД и таблицы потом. Иначе БД лоскутной станет со временем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2013, 01:54 |
|
||
|
Иерархические структуры в реляционной БД & нормализация
|
|||
|---|---|---|---|
|
#18+
> Так и я русским языком отвечаю ОК, на пальцах. Предположим, вы регистрируете людей. В одном случае вы написали вася пупкин, в другом - вася пупкин в галстуке, в третьем - Василий Пупкин, в четвертом - Василий Васильевич Пупкин, в пятом - Васька П. Вопрос: какие из вариантов правильны, какие ошибочны? Хинт: регистрации факта недостаточно, необходимы правила регистрации. Никакого отношения к нормализации ваша задача не имеет. Как факт. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2013, 03:29 |
|
||
|
Иерархические структуры в реляционной БД & нормализация
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, о да. Этого гемморою у меня до полумиллиона строк уже: 1) "Куп. разд. ЧЕРЕП", цена 150руб. -- это не "Купон разделю ЧЕРЕП" за 150руб. Это женский купальник с черепами на нужных местах. 2) "Альбом для рисования с/к б/к" -- это альбом С кисточкой и БЕЗ коробки. :) Насколько понимаю, автор хочет сказать что дополнение наименования вида товара его параметрами - это денормализация строки данных. Это и так и НЕ так, как тут ему правильно пытаются объяснить. Сильно зависит от задачи. А гемморой по автовыделению из строки параметров - это та задача, которой занимаюсь уже лет 10. Пока побеждает гемморой. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2013, 06:40 |
|
||
|
Иерархические структуры в реляционной БД & нормализация
|
|||
|---|---|---|---|
|
#18+
guest_20040621> Так и я русским языком отвечаю ОК, на пальцах. Предположим, вы регистрируете людей. В одном случае вы написали вася пупкин, в другом - вася пупкин в галстуке, в третьем - Василий Пупкин, в четвертом - Василий Васильевич Пупкин, в пятом - Васька П. Вопрос: какие из вариантов правильны, какие ошибочны? Хинт: регистрации факта недостаточно, необходимы правила регистрации. Никакого отношения к нормализации ваша задача не имеет. Как факт.я такой ужосной ужос даже и представить не могу.а тех,кто такое может и реализовал с васейвгалстуке надо гнать из профессии.правильный вариант он оди вообщетг,если юать теорию реляционных бд:а именно атомарность информации в столбце. все эти етикеточновасины примеры притянуты за уши. разделеие ф.и.о на столбцы равно как невнесение разнородной информации в столбец азм есмь неормализованная таблица. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2013, 11:33 |
|
||
|
Иерархические структуры в реляционной БД & нормализация
|
|||
|---|---|---|---|
|
#18+
Arhat109Dimitry Sibiryakov, о да. Этого гемморою у меня до полумиллиона строк уже: 1) "Куп. разд. ЧЕРЕП", цена 150руб. -- это не "Купон разделю ЧЕРЕП" за 150руб. Это женский купальник с черепами на нужных местах. 2) "Альбом для рисования с/к б/к" -- это альбом С кисточкой и БЕЗ коробки. :) Насколько понимаю, автор хочет сказать что дополнение наименования вида товара его параметрами - это денормализация строки данных. Это и так и НЕ так, как тут ему правильно пытаются объяснить. Сильно зависит от задачи. А гемморой по автовыделению из строки параметров - это та задача, которой занимаюсь уже лет 10. Пока побеждает гемморой. :)аффтар в моем лице вообще про нормалиацию саму пг себе не спрашивал ибо опыта имеет не мало в этгм меня иерарх.структуры в купе с нормализауией интересовали ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2013, 11:36 |
|
||
|
Иерархические структуры в реляционной БД & нормализация
|
|||
|---|---|---|---|
|
#18+
kamenjahr, ув. аффтар! Это: "Если в реляционной БД отображают иерархические структуры данных (Tree leaf pattern), то что, нормализация данных "поламает" сию иерархическую структуру?" и это: 13982058 и это (там же): "кроме того, телевизиры смешаны с мп3 плеэрами, т.е таблица не нормализована" взаимоНЕсвязанные вопросы . Если это НЕ понятно, то ещё раз, с конца: 1. Строка наименования товара (теловизуры там или МПР3-плюеры - и пофиг на дюймовость) - это всего лишь строка символов в заданной кодировке... и НЕ может быть "нормализована", в силу своей атомарности. Банально - некуда... если, использование строки происходит "целиком" как строки текста. 2. Набор строк в том посту - может быть сложной структуры и требовать нормализации... только (и только) если их использование требует выделения параметров строки (в том примере дюймовости телевизоров) и обработки отдельных праметров как сущностей с которыми работает конечное ПО. Тогда такой набор строк, возможно(!) требует нормализации в виде разделения строки на наименование товара и его набор параметров (в отдельную таблицу, и возможно даже не одну). 3. Хранение в БД иерархии объектов - никак НЕ связано с процессом нормализации строк означенного примера. Соответственно "поломать" там нечего. Задача хранения иерархии - показать взаимозависимость записей(кортежей), задача нормализации - уменьшения избыточности хранимых данных... это "попердикулярные" задачи ваще-то. Как улучшение бензобака автомобиля (нормализация данных) может поломать задачу "перевозить груз" (необходимость иметь кузов) :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2013, 11:53 |
|
||
|
Иерархические структуры в реляционной БД & нормализация
|
|||
|---|---|---|---|
|
#18+
kamenjahrMasterZivпропущено... Эта таблица нормализована. Эта таблица не нормализована, поскольку атрибут name, Содержит размерность в дюймах И насрать. Она всё равно нормализована, пока ты не пытаешься эти дюймы использовать. А ты не будешь это пытаться делать, потому что это идиотизм. Чтобы это делать, надо иметь отдельное поле для этого, и, видимо, в отдельной таблице. А ЭТИ дюймы -- лишь часть имени продукта, их можно вывести и ввести. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2013, 12:02 |
|
||
|
Иерархические структуры в реляционной БД & нормализация
|
|||
|---|---|---|---|
|
#18+
kamenjahrMasterZivпропущено... Нихрена не понял. во-первых, где структура ? во-вторых, где ненормализованность ? Продемострируйте на примере, чего Вы увидеть желаете, когда пишете про структуру Код: sql 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2013, 12:42 |
|
||
|
Иерархические структуры в реляционной БД & нормализация
|
|||
|---|---|---|---|
|
#18+
Кот Матроскинkamenjahr, Вам же уже сказали - однородность/неоднородность неких данных зависит от задачи. для одной задачи - "Название + размерность", для другой - "просто строка", а для третьей - "набор символов английского алфавита". Если Вы в рамках задачи работаете с данными целиком , не пытаясь из них вычленять какие-то части - данные однородны. если вычленяете - неоднородны. Типичным и очень хорошим примером этого дела является телефонный номер. Для одних приложений -- это только номер, набор чисел (кстати, не всегда они и числа). Для других приложений (например, телефонии) -- сложнейшая составная сущность, во-первых, неатомарная, состоит из разных частей, а во-вторых, с альтернативными составляющими, поскольку по сути телефон -- это алгоритм установления соединения между двумя абонентами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2013, 12:49 |
|
||
|
Иерархические структуры в реляционной БД & нормализация
|
|||
|---|---|---|---|
|
#18+
kamenjahrс матрицами-смежности, а также просьбами "а-вываликасюда БД-амы-поглядим" пришел к сам к выводу, что нормализация при представлении иехрархических структур данных в принципе ниче поламать не могет, т.к столбцы, необходимые для реализации - не несут избыточной информации. В то же время сие представление может быть не нормализованным. Вывод был правильный. Это вообще на самом деле разные виды избыточности, так что они не пересекаются. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2013, 12:54 |
|
||
|
Иерархические структуры в реляционной БД & нормализация
|
|||
|---|---|---|---|
|
#18+
kamenjahrТак и я русским языком отвечаю всем тем, кто считает нормализованной таблицy, где в поле name содержится разнородная информация : наименование товара и размерность, что данная таблица не находится даже в 1НФ именно в виду разнородности информации. Так а кто тебе вообще сказал, что в напменовании есть размерность ? Там какие-то циферки кто-то написал, это ничего не значит. :-) На самом деле очень хорошо, что ты видишь эту "ненормализованность", это гораздо лучше, чем не видеть её вообще нигде, как часто бывает. Но тут ещё раз всё в порядке, до тех пор, пока ты не будешь искать по этой зашифрованной в наименовании размерности, или ещё как-то пытаться её использовать отдельно от имени товара. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2013, 12:56 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=38167328&tid=1541328]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
20ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
67ms |
get tp. blocked users: |
2ms |
| others: | 230ms |
| total: | 358ms |

| 0 / 0 |
