Я строию сайт онлайн-рынка/аукциона, где продавцы могут перечислить свои товары для продажи. Я использую PHP/MySQL/Javascript. Я попал в ловушку, хотя, когда дело доходит до вариантов продукта. Некоторые продукты, такие как футболки, имеют множество вариаций, таких как размер, цвет, материал, другие продукты, такие как бумага разных размеров и толщины. Некоторые продукты не имеют никаких вариантов. Таким образом, сохранение всех этих неизвестных изменений в MySQL доказывает, что это очень сложно. Я читал, что лучшим решением будет использование системной системы управления базами данных NoSQL, такой как CouchDB или MongoDB. Я также слышал, что PostgreSQL может обрабатывать эти разнородные данные.База данных NoSQL для онлайн-рынка
Так что мне интересно, стоит ли переключаться на один из этих dbs, и если да, то какой из них я могу просто хранить данные о продукте в NoSQL и хранить другие данные, хранящиеся в MySQL, или это будет головная боль программирования?
Я прочитал различия между CouchDB и MongoDB, такими как репликация Master-Master и Master-Slave, но я не очень понимаю эту сторону вещей. Если сайт рос массово, какое решение было бы более уместным для размещения онлайн-рынка: мастер-мастер или мастер-раб? Я также читаю, что есть различия в том, как они обрабатывают специальные запросы. Мне нужно будет искать db для предметов на основе цены, местоположения, времени окончания аукциона и т. Д., А также создавать рекомендации по продуктам на основе проданных или просмотренных ранее товаров, поэтому мой вопрос в основном состоит в том, что db будет наиболее подходящим для онлайн-рынка?
Большое спасибо заранее.