国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

樹形結構的數據庫的存儲

2019-11-14 14:24:38
字體:
來源:轉載
供稿:網友

      程序設計過程中,我們常常用樹形結構來表征某些數據的關聯關系,如企業上下級部門、欄目結構、商品分類等等,通常而言,這些樹狀結構需要借助于數據庫完成持久化。理想中樹形結構應該具備如下特征:數據存儲冗余度小、直觀性強;檢索遍歷過程簡單高效;節點增刪改查CRUD操作高效。

      列舉了一個食品族譜的例子進行講解,通過類別、顏色和品種組織食品,樹形結構圖如下:

       1,對樹形結構最直觀的分析莫過于節點之間的繼承關系上,通過顯示地描述某一節點的父節點,從而能夠建立二維的關系表,則這種方案的Tree表結構通常設計為:{Node_id,Parent_id}
 
      2,在基于數據庫的一般應用中,查詢的需求總要大于刪除和修改。為了避免對于樹形結構查詢時的“遞歸”過程,基于Tree的前序遍歷設計一種全新的無遞歸查詢、無限分組的左右值編碼方案,來保存該樹的數據。
      至于上述兩種方法的具體介紹和實現以及優缺參考:樹形結構的數據庫表Schema設計。
      其實我們最重要的數據是這個樣子的:
      {Catagory:"Food",FoodCategory:"Fruit",color:"Red",Name:"Cherry"}
      {Catagory:"Food",FoodCategory:"Fruit",color:"Yellow",Name:"Banana"}
      {Catagory:"Food",FoodCategory:"Meat",Name:"Beef"}
      {Catagory:"Food",FoodCategory:"Meat",Name:"Pork"}
      ……
      其實我覺得這種關系型數據庫可以用MongoDb來存儲(Json的數據格式),這樣用非關系數據庫的思想解決這個問題豈不是更好?這種可以不通過遞歸過程不斷地訪問數據庫,每次數據庫IO都會有時間開銷;也避免了第二種節點的添加、刪除及修改代價較大,將會涉及到表中多方面數據的改動。是不是萌萌噠?一家之言,歡迎拍磚!
 
 
 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 丹巴县| 蓬溪县| 喀喇沁旗| 司法| 商都县| 兴业县| 当阳市| 霍州市| 兰溪市| 绥宁县| 萍乡市| 慈溪市| 三都| 武隆县| 洪江市| 邵武市| 临城县| 昭觉县| 大田县| 漾濞| 精河县| 全南县| 大埔县| 黔西| 葫芦岛市| 沙坪坝区| 乌拉特后旗| 德钦县| 迁西县| 建瓯市| 徐汇区| 浮梁县| 荔浦县| 永靖县| 碌曲县| 全南县| 益阳市| 综艺| 岢岚县| 都江堰市| 太仓市|