2017-01-05 4 views
-2

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

Так что мне интересно, стоит ли переключаться на один из этих dbs, и если да, то какой из них я могу просто хранить данные о продукте в NoSQL и хранить другие данные, хранящиеся в MySQL, или это будет головная боль программирования?

Я прочитал различия между CouchDB и MongoDB, такими как репликация Master-Master и Master-Slave, но я не очень понимаю эту сторону вещей. Если сайт рос массово, какое решение было бы более уместным для размещения онлайн-рынка: мастер-мастер или мастер-раб? Я также читаю, что есть различия в том, как они обрабатывают специальные запросы. Мне нужно будет искать db для предметов на основе цены, местоположения, времени окончания аукциона и т. Д., А также создавать рекомендации по продуктам на основе проданных или просмотренных ранее товаров, поэтому мой вопрос в основном состоит в том, что db будет наиболее подходящим для онлайн-рынка?

Большое спасибо заранее.

ответ

0

Вы можете использовать mongodb. Поскольку mongodb хранит все данные в объектах. Поскольку вы думаете, что ваша база данных будет расширяться в будущем, вы сможете легко управлять ею, если ваши данные хранятся в объектах.

Мощная функция объекта заключается в том, что вы можете легко расширить размер объекта. Вам не нужно создавать сложные отношения, как в mysql.

Кроме того, функция master-slave является мощной функцией mongodb. Здесь каждая база данных копируется два раза. Поэтому, если в будущем произойдет большая ошибка, вы можете легко создать резервную копию своей базы данных.

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

Смежные вопросы