2017-01-05 17 views
-2

私は売り手が売りたい商品をリストできるオンラインマーケットプレイス/オークションサイトを構築しています。私はPHP/MySQL/Javascriptを使用しています。私はそれが製品のバリエーションになると、しかし、悩んだことがあります。 Tシャツなどの一部の製品では、サイズ、色、材質などのさまざまなバリエーションがあり、紙のようなさまざまなサイズや厚みがあります。一部の製品にはバリエーションはありません。これらの未知のバリエーションをすべてMySQLに格納することは本当に厳しいものです。私はCouchDBやMongoDBのようなSchemalのNoSQL文書データベース管理システムを使うのが良い解決策だと読んだことがあります。私はPostgreSQLがこの異種データを扱うことができるとも聞きました。オンラインマーケットプレイスNoSQLデータベース

これらのdbsのいずれかに切り替えるかどうか、もしあればNoSQLに製品データを格納し、MySQLに格納されている他のデータを保持するか、それともプログラミングの頭痛になるのでしょうか?

私はCouchDBとMongoDBの違いをマスターマスターレプリケーションとマスター/スレーブレプリケーションのように読んだことがありますが、私は実際にそのことを理解していません。サイトがオンラインマーケットプレイスのホスティングに適していると思われるソリューションが大規模に増えた場合:マスターマスターかマスタースレーブですか?また、アドホッククエリの処理方法との違いもあります。私は価格、場所、オークション終了時間などに基づいてアイテムのデータベースを検索することができるだけでなく、前のアイテムの販売やブラウジングの行動に基づいて製品の推奨を行う必要があるので、私の質問は基本的には、オンライン市場では?

事前に感謝します。

答えて

0

mongodbを使用できます。 mongodbはすべてのデータをオブジェクトに格納するためです。 将来的にデータベースが拡張されると思うので、データがオブジェクトに格納されている場合は、データベースを簡単に管理できます。

オブジェクトの強力な機能は、オブジェクトのサイズを簡単に拡張できることです。 mysqlのような複雑な関係を作る必要はありません。

また、マスタースレーブ機能は、mongodbの強力な機能です。 ここでは、すべてのデータベースが2回コピーされます。将来大きなエラーが発生した場合は、データベースを簡単にバックアップすることができます。

マスターレコードにはデータベースの元のコピーが含まれ、スレーブにはデータベースのバックアップコピーが含まれます。 dbにデータを挿入するたびに、自動的にスレーブにコピーされます。

関連する問題