MySQLにJSONとしてデータを保存する 質問する

MySQLにJSONとしてデータを保存する 質問する

これは初心者がやることだと思い、これまで一度もやったことがありません。その後、FriendFeed がこれをやって、実際に DB のスケールを改善し、レイテンシを短縮したことを知りました。これをやるべきかどうか気になっています。もしそうなら、正しいやり方は何でしょうか?

基本的に、MySQL のすべてを CouchDB のような DB として保存する方法を学ぶのに適した場所はどこですか? すべてを JSON として保存すると、より簡単で速くなるようです (構築が簡単で、待ち時間が短くなります)。

また、DB 上に JSON として保存されたものを編集、削除などするのは簡単ですか?

ベストアンサー1

コメントしている人は皆、間違った角度からこの問題に取り組んでいるようです。リレーショナル DB に PHP 経由で JSON コードを保存するのは問題ありませんし、実際、このような複雑なデータの読み込みと表示は速くなりますが、検索やインデックス作成などの設計上の考慮事項も出てきます。

これを実行する最善の方法は、ハイブリッド データを使用することです。たとえば、日時に基づいて検索する必要がある場合、MySQL (パフォーマンス調整済み) は PHP よりもはるかに高速になります。また、会場の距離を検索する場合も、MySQL の方がはるかに高速になります (アクセスではなく検索に注意してください)。検索する必要のないデータは、JSON、BLOB、または本当に必要と思われるその他の形式で保存できます。

アクセスする必要があるデータは、基本的なケースごとの請求書システムなど、JSON として簡単に保存できます。RDBMS のメリットはほとんどなく、正しい HTML フォーム構造があれば、json_encoding($_POST['entires']) だけで JSON に保存できます。

MongoDB をご利用いただいているとのこと、うれしく思います。今後も MongoDB がご愛用いただければ幸いです。しかし、MySQL が常に無視できるとは思わないでください。アプリの複雑さが増すにつれ、一部の機能や特徴のために RDBMS が必要になる可能性が高くなります (アーカイブされたデータの削除やビジネス レポート作成のためだけの場合でも)。

おすすめ記事