程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> 3種高效的Tags標簽體系數據庫設計計劃分享

3種高效的Tags標簽體系數據庫設計計劃分享

編輯:MySQL綜合教程

3種高效的Tags標簽體系數據庫設計計劃分享。本站提示廣大學習愛好者:(3種高效的Tags標簽體系數據庫設計計劃分享)文章只能為提供參考,不一定能成為您想要的結果。以下是3種高效的Tags標簽體系數據庫設計計劃分享正文


需求配景

今朝主流的博客體系、CMS都邑有一個TAG標簽體系,不只可讓內容鏈接的構造化加強,並且可讓文章依據Tag來辨別。比擬傳統老式的Keyword形式,這類Tag形式可以零丁的設計一個Map的映照表來增長體系的負載和查詢的效力。

數據庫設計計劃1

此計劃分為2個表:

1.Tag表
2.文章表

Tag表表構造:

tagid # tag標簽的ID
tagname #tag內容
num #以後Tag的援用個數

文章表構造:

ID #文章ID
title #文章題目
tags #tags列表,多個以,朋分
tagid #tags的ID 多個以,朋分
...

此種方法Tag標簽重要內容保留在 文章表 中,關於Tag表的壓力較小,只是添加的時刻更新一下Tag的援用數目,然則查詢的時刻效力缺乏,不是好方法

數據庫設計計劃2

第二種計劃應用2個Tag表,個中一個保留Tag信息,另外一個保留映照信息:

Tag表:

tagid # tag標簽的ID
tagname #tag內容
num #以後Tag的援用個數

Tagmap表

tagid
aid

文章表

ID #文章ID
title #文章題目
tags #tags列表,多個以,朋分
...

這類情勢,每次宣布內容和修正內容的時刻 都去更新一下Tag表和 Tagmap表。

查詢的時刻須要從Tagmap表中查找呼應的文章ID,然後應用文章ID去查詢詳細的文章信息,由於每次查詢都是應用索引,所以效力較高。

數據庫設計計劃3

前兩種計劃都是應用純潔的Mysql來設計的,第三種計劃將應用Nosql的魅力來設計。

根本構造同計劃2,只是在Tag表和Tagmap表中應用mongo/redis如許的nosql數據庫辦事器,如許可以施展nosql數據庫壯大的線性查詢才能。

1) 第一種方法的表構造設計與計劃2完整雷同,只是數據庫辦事器換了。

2)其他的計劃,固然是施展Nosql的線機能力來設計存儲的Key了,特別是應用redis的時刻,應用的Key的構造可以完善的進步查詢效力

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved