|
|
|
Удалять, или архивировать?
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! Лично для своей ситуации я этот вопрос уже решил, но просто интересно знать мнение профессионалов. Скажем, есть база данных каких-то товаров: самая обычная БД, в которой каждая запись — это инфа о товаре. Если, например, некий товар утратил актуальность, как лучше поступить: удалить этот товар из базы данных (удалить запись), или отметить этот товар как "архивный" ? (это подразумевает, что у каждого товара есть поле "архивный" с вариантами значений: true|false). Если запись товара удаляется , то, насколько я понимаю, уменьшается размер БД, системе нужно выполнять меньше операций сканирования/сравнения и.т.п. — это плюс. С другой стороны, насколько я знаю, возникают всяческие фрагментации индексов таблицы, что плохо сказывается на производительности — это правда? (ну, я уже просто не говорю о том, что страницы веб-сайта для конкретного товара начинают отдавать код HTTP 404 и это не нравится сеошниками и поисковикам). Если запись товара "архивировать" , то размер БД будет всё увеличиваться и увеличиваться, и увеличиваться; операций сканирования/сравнения нужно будет проводить всё больше и больше, и больше (т.е., эти операции будут занимать больше времени, понятно, что мы говорим о миллисекундах времени, но масштабы и нагрузки БД бывают разными). Т.е., скажем так, если записи не удалять, то через пару лет можно получить нехилую кучу записей, которые просто-напросто являются "мусором" (с другой стороны, сеошники и поисковые системы кайфуют — количество страниц на сайте не уменьшается). В общем, кто как решает подобную проблему? Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2013, 15:37 |
|
||
|
Удалять, или архивировать?
|
|||
|---|---|---|---|
|
#18+
Совсем удалять вряд ли возможно, т.к. оборвутся ссылки на этот товар. Ведь он же участвует в документах, заказах и т.п. Никакой особенной нагрузки это не дает, т.к. все равно поиск происходит по индексу. Поиска, требующего полного сканирования таблицы не должно быть. Иногда такой товар переносят в архивную таблицу, но это требует немалых изменений в программном коде. roman_lenkoстраницы веб-сайта для конкретного товара начинают отдавать код HTTP 404 и это не нравится сеошниками и поисковикамЭто как раз нормально. Намного хуже, когда код остается 200 со словами "у нас такого товара нет". Как вариант, можно сделать 301-ый редирект на страницу аналогичного товара или на страницу его товарной группы в каталоге товаров. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2013, 15:59 |
|
||
|
Удалять, или архивировать?
|
|||
|---|---|---|---|
|
#18+
roman_lenkoразмер БД будет всё увеличиваться и увеличиваться, и увеличиваться; операций сканирования/сравнения нужно будет проводить всё больше и больше, и больше Нет, эти два утверждения никак не связаны между собой. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2013, 16:00 |
|
||
|
Удалять, или архивировать?
|
|||
|---|---|---|---|
|
#18+
Был большой срач на эту тему. Если кратко - большинство сошлось на том, что удалять товары не надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2013, 16:02 |
|
||
|
Удалять, или архивировать?
|
|||
|---|---|---|---|
|
#18+
miksoftПоиска, требующего полного сканирования таблицы не должно быть. То есть? Вот, например, элементарнейший запрос: Код: sql 1. Разве это не полное сканирование таблица по индексу id? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2013, 16:03 |
|
||
|
Удалять, или архивировать?
|
|||
|---|---|---|---|
|
#18+
А что такое "сканирование" в вашем представлении? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2013, 16:10 |
|
||
|
Удалять, или архивировать?
|
|||
|---|---|---|---|
|
#18+
> кто как решает подобную проблему? Нет такой проблемы, Рома. Постановка задачи определяет абсолютно все технические нюансы. Если вы хотите помойку цен типа яндекс-маркета, то, конечно, нет смысла хранить данные о продуктах, производство которых прекращено двадцать лет назад. Но если вам нужны исследования рынка, то вы будете вынуждены хранить данные обо все экземплярах модельного ряда с учётом фазы жизненного цикла. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2013, 16:18 |
|
||
|
Удалять, или архивировать?
|
|||
|---|---|---|---|
|
#18+
roman_lenkoТо есть? Вот, например, элементарнейший запрос: Код: sql 1. Разве это не полное сканирование таблица по индексу id?Нет, конечно. Тут никакого "полного сканирования" нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2013, 16:22 |
|
||
|
Удалять, или архивировать?
|
|||
|---|---|---|---|
|
#18+
roman_lenko Код: sql 1. Разве это не полное сканирование таблица по индексу id? Нет, конечно. Это поиск по индексу. На больших таблицах поиск осуществляется на несколько порядков быстрее, чем полное сканирование. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2013, 16:23 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=38447144&tid=1541081]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
145ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
| others: | 228ms |
| total: | 472ms |

| 0 / 0 |

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