|
Gjvjubnt составить базу...
|
|||
---|---|---|---|
#18+
Вопрос таков: Нужно что-то вроде пары виртуальных магазинов/аукционов. Кажды магазин продает товары и каждая единица имеет как общие хар-ки(например название, вес), так и собственные(например возраст и состояние). Сейчас вариант примерно таков: таблица с магазинами, таблица с описанием общих параметров, с описанием конкретных вещей. Как правильно составить базу? Ну или, можно ли сделать одно поле, в котором будут храниться ссылки на все товары(кроме использования большого поля с разделителями). Проблема в том, как впихнуть в таблицу ссылки на все элементы, тк кол-во полей ограничено. Может кто сталкивался... ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2004, 14:28 |
|
Gjvjubnt составить базу...
|
|||
---|---|---|---|
#18+
create table goods ( good_id bigint not null primary key auto_increment, caption varchar(100) not null, group_id bigint not null, ... index by_group_id(group_id) ); create table properties ( prop_id bigint not null primary key auto_increment, name varchar(100) not null, ... ); create table good_properties ( good_id bigint not null, prop_id bigint not null, value varchar(200), unique (good_id, prop_id) ); Это позволит хранить для каждого товара произвольный список свойств и их значений. Все общие свойства лучше вынести прямо в goods ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2004, 17:39 |
|
Gjvjubnt составить базу...
|
|||
---|---|---|---|
#18+
Мож я что-то торможу, но я имел ввиду вот что: в таблице, как я понимаю, задается фиксированное число полей, а мне нужно, чтоб в каждом поле можно было помещать несколько товаров или надо, как я опять же понимаю, создавать число полей в св-вах(читай таблице) равное числу товаров? Хотя может я и торможу... Просто, все осложняется тем, что есть много "виртуальных" магазинов и много не зависимых товаров, а также много пользователей... Все это переплетенно между собой... Те товар ходит, так сказать, "по кругу"). Можно в св-вах товара указать обладателя, но производительность... imho явно медленнее... мне это очень критично. Скрипты магазинов - не то, там у каждого товара нет собств. свойст, только общие для каждого вида( ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2004, 18:22 |
|
Gjvjubnt составить базу...
|
|||
---|---|---|---|
#18+
Мож я что-то торможу, но я имел ввиду вот что: в таблице, как я понимаю, задается фиксированное число полей, а мне нужно, чтоб в каждом поле можно было помещать несколько товаров или надо, как я опять же понимаю, создавать число полей в св-вах(читай таблице) равное числу товаров? Хотя может я и торможу... Ты не должен хотеть помещать в одно поле название нескольких товаров. Это противоречит так называемым правилм нормальных форм. Просто, все осложняется тем, что есть много "виртуальных" магазинов и много не зависимых товаров, а также много пользователей... Все это переплетенно между собой... Те товар ходит, так сказать, "по кругу"). Можно в св-вах товара указать обладателя, но производительность... imho явно медленнее... мне это очень критично. Скрипты магазинов - не то, там у каждого товара нет собств. свойст, только общие для каждого вида( Производительность? И склько же в среднем запросов к базе идет за 1 минуту? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2004, 20:28 |
|
Gjvjubnt составить базу...
|
|||
---|---|---|---|
#18+
Я понимаю, что не должен) я имел ввиду, что не знаю как это правильно реализовать... надумал два варианта - оба не подходят: один пагубно сказ. на производительности, а другой не логичен... Запросов будет порядка 5+ на одного пользователя, пользователей 100+(с начала, потом будет идти расширение), те порядка 100 запросов в секу(с учетом времени на прочтение страницы, проведения каких-либо операций и тд) Собсно, интересует как правильно реализовать все это. Хотя уже думается, что от чего-то придется отказаться(эт я про доп. опции) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2004, 20:49 |
|
Gjvjubnt составить базу...
|
|||
---|---|---|---|
#18+
Давайте попробую объяснить более подробно(насколько получится). Есть пользователи со своими хар-ками, есть магазины со своими хар-ками(в том числе с товарами), собсно сами товары с своими хар-ками. Надо, чтобы каждый магазин продавал свои товары, но тк товаров будет много, то составлять столбец для каждого товара нецелесобразно. Короче, чтобы в магазин можно было добавлять товары без ограничения. Наверно, можно сделать для каждого магазина свою таблицу с товарами(только что доперло)... Как сделать это все, так сказать, элегантнее? И, самое важное, производительнее? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2004, 21:46 |
|
Gjvjubnt составить базу...
|
|||
---|---|---|---|
#18+
авторМож я что-то торможу, но я имел ввиду вот что: в таблице, как я понимаю, задается фиксированное число полей, а мне нужно, чтоб в каждом поле можно было помещать несколько товаров или надо, как я опять же понимаю, создавать число полей в св-вах(читай таблице) равное числу товаров? Хотя может я и торможу... Мммм... или Я торможу или ... Объясни в какое поле ты собираешся помещать несколько товаров? По второму пункту опять-же ты ничего не путаешь? Может все-таки по обычной логике свойства принадлежат товару а не товары свойствам? И тогда твоя таблица "свойства" превратиться в таблицу "товары", шириной (количеством полей) равной количеству свойств? А так, единственное что приходит действительно на ум полезного: RTFM RDBMS для затравки ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2004, 21:58 |
|
Gjvjubnt составить базу...
|
|||
---|---|---|---|
#18+
Запросов будет порядка 5+ на одного пользователя, пользователей 100+(с начала, потом будет идти расширение), те порядка 100 запросов в секу(с учетом времени на прочтение страницы, проведения каких-либо операций и тд) Собсно, интересует как правильно реализовать все это. Хотя уже думается, что от чего-то придется отказаться(эт я про доп. опции) 100 запросов в секунду по 5 запросов на пользователя получаем 20 заходов в магазаин в секунду (в среднем). Это составит 20 * 86400 = 1.728.000 пользователей в день.... Ты программист www.amazon.com : ))))))) ? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2004, 10:20 |
|
Gjvjubnt составить базу...
|
|||
---|---|---|---|
#18+
Не, не путаю) просто так будет очень большое кол-во товара, то даже по проиндексированному полю поиск будет производится с грузиловой, или нет? А при указанном мною кол-ве пользователей это не будет хорошо... Поэтому и интересно как реализовывать подобную штуку :) Насчет амазона, я бы конечно не против :) Не я просто пробую сделать игру типа комбатса или ганжи. Просто много юзверей онлайн и соотв. много запросов и я пытаюсь все это оптимизировать и увязать... ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2004, 16:47 |
|
|
start [/forum/topic.php?fid=47&fpage=694&tid=1855484]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
55ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
2ms |
others: | 13ms |
total: | 164ms |
0 / 0 |