powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / БД фильмов в очередной раз, но проблема новая
24 сообщений из 24, страница 1 из 1
БД фильмов в очередной раз, но проблема новая
    #38103350
Prophet_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Задание:
Предметная область – Сайт Kinopoisk.ru

Бизнес сущности:
1. Фильм
a. Название
b. Год
c. Жанр
2. Зарегистрированный пользователь сайта
a. Username

Требования:
1. Один пользователь может проголосовать за каждый фильм только один раз
2. Пользователь может указать для одного фильма несколько похожих

Сценарий:
1. Пользователь ставит оценку любому фильму от 1 до 10
2. Пользователь указывает похожие фильмы к любому фильму


Проблема в создании структуры для указания "похожести" одного фильма на другой.

Был вариант следующий:
-Таблица "Фильмы":
ID
Name
Group - идентификатор похожих фильмов. Т.е. если фильм А похож на фильм Б, то они имеют одинаковое значение в поле Group. Но тут проблема, если пользователь ошибся и захочет отменить, что фильм похож на другой, то возникают проблемы.
На форуме не нашёл похожей проблемы. Подскажите, если не трудно, как тут лучше составить структуру.
...
Рейтинг: 0 / 0
БД фильмов в очередной раз, но проблема новая
    #38103363
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Prophet_Подскажите, если не трудно, как тут лучше составить структуру.
Таблица "Оценка похожести" с полями "Фильм1", "Фильм2", "Пользователь".

Критерием похожести считается максимальное количество пользователей, которые так считают.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
БД фильмов в очередной раз, но проблема новая
    #38103367
qwerty112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Prophet_Был вариант следующий:
-Таблица "Фильмы":
ID
Name
Group - идентификатор похожих фильмов. Т.е. если фильм А похож на фильм Б, то они имеют одинаковое значение в поле Group. Но тут проблема, если пользователь ошибся и захочет отменить, что фильм похож на другой, то возникают проблемы.
На форуме не нашёл похожей проблемы. Подскажите, если не трудно, как тут лучше составить структуру.
никакого "похожести" в Таблица "Фильмы" !
это должна быть отдельная таблица
ID_фильм1ID_фильм2
...
Рейтинг: 0 / 0
БД фильмов в очередной раз, но проблема новая
    #38103373
Prophet_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо за ответ.
Можно только уточнить, что Вы имеете в виду под "Критерием похожести считается максимальное количество пользователей, которые так считают". Т.е. даже если один сказал, что А похож на Б - значит похож?
...
Рейтинг: 0 / 0
БД фильмов в очередной раз, но проблема новая
    #38103390
qwerty112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Prophet_Спасибо за ответ.
Можно только уточнить, что Вы имеете в виду под "Критерием похожести считается максимальное количество пользователей, которые так считают". Т.е. даже если один сказал, что А похож на Б - значит похож?
это ты уже должен решить, с какого количества "проголосвавших" за "похожесть" одного фильма на другой,
начинается "в-сам деле похожие !" :)

а для этого, нужно будет, или в эту таб."Оценка похожести" - счечик голосов добавить,
или ещё одна таб.
ИД_Оценка похожестиИД_Зарегистрированный пользователь сайта
...
Рейтинг: 0 / 0
БД фильмов в очередной раз, но проблема новая
    #38103405
Arhat109
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

я бы разбил на две таблички:

1. Похожесть (фильм1, фильм2, кол-воОценок; фильм1фильм2 - составной уникальный ключ)
2. ОценивалиЮзвери (fkey::Похожесть(фильм1фильм2), fkey::Пользователь, дата)

Можно "отменить" оценку - передумал.
Можно запретить повторную - такой уже есть.
Не надо ничего считать на лету.
...
Рейтинг: 0 / 0
БД фильмов в очередной раз, но проблема новая
    #38103412
Arhat109
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
qwerty112,

в самом деле похожие - тервер отвечал вроде как в мат ожидание не ниже 72.6% (уточненное банковское правило 70/30, округленное обывательски 80/20)... :)
...
Рейтинг: 0 / 0
БД фильмов в очередной раз, но проблема новая
    #38103434
Prophet_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо большое за помощь)
...
Рейтинг: 0 / 0
БД фильмов в очередной раз, но проблема новая
    #38103455
Prophet_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
При появлении новой записи в ОценивалиЮзвери в таблице Похожесть по ключу фильм1фильм2 в соотв записи в поле кол-воОценок - просто инкремент? Извините за глупый вопрос, задание учебное, а я нуб(
...
Рейтинг: 0 / 0
БД фильмов в очередной раз, но проблема новая
    #38103463
Prophet_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторв самом деле похожие - тервер отвечал вроде как в мат ожидание не ниже 72.6% (уточненное банковское правило 70/30, округленное обывательски 80/20)... :) тут вряд ли возможно) т. к. нету возможности оценить непохожесть и, следовательно, невозможно оценить эти 30-20 процентов)
...
Рейтинг: 0 / 0
БД фильмов в очередной раз, но проблема новая
    #38103481
vladimir74
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arhat109Dimitry Sibiryakov,

я бы разбил на две таблички:

1. Похожесть (фильм1, фильм2, кол-воОценок; фильм1фильм2 - составной уникальный ключ)
2. ОценивалиЮзвери (fkey::Похожесть(фильм1фильм2), fkey::Пользователь, дата)

Можно "отменить" оценку - передумал.
Можно запретить повторную - такой уже есть.
Не надо ничего считать на лету.

Да, только в таблицу похожести тоже желательно ввести юзвера. И в уник. ключ его добавить, воизбежании наукруток и тому подобным механизмам.
Кстати дату в похожести тоже можно добавить, потом пригодиться для статистик и многого другого...
...
Рейтинг: 0 / 0
БД фильмов в очередной раз, но проблема новая
    #38103496
vladimir74
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Prophet_авторв самом деле похожие - тервер отвечал вроде как в мат ожидание не ниже 72.6% (уточненное банковское правило 70/30, округленное обывательски 80/20)... :) тут вряд ли возможно) т. к. нету возможности оценить непохожесть и, следовательно, невозможно оценить эти 30-20 процентов)

тут единственный подход - выбор N похожих фильмов выбирая макс. фильм2 к фильму1
...
Рейтинг: 0 / 0
БД фильмов в очередной раз, но проблема новая
    #38103725
Prophet_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А если просто таблица похожие(фильм1, фильм2, юзер) - какие тут опасности. Потому что мне тонко намекнули что так лучше не делать, а почему ?
...
Рейтинг: 0 / 0
БД фильмов в очередной раз, но проблема новая
    #38103793
ART-CODE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Голосовалка за опубликованный материал есть во всех современных CMS
(в той же joomla например).
Функционал "похожести" там тоже есть.
Правда доступен авторам материала а не пользователям. (если мои данные не устарели).

Но в этом есть свой смысл: т.к. пользователь = потребитель.
Никто не будет сидеть и как маньяк "накликивать" Вам статистику.

Только тот, кто сам выкладывает материал (автор публикации) - может быть, еще будет более-менее серьезно к этому относиться.
(и то не всегда)
итого: весь этот функционал уже реализован.

А похожесть фильмов имеет смысл собирать программными средствами:
- через анализ видеоряда, (распознавание лиц актеров, динамика: статические планы, взрывы погони, распознавание марок машин)
- через распознавание звука (известные муз. темы, распознавание ключевых слов диалогов или через анализ титров.)
Вот это реально нужно . И действительно - будет работать.
...
Рейтинг: 0 / 0
БД фильмов в очередной раз, но проблема новая
    #38103935
Prophet_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Говорю ж, задание учебное, просто чтобы разобраться как это делается. Коммерческих целей не преследую.
...
Рейтинг: 0 / 0
БД фильмов в очередной раз, но проблема новая
    #38104011
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> Group - идентификатор похожих фильмов

Как только вы определите критерий похожести, структура сразу станет простой. Отдавать пользователю возможность свободного сравнения незачем. Формальные участники фильма, его производства и распространения, успешность проката и некоторое количество оценок профессиональных критиков известны, вы можете построить связи независимо от оценок пользователей. Остаются сюжетные особенности и спецэффекты.

Imho вы решаете ненужную задачу. imdb, например, использует интегральную оценку и ее вполне достаточно. В принципе, "Повелитель бури" и "Морпехи", например, - достаточно близкие по теме фильмы, но их невозможно сравнивать. "Бойцовский клуб" или "Город Бога" - шедевры, но между ними нет ничего общего. А "Операция "Арго"" - обычное дерьмо, несмотря на кучу номинаций. Вообще, художественные оценки - вещь слишком индивидуальная, чтобы можно было их накапливать.
...
Рейтинг: 0 / 0
БД фильмов в очередной раз, но проблема новая
    #38104089
Arhat109
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vladimir74,

А Вы какого "юзверя" предлагаете туда ввести? Там же суммарное количество "голосов" за пару... первого, последнего или какого?
...
Рейтинг: 0 / 0
БД фильмов в очередной раз, но проблема новая
    #38104098
Arhat109
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Prophet_, ?!? ни понял...

У Вас есть табличка пар фильмов с количеством голосов по каждой паре. Вам "для заданного фильма" надо найти "похожие".

То есть найти все пары к заданному и отобрать из них только те, у который сумма голосов больше критерия похожести от общей суммы голосов этих пар. Другое дело, что таких будет крайне мало, если ограничиваться только голосами авторов и критиков (доверенных участников) ...

... так что сам критерий - придется подбирать "опытным путем"... для начала можно предложить 27,4% наиболее высоких оценок...

Скажем к фильму 1 нашлось 100 пар. Выдаем первые 27 пар с наибольшими оценками по убыванию ...

При голосовании - да, либо создается новая запись (оценилась новая пара) или инкрементируется счетчик (в Мускуле ON DUPLICATE KEY UPDATE к операции INSERT)
...
Рейтинг: 0 / 0
БД фильмов в очередной раз, но проблема новая
    #38104100
Arhat109
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Prophet_,

а как Вы себе это представляете? Считать как - "на лету"?
...
Рейтинг: 0 / 0
БД фильмов в очередной раз, но проблема новая
    #38104179
Бредятина
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Prophet_Говорю ж, задание учебное, просто чтобы разобраться как это делается. Коммерческих целей не преследую.
Если учебное, то замечу, что фильм "Брат-2" похож на фильм "Чапаев", так как в обоих фильмах стреляют из пулемета Максим. Не исключено даже, что из одного и того же пулемета. Тогда, это вообще один фильм:) И это как-то нужно учесть в БД.
...
Рейтинг: 0 / 0
БД фильмов в очередной раз, но проблема новая
    #38104815
vladimir74
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arhat109vladimir74,

А Вы какого "юзверя" предлагаете туда ввести? Там же суммарное количество "голосов" за пару... первого, последнего или какого?

а зачем сразу сумировать. проще просто писать Film1_ID, Film2_ID, User_ID, Date.
суммировать надо при выдаче. Тогда будет намного больше возможностей с манипуляцией данных.
Можно выбирать с рассчетом дат, по пользователю или групп пользователей (если такие появятся) и т.д.

Хотя я это писал до того как увидел что БД учебная. В данном случае это не надо....
...
Рейтинг: 0 / 0
БД фильмов в очередной раз, но проблема новая
    #38104992
Arhat109
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vladimir74,

?!? а вторая табличка разве не позволит делать теже выборки и расчеты "при необходимости"? :)
...
Рейтинг: 0 / 0
БД фильмов в очередной раз, но проблема новая
    #38105075
vladimir74
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arhat109,

вторая оценка - это таблица оценок. Или нет?

PS сейчас посмотрел. у тебя идут оценки похожести. А не оценки фильма....
...
Рейтинг: 0 / 0
БД фильмов в очередной раз, но проблема новая
    #38105568
Arhat109
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vladimir74,

б-р-р-р... ничё не понял... у меня - ничего никуда не идёт... это не моя задача, а ТС-а. :)
...
Рейтинг: 0 / 0
24 сообщений из 24, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / БД фильмов в очередной раз, но проблема новая
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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