Мне нужно создать приложение, которое «любит» в нем. Это означает, что человек с ID ID может понравиться товар с уникальный ID, но только раз. Предмет не может не понравиться. Я только придумал небольшой стол, в котором есть столбцы user_id
и item_id
, перед вставкой я должен проверить, понравился ли этот пользователь этому элементу. Мне кажется, что это не лучший способ выполнить задачу, потому что будет много (~ 1 миллион) пользователей и множество предметов, поэтому таблица должна быть довольно большой и это повлияет на поиск и скорость вставки. Есть ли другой подход к этому? Или, если мой метод подходит здесь, каков наилучший способ хранения этой информации в базе данных? В настоящее время я использую базу данных MySQL, лучше ли здесь использовать NoSql?Реализация функции «Мне нравится»
2
A
ответ
2
Ну, первое, что нужно сделать, это установить «уникальное» ограничение на два столбца (в сочетании), чтобы их комбинация была уникальной. Не уверен, поддерживает ли MySQL это, но MSSQL уверенно делает, и вы можете иметь до 8 ГБ данных, поэтому миллион пользователей не приближается к своему пределу - хорошо масштабируется, если у вас более миллиона. Вы должны создать индекс покрытия на liker и понравиться и сделать его уникальным. С помощью 80 дополнений вставки будут мгновенными, а также поисковые запросы. Это реляционная проблема, поэтому реляционная база данных будет крепить любую нереляционную (NO SQL) базу данных для скорости и эффективности. вы не упомянули, понравился ли кто-то и понравился ли он кометущий - я думаю, не
Смежные вопросы
- 1. Реализация баз данных простой функции «нравится»
- 2. Мне нравится/не нравится голосовать в GridView
- 3. Tab Мне нравится Выбор
- 4. Настройка кнопки «Мне нравится»
- 5. Facebook API «Мне нравится»
- 6. Мне нравится javascript loop
- 7. Inline кнопка «Мне нравится»
- 8. Мне нравится комментарий Ajax error
- 9. Проверка формы мне не нравится
- 10. Mysql very special Нравится мне
- 11. Мне нужна поддержка: mpl реализация функции exp()
- 12. Способы запроса Facebook График «Мне нравится x?»
- 13. using parse to Мне нравится сообщение
- 14. Почему мне не нравится мой тост?
- 15. Как создать пользовательскую кнопку «Мне нравится»?
- 16. FB Мне нравится статус на моей странице
- 17. OpenGL текстура, мне не нравится мой bmp
- 18. Как мне нравится локализовать мою библиотеку
- 19. Выбор пользователей Мне нравится использовать PHP
- 20. Захват события щелчка кнопки «Мне нравится»
- 21. Мне нравится кнопка понравилась все сообщения
- 22. C++ std :: exception ... возможно, мне больше нравится?
- 23. Facebook «Мне нравится» продолжает восстанавливаться до 0
- 24. Linq Lambdas vs SQL Мне нравится Notation
- 25. Мне нравится находить корреляцию между строками?
- 26. Facebook/Twitter «Мне нравится» в чистом HTML
- 27. SQL Мне нравится запрос последнего совпадения
- 28. Мне нравится/Рекомендация Показывает ссылку относительно www.facebook.com
- 29. NHibernate Linq Мне нравится Order By Likeness
- 30. Танго с Django - Создайте кнопку «Мне нравится»
Определите уникальный индекс на (user_id, item_id), чтобы наложить свое ограничение. Это более основано на наборе, поэтому n является иерархическим, поэтому SQL отлично подходит для реализации. –