999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

非關系型數據庫在企業社交網絡中的設計

2018-02-26 07:53:50石春菊孫麗霞
電子技術與軟件工程 2018年15期

石春菊 孫麗霞

摘要

隨著企業社交網越來越被企業所重視和應用,企業社交網絡平臺中涉及到的數據容量也越來越大、數據之間的關系也越來越復雜,關系型數據庫在處理這些大量數據和復雜數據時已經非常吃力,再加上Oralce數據庫擴展優化所花費的費用越來越高.本文基于以上原因,提出設計企業社交網絡平臺時,采用非關系型數據庫圖數據庫和T級存儲容量的MongoDB數據庫存儲數據的方法。

【關鍵詞】企業社交網絡 Neo4j MongoDB

1 引言

近年來,在工業4.0的推動下,傳統制造企業轉向智能化智造,將互聯網、物聯網、信息技術和智能智造互聯到一起,形成新的工業設計、生產、包裝、銷售、管理于一體的智能化企業。從制造業的分布圖上來看,企業分布區域較大,如何將企業互聯起來,實現企業協作、新機會挖掘、企業推薦、企業社交。在這個需求下,企業社交網絡如國外的Chatter、Yammer、Lotus Connections、Share Point和國內的金蝶云之家、微部落、用于人才管理的TITA以及操作簡單如微信的推事本等。這些企業社交網絡工具方便了員工間的交流和協同,提高了部門間的協作處理事物的速度,實現了資源共享,提高了辦公效率,同時也可以為企業挖掘新的客戶,成為企業營銷的新方式。由于企業社交中所用到的數據關系密切,如企業之間的供應關系、企業員工關系、產品、采購件和業務等,像這樣的數據若采用關系型數據庫的形式進行存儲,數據冗余將會變的很大,而且當查詢復雜企業供應關系時,即多表關聯查詢時極其不易查詢,隨著互聯網2.0的興起,網站設計均是采用動態頁面架構,需要實時生成動態頁面和提供動態信息,要求數據庫并發負載非常高,往往要達到每秒上萬次讀寫請求,關系型數據庫應付上萬次的查詢請求還勉強能應付,但要處理上萬次的寫數據請求,就無法承受了。關系型數據庫的擴展是采用縱向擴展方式,成本較高,數據模型的擴展不靈活,水平擴展能力較差。而基于Web架構的需求中,往往需要水平橫向擴展,通過增加服務器節點的方式實現數據的遷移。而且關系型數據庫在處理超大規模數據上的響應時間和數據處理速度都跟不上客戶需求。基于關系型數據庫的以上缺點,非關系型數據庫應運而生。非關系型數據庫是一種區別于關系型數據庫的一種數據庫管理方式,它采用的數據模型是類似于鍵/值、文檔、列簇的存儲模型,水平擴展靈活性高,并且支持海量數據存儲。具體的非關系型數據庫主要有以下四大類,一類是鍵值存儲數據庫,它主要使用哈希表的方式進行存儲,通過特定的鍵和指針指向數據;一類是列存儲數據庫,通過鍵指向多列的方式存儲數據;一類是文檔型數據庫,通過建立鍵值存儲模型存儲數據,典型的文檔數據庫是MongoDB;一類是圖形數據庫,通過靈活的圖數據模型存儲復雜關系的數據。

企業社交網絡不僅打破了傳統的企業之間的交流方式,同時突破了企業員工之間的信息交互方式,企業間、企業與員工的信息交互不僅包括了文字之間的交互,同時包括產品信息的推廣、關聯、圖片、附件及實時信息的更新等。目前關系型數據庫雖為主流,但因其在網站規模發展中遇到的瓶頸越來越多,如事務一致性、讀寫實時性、復雜多表查詢等,使得眾多開發者轉向了非關系型數據庫的使用。

在企業社交網絡中存儲的數據主要有2大部分,一部分是以企業為中心的自我網絡中數據的存儲,如企業供應商關系、業務量、業務類型、產品緊密度、產品與員工的責任制關系等。在設計中這一部分數據要求可擴展性及更新效率較高,采用圖數據庫進行存儲。另一部分數據就是企業郵箱中數據的存儲,由于郵箱中的數據的大小、內容不是固定單一的,為方便管理存儲采用面向文檔式的數據庫存儲方式。

2 非關系型數據庫

2.1 圖數據庫

圖數據庫是利用圖結構進行存儲和查詢數據的一種非關系型數據庫,典型的圖數據庫是Neo4j數據庫,它是基于圖論算法的數據庫,是由節點和關系組成的,節點是以key-value的形式存儲的,它的處理完全是事務性的。關系連接相應的節點,表示節點之間的某種聯系。節點關系是一個簡單的有向無環圖。如在制造業中,我們要表示螺絲是企業的某位員工生產的,并供給某些企業用于生產某些產品。可用圖1表示:從這個圖中可以看出圖數據庫是是節點和關系的集合,是以圖做為數據模型的。在節點和關系上都有相應屬性值,屬性值是可以任意多個的,它的存儲是采用的json格式。

Neo4j數據庫是一個完全兼容增刪改查、基于圖論算法的圖形數據庫。Noe4j數據庫的圖形結構導致其數據結構是可有可無的,它在數據建模方面常常用于針對復雜領域的數據集,因此常常被用于社交網絡、深度推薦算法等領域的數據建模。Neo4j數據庫的規模是自適應的,其讀取性能與節點的個數無關,即圖的大小不能影響其讀取性能,neo4j數據庫的讀性能可以達到每毫秒遍歷2000多節點關系。圖數據庫的查詢語言是Cypher語言。應用程序的編程接口則是通過REST API接口進行訪問的,采用的語句是面向對象的Java語言。

企業社交網絡中的圖數據庫的節點標簽和關系總圖如圖2所示。

每一節點標簽下,可以包含若干多個節點。創建用戶和企業標簽節點的語句,例如

CREATE(t1:T{name:”Employee”)

CREATE(t2:T{name:”Enterprise”)

創建企業員工節點N,

CREATE(n:Employee(name:'小明,address:,status:NORMAL,createTime:,IastModifyTime:,.mail:xiaoming@126.com' ,phone:' 8985424'}),節點p中的屬性包括:adress、status、createTime、lastModifyTime、name、email、phone。

創建企業節點E,

CREATE(e:Enterprise{mc:魯銀集團禹城粉未治金制品有限公司,address:山東省,business:粉未治金件,biaozhun: ,source:WEB,status:NORMAL,createTime:,lastModifyTime:,email:,phone:,fax:,miaoshu:})

創建員工、企業之間關系,用戶隸屬于企業

CREATE(n)-[:Has employee]->(e)

上面的語句僅僅是創建一個用戶、企業,并建立關系。節點的創建和關系的建立本系統中均是利用java方法批量創建的。

2.2 MongoDB

MongoDB是一個面向文檔的數據庫,介于關系和非關系型數據庫之間的一種數據庫,它采用的數據存儲方式是接近于JSON的BJSON格式存儲的。MongoDB可以存儲T級數據庫,它采用的是橫向擴展數據庫的存儲方式,通過分區的方式將數據分散到更多機器上,就是將數據添加到集群中即可,橫向擴展的優點是即便宜又易于擴展。MongoDB的數據庫擴展方式對于用戶來說是透明的,用戶只需將精力放在編寫應用程序上即可。MongodDB中的主鍵均由客戶端的驅動程序自動創建。

MongoDB也是采用key-value的形式進行存儲,多個key-value組成文檔,一組文檔組成集合,文檔相當于關系數據庫中的一行,集合相當于一個表,集合是動態模式的。集合中的文檔可以是各式各樣的。多個集合組成數據庫,一般常將類型相同的文檔存于同一個集合里,可提高查詢速度。MongoDB的語法格式同sq1格式類似,主要有以下命令show dbs查看數據庫;show collections查看集合;createcollection創建一個集合;insert插入數據;find查找數據;update修改數據;remove刪除數據。

企業社交網絡中的有一重要的數據管理就是郵件的管理,由于郵件管理部分中有附件,收發郵件中的附件的大小不確定,有時幾k,有時幾M甚至有幾G的附件存在,若采用關系型數據庫進行存儲的話,一般的方式是在在關系型數據庫中存儲附件名,通過附件名再查找服務器中的附件實現下載,這種方式使的查詢和下載的時間和空間復雜度均有所增加。因此在企業社交網絡中附件存儲采用的是文檔數據庫的存儲方式。MongoDB中單個文檔限制為4MB,但組成集合的文檔的數量是沒有限制。因為存儲的文件的大小理論上講也是沒有限制的,MongoDB自帶分片機制,在存儲大文件時會自動將大文件分片存儲。本系統中的附件集合如圖3所示。

附件集合主要存儲系統中的附件資源,附件資源的類型有文本文檔、聲音、圖片、視頻及其它類型的文件,filename是附件的名稱,length附件的長度,uploadDate是附件的上傳日期。

3 小結

企業社交網絡中所涉及到的這兩種非關系型數據庫,主要的目的是為了能充分利用Neo4j數據庫和MongoDB數據庫的優點,在企業社交網絡平臺中數據之間的關系較多,而且在數據處理過程中會建立或解除關系,如職工歸屬關系、企業供應關系等。Neo4j提供了直觀的可視化界面,以圖論為基礎、鍵值對的數據存儲方式、水平擴展靈活,對于數據的增刪改查可通過REST服務實現。MongoDB文檔數據庫則以文檔作為最小的單位進行存儲,通過鍵定位一個文檔,同屬于鍵值數據庫的存儲方式。關系型數據庫與非關系型數據庫形成了一種互補式的關系,大部分系統中兩者都會用到,并且無法取代,而對于企業來講,高性能的數據庫的存儲方式、方便系統擴展才是設計人員所追求的,選取合適的數據庫存儲方式不僅可以提升系統性能,更能保證系統的高安全性和高可用性。直觀的數據存儲方式同時也便于系統的擴展。

參考文獻

[1]張文盛,鄭漢華.基于MongoDB構建高性能網站技術研究[J].吉林師范大學學報(自然科學版),2013(01):123-127.

[2]王余藍.圖形數據庫NE04J與關系數據庫的比較研究[J].現代電子技術,2012(20).

[3]王慧孜.范煒.WANG HuiZi.FAN Wei圖數據庫在標簽系統中的應用研究[C].數字圖書館論壇,2015(04).

[4]王光磊.MongoDB數據庫的應用研究和方案優化[J].中國科技信息,2011(20):93-94.

主站蜘蛛池模板: 国产超碰一区二区三区| 五月婷婷亚洲综合| 天天综合网色中文字幕| 在线观看国产网址你懂的| 呦女亚洲一区精品| 在线精品视频成人网| 国产午夜不卡| 亚洲区第一页| 欧美日韩国产在线人| 国产一二三区在线| 婷婷成人综合| 日本亚洲成高清一区二区三区| 欧美日韩高清| 亚洲区第一页| 国产菊爆视频在线观看| 成人午夜视频网站| 亚洲精品无码AV电影在线播放| 亚洲欧美成人| 91九色国产porny| 国产在线98福利播放视频免费| 中文字幕亚洲精品2页| 日韩精品免费一线在线观看| 国产裸舞福利在线视频合集| 国产素人在线| 香蕉网久久| 久久免费观看视频| 国产流白浆视频| 99精品视频九九精品| 日韩无码视频专区| 91丝袜在线观看| 一区二区三区成人| 91久久夜色精品| 国产精品自在在线午夜区app| 国产欧美精品一区aⅴ影院| 欧美国产日韩在线播放| 在线观看国产黄色| 午夜福利在线观看成人| 亚洲第一极品精品无码| 不卡网亚洲无码| 国产精品无码翘臀在线看纯欲| 午夜丁香婷婷| 一本大道AV人久久综合| 91亚洲影院| 亚洲欧美成aⅴ人在线观看| 日本高清有码人妻| 日韩A级毛片一区二区三区| 免费毛片a| 99久久亚洲精品影院| 亚洲欧美成人在线视频| 欧美人在线一区二区三区| 国产精品3p视频| 男人天堂伊人网| 欧美精品啪啪一区二区三区| 97se亚洲综合在线| 日韩视频精品在线| 欧美精品亚洲二区| 在线精品亚洲一区二区古装| 91日本在线观看亚洲精品| 国产一级视频久久| 久久久精品无码一二三区| 日韩美毛片| 婷婷六月激情综合一区| 国产精品自在在线午夜| 一级毛片免费的| 婷婷六月色| 在线观看91精品国产剧情免费| 精品乱码久久久久久久| 久久久91人妻无码精品蜜桃HD| 毛片在线播放网址| 日韩精品亚洲精品第一页| 国产区免费| 国产亚洲视频播放9000| 国产福利微拍精品一区二区| 亚洲综合香蕉| 国产97公开成人免费视频| 老司国产精品视频| 3D动漫精品啪啪一区二区下载| 婷婷六月在线| 日韩第八页| 午夜福利视频一区| 亚洲欧洲日韩国产综合在线二区| 亚洲三级色|