共通の設計方法は、「部品」の表を作成することです、例:
低トラフィックで正常に動作します
CREATE TABLE parts (page_id INTEGER, part_name VARCHAR(255), body TEXT);
。 (この場合のpage_idは、この部分を所有しているページの外部キーです.natch SELECT * FROM parts WHERE page_id = :some_page_id
と言って特定のページのすべての部分を取得します)
トラフィックが増加するにつれて、ページを組み立てることは大変なことになるかもしれません。その場合は、大きな内容のテキストフィールドから本文の内容を分割することは恐ろしいことではありません。このレベルでは、データベースの列にハッシュを直接シリアル化して、アプリケーションサーバーのCPUを(DBサーバーとは対照的に)作業の正当な立場に置くことで、速度が向上します。あなたが興味があると思い
列の型は「文字列タイプのストレージ要件」の下にここに列挙されていますhttp://dev.mysql.com/doc/refman/5.0/en/storage-requirements.html
をまとめると、TEXT(64キロバイト)は、最も基本的なデータを保持するのに十分な大きさでなければなりません。データが著しく大きくなったり、成長が予測される場合は、MEDIUMTEXT(16 MB)またはLONGTEXT(4096 MB) BLOB、MEDIUMBLOBまたはLONGBLOB(* TEXT型と同じサイズ)を使用して、DB列からPHP変数の逆シリアル化を実行します。
ありがとう、私はこれを試してみます – coolboycsaba
喜んで助けてください。もっと助けが必要な場合は、ここにコメントを投稿してください。 – Jan