私はデータベース設計に少し慣れていないので、テーブルに何を格納する必要があり、後でサーバーで処理できるテキストフィールドにマークアップ言語で何を格納する必要があるのか疑問に思っています。私の傾向は本質的にすべてのテーブルを作成することですが、mediaWikiのような多くのアプリケーションがマークアップを使用してデータを大きなテキストフィールドに格納していることに気づきました。これは、データベースクエリの量とテーブルのサイズを制限することで時間を節約しますか?または、サーバー側の処理に時間がかかりますか?
私のページ構造は次のとおりです。
Page contains:
id
page_image_id
user_id
title
path
deleted
Page has many Sections
-
Section contains:
id
page_id
position
Section has many Paragraphs
Section has many Images
Section has many Page_Links
-
Paragraph contains:
id
section_id
body_text
position
-
Image contains:
id
section_id
user_id
image_path
description
position
-
Page_link contains:
id
page_id
section_id
description
position
10万ページ以上に達する可能性を念頭に置いてデータベースを設計するのが好きです。最後の3つのテーブルは、すぐに大きくなる可能性があることに注意してください。そのすべての情報をセクションテーブルのマークアップに格納してから、サーバー側のコードを使用して情報を処理する方が効率的でしょうか。または、データベースクエリの速度を過小評価していて、そこにあるデータを操作する準備ができているので、上記の方が効率的ですか?テーブルの作成をやめてマークアップを使用する必要があるポイントはありますか?