数百万の製品を扱う e コマース Web サイトがあり、1 日に数百万のページビューがあり、主に製品の詳細ページであるとします。
私は現在、リレーショナル DB にすべてのデータを持っているとしましょう。
クエリを実行し、製品を集約およびフィルタリングするためにリレーショナル DB にデータを保持することの長所と短所は何でしょうか...ただし、製品の詳細にはフラット json ファイルを使用しますか?
したがって、1 つの製品ごとに 1 つのファイルがあり、すべての詳細が json にシリアル化されています。これらのファイルは、高性能 cdn の下に配置され、地理的に分散されます。ユーザーが
www.mysite.com/prods/00123
サーバー (またはクライアント) は、レイアウトのテンプレート ファイルを読み込み、cdn.mysite.com/prods/00123.json などから読み取ったデータを入力します。
したがって、この場合、基本的にクエリを実行する必要はありません。製品 ID にちなんで名付けられたファイルに直接ジャンプします。私はそれが非常に速いはずだと思いますが、独自の(高価で維持が難しい)分散データベースサーバーを構築する代わりに、スケーラビリティ/キャッシング/地理的分散を外部の強力なパートナー(akamai、amazonなどのcdn)に委任しますか?
私はあなたの提案/フィードバックを楽しみにしています...特にそれが現実世界の経験になる場合:)
ありがとう!