• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于NoSQL數(shù)據(jù)庫(kù)的大數(shù)據(jù)查詢(xún)技術(shù)探討

      2018-12-24 15:06:05梁紅穎遼寧現(xiàn)代服務(wù)職業(yè)技術(shù)學(xué)院
      數(shù)碼世界 2018年7期
      關(guān)鍵詞:容錯(cuò)性鍵值數(shù)據(jù)模型

      梁紅穎 遼寧現(xiàn)代服務(wù)職業(yè)技術(shù)學(xué)院

      前言:大數(shù)據(jù)時(shí)代的來(lái)臨,對(duì)現(xiàn)代人的生活方式產(chǎn)生了很大的影響。而NoSQL數(shù)據(jù)庫(kù)因其具有高性能、高可用、易擴(kuò)展及數(shù)據(jù)模型靈活等優(yōu)勢(shì)在眾多互聯(lián)網(wǎng)公司應(yīng)用。而且NoSQL作為一種非關(guān)系型的數(shù)據(jù)庫(kù)存數(shù)在使用上已經(jīng)超過(guò)了關(guān)系型的數(shù)據(jù)庫(kù),因此基于NoSQL數(shù)據(jù)庫(kù)的大數(shù)據(jù)查詢(xún)技術(shù)引起了各界的關(guān)注。

      1.NoSQL數(shù)據(jù)庫(kù)的概念及相關(guān)理論

      NoSQL泛指非關(guān)系型數(shù)據(jù)庫(kù),是“Not Only SQL”的縮寫(xiě)。由于數(shù)據(jù)在數(shù)據(jù)庫(kù)中存儲(chǔ)的方式為非關(guān)系型,和傳統(tǒng)數(shù)據(jù)庫(kù)中所使用的結(jié)構(gòu)化數(shù)據(jù)形式差異明顯。傳統(tǒng)數(shù)據(jù)庫(kù)中表與表間的關(guān)聯(lián)問(wèn)題導(dǎo)致其性能受限,而NoSQL數(shù)據(jù)庫(kù)的不固定鍵值對(duì)結(jié)構(gòu)突破了性能上的局限,有效降低了數(shù)據(jù)庫(kù)的存儲(chǔ)、計(jì)算及查詢(xún)等各項(xiàng)操作在時(shí)空上的開(kāi)銷(xiāo)。因此,NoSQL與傳統(tǒng)數(shù)據(jù)庫(kù)最關(guān)鍵的不同就是,NoSQL以非關(guān)系為核心,而傳統(tǒng)數(shù)據(jù)庫(kù)則以關(guān)系為核心。

      1.1 CAP原理

      CAP是“Consistency Availability Partition tolerance”的縮寫(xiě)。CAP理論簡(jiǎn)單來(lái)說(shuō)就是指分布式系統(tǒng)具有一致性、可用性和分區(qū)容錯(cuò)性三個(gè)特性,但是任何分布式系統(tǒng)只能同時(shí)滿(mǎn)足以上兩點(diǎn),不能兼顧三者。其中的一致性(C)即所有的數(shù)據(jù)變動(dòng)都是同步進(jìn)行的,數(shù)據(jù)一致更新,可用性(A)指分布式系統(tǒng)具有良好的響應(yīng)性能,而分區(qū)容錯(cuò)性(P)也可以稱(chēng)為可靠性,如果分布式系統(tǒng)中有一個(gè)或幾個(gè)機(jī)器出現(xiàn)故障,而其他的機(jī)器還可以正常運(yùn)行,因此具有良好的容錯(cuò)性。

      1.2 BASE思想

      BASE思想主要強(qiáng)調(diào)基本的可用性,與ACID在單機(jī)環(huán)境中數(shù)據(jù)屬性不同,BASE是在分布式情況中數(shù)據(jù)的屬性。如果想要純粹的高性能,則須以一致性或是分區(qū)容錯(cuò)性為犧牲。BASE思想的方案在性能上具有挖掘的潛力,主要實(shí)現(xiàn)有:按功能劃分?jǐn)?shù)據(jù)庫(kù)和共享分片。

      2.NoSQL數(shù)據(jù)庫(kù)的類(lèi)型

      2.1 列存儲(chǔ)數(shù)據(jù)庫(kù)

      該類(lèi)數(shù)據(jù)庫(kù)的數(shù)據(jù)模型為采用列的形式存儲(chǔ),同一列的數(shù)據(jù)將會(huì)被存放在一起。主要應(yīng)用于信息檢索系統(tǒng)和分布式的文件系統(tǒng)中。具有查找速度快、查詢(xún)效率高、可擴(kuò)展性強(qiáng)、易于分布式擴(kuò)展等優(yōu)勢(shì)。不足之處就是在功能上存在一定的局限性,例如沒(méi)有SQL查詢(xún)語(yǔ)言、沒(méi)有二級(jí)索引。

      2.2 鍵值保存的數(shù)據(jù)庫(kù)

      此類(lèi)數(shù)據(jù)庫(kù)所采用的數(shù)據(jù)結(jié)構(gòu)主要是哈希表,哈希表由兩部分組成:指針和鍵值信息。鍵值保存的數(shù)據(jù)庫(kù)其數(shù)據(jù)模型為一系列的Key-Value鍵值對(duì)存儲(chǔ),可以實(shí)現(xiàn)內(nèi)容緩存,適用于混合工作負(fù)載且需要擴(kuò)展的數(shù)據(jù)集,可以進(jìn)行快速查詢(xún)。不足之處在于存儲(chǔ)的數(shù)據(jù)缺少結(jié)構(gòu)化。

      2.3 圖形數(shù)據(jù)庫(kù)

      圖形數(shù)據(jù)庫(kù)通過(guò)使用靈活的數(shù)據(jù)模型,比較關(guān)注數(shù)據(jù)之間的關(guān)系。主要應(yīng)用于社交網(wǎng)絡(luò)、推薦系統(tǒng)中。圖形數(shù)據(jù)的建模、查詢(xún)都十分簡(jiǎn)單。優(yōu)勢(shì)在于能夠利用圖形結(jié)構(gòu)的相關(guān)算法。不足之處是必須對(duì)整個(gè)圖做計(jì)算才可以得出結(jié)果,不易進(jìn)行分布式的集群。

      2.4 文檔型數(shù)據(jù)庫(kù)

      文檔型數(shù)據(jù)庫(kù)的數(shù)據(jù)模板為形式化的文檔,對(duì)于半結(jié)構(gòu)和非結(jié)構(gòu)文檔則要以具體的形式進(jìn)行保存。數(shù)據(jù)模型為一系列鍵值對(duì),主要應(yīng)用于Web。此類(lèi)數(shù)據(jù)庫(kù)具有豐富的查詢(xún)語(yǔ)言與索引機(jī)制,因此查詢(xún)性能較強(qiáng)。對(duì)于數(shù)據(jù)的結(jié)構(gòu)沒(méi)有嚴(yán)格的要求,不需要定義表結(jié)構(gòu)。不足之處在于此類(lèi)數(shù)據(jù)庫(kù)不支持JOIN查詢(xún)與事物處理。

      3.基于NoSQL框架的數(shù)據(jù)查詢(xún)技術(shù)特點(diǎn)分析

      NoSQL框架的數(shù)據(jù)查詢(xún)技術(shù)與傳統(tǒng)關(guān)系型數(shù)據(jù)庫(kù)查詢(xún)技術(shù)相比,具有其獨(dú)特的特點(diǎn),這是由適用于NoSQL框架的數(shù)據(jù)特點(diǎn)所決定的,主要包括以下幾個(gè)特點(diǎn):(1)分布式的備份特點(diǎn)。NoSQL將高擴(kuò)展性與高可用性作為目標(biāo),如果想要達(dá)成這個(gè)目標(biāo)則需通過(guò)分布式的備份來(lái)實(shí)現(xiàn)。分布式能夠體現(xiàn)高擴(kuò)展性,而備份則實(shí)現(xiàn)了高可用性。因此在整體上顯著提高了系統(tǒng)的容錯(cuò)性能。(2)數(shù)據(jù)的海量性特點(diǎn)。隨著社交網(wǎng)絡(luò)的不斷發(fā)展與擴(kuò)大,推動(dòng)了傳感技術(shù)與移動(dòng)設(shè)備的普及與應(yīng)用,尤其是現(xiàn)代化智能手機(jī)的興起,方便了人與人之間的交流與溝通,有關(guān)娛樂(lè)方面的信息呈現(xiàn)出爆炸式的增長(zhǎng)態(tài)勢(shì),例如微信、微博、手機(jī)游戲等的數(shù)據(jù)量已達(dá)TB、PB,甚至更高水平。(3)數(shù)據(jù)類(lèi)型多元化特點(diǎn)。當(dāng)前多數(shù)的WEB應(yīng)用都需處理半結(jié)構(gòu)化或是非結(jié)構(gòu)化的數(shù)據(jù),例如視頻、圖像、音頻等數(shù)據(jù),而此類(lèi)數(shù)據(jù)不適于存儲(chǔ)在像MySQL這類(lèi)的關(guān)系型數(shù)據(jù)庫(kù)中,但是對(duì)于此類(lèi)數(shù)據(jù)的查詢(xún)與儲(chǔ)量在非關(guān)系數(shù)據(jù)庫(kù)中往往能表現(xiàn)出較好的性能。

      4.NoSQL數(shù)據(jù)庫(kù)的優(yōu)勢(shì)

      4.1 NoSQL數(shù)據(jù)庫(kù)是可擴(kuò)展性的關(guān)鍵

      在數(shù)據(jù)庫(kù)發(fā)展過(guò)程中,從縱向到橫向的拓展變化推動(dòng)了NoSQL的發(fā)展與應(yīng)用。NoSQL數(shù)據(jù)庫(kù)作為一種分布式橫向擴(kuò)展技術(shù),通過(guò)使用分布式節(jié)點(diǎn)集提供高度彈性拓展功能,用戶(hù)只要添加節(jié)點(diǎn)就可以進(jìn)行對(duì)負(fù)載的動(dòng)態(tài)處理。與縱向擴(kuò)展做法相比,分布式橫向擴(kuò)展的做法更加經(jīng)濟(jì)實(shí)惠。而且NoSQL數(shù)據(jù)庫(kù)多是開(kāi)源技術(shù),根據(jù)運(yùn)行的服務(wù)器集群進(jìn)行收費(fèi),在價(jià)格上更加便宜。

      4.2 NoSQL數(shù)據(jù)庫(kù)是靈活性的關(guān)鍵

      NoSQL數(shù)據(jù)庫(kù)數(shù)據(jù)為非關(guān)系型,不需依賴(lài)表與表之間的關(guān)系,就可以進(jìn)行信息的存儲(chǔ)與組織。如采用文檔型數(shù)據(jù)庫(kù)獲取想要存儲(chǔ)的數(shù)據(jù),以JSON的格式整合到文檔中。每個(gè)JSON文檔都能被應(yīng)用程序視為一個(gè)對(duì)象,而且JSON文檔能夠?qū)崿F(xiàn)提取跨越多個(gè)表的數(shù)據(jù),并將數(shù)據(jù)匯集到一個(gè)文檔中,雖然聚合這些數(shù)據(jù)信息會(huì)存在信息重復(fù)的現(xiàn)象,但由于不用考慮存儲(chǔ)問(wèn)題。因其數(shù)據(jù)模型靈活、發(fā)布產(chǎn)生的文檔簡(jiǎn)便,而且讀取與寫(xiě)入的性能高,所以應(yīng)用廣泛

      4.3 NoSQL數(shù)據(jù)庫(kù)是大數(shù)據(jù)應(yīng)用程序的關(guān)鍵

      現(xiàn)階段,通過(guò)第三方,就可以訪(fǎng)問(wèn)和捕捉數(shù)據(jù)。包括用戶(hù)個(gè)人信息、用戶(hù)生產(chǎn)的內(nèi)容、地理位置數(shù)據(jù)、及其記錄數(shù)據(jù)等。企業(yè)通過(guò)大數(shù)據(jù)來(lái)推動(dòng)關(guān)鍵任務(wù)型應(yīng)用程序,因?yàn)镹oSQL數(shù)據(jù)庫(kù)適合現(xiàn)代的新型數(shù)據(jù)類(lèi)型,所以很多企業(yè)正轉(zhuǎn)向該數(shù)據(jù)庫(kù)。大多數(shù)新型數(shù)據(jù)都是半結(jié)構(gòu)化或非結(jié)構(gòu)化,通過(guò)靈活的數(shù)據(jù)庫(kù),很容易適應(yīng)新的數(shù)據(jù)類(lèi)型,即便第三方數(shù)據(jù)供應(yīng)商的內(nèi)容結(jié)構(gòu)發(fā)生變化,也不會(huì)受到影響。

      5.基于NoSQL數(shù)據(jù)庫(kù)的大數(shù)據(jù)查詢(xún)技術(shù)的具體應(yīng)用

      以我國(guó)的鐵路網(wǎng)路售票系統(tǒng)為應(yīng)用對(duì)象,在對(duì)其進(jìn)行系統(tǒng)設(shè)計(jì)和技術(shù)架構(gòu)環(huán)節(jié)時(shí),從數(shù)據(jù)層、服務(wù)層、應(yīng)用層及展現(xiàn)層都可以體現(xiàn)大數(shù)據(jù)的優(yōu)勢(shì)與特點(diǎn)。數(shù)據(jù)層主要體現(xiàn)為當(dāng)購(gòu)票者信息數(shù)據(jù)訪(fǎng)問(wèn)系統(tǒng)時(shí),可以通過(guò)Java的設(shè)計(jì)模式快速調(diào)度其實(shí)名制信息,結(jié)合Kettle對(duì)購(gòu)票者的個(gè)人信息數(shù)據(jù)進(jìn)行快速的調(diào)取與轉(zhuǎn)換,為應(yīng)用層的出票提供了有力的保障。服務(wù)層的重點(diǎn)在于工作流程可以對(duì)所有任何數(shù)據(jù)層快速調(diào)用,從而為應(yīng)用層提供如分析、統(tǒng)計(jì)、查詢(xún)等功能上的支持,為系統(tǒng)對(duì)售票信息的判斷、管理與推送提供便捷。展現(xiàn)層更多的是關(guān)注用戶(hù)的體驗(yàn)。不僅能夠?yàn)橛脩?hù)提供全面、準(zhǔn)確的快速訪(fǎng)問(wèn)導(dǎo)航,還可以滿(mǎn)足系統(tǒng)自身的發(fā)展需要。即使在鐵路售票的高峰期,出現(xiàn)海量的訪(fǎng)問(wèn)需求,也可以為用戶(hù)提供良好的購(gòu)票體驗(yàn),有效避免了網(wǎng)站堵塞或崩潰現(xiàn)象的發(fā)生。與此同時(shí),還實(shí)現(xiàn)了在升級(jí)與改造成本上的控制,通過(guò)充分利用大數(shù)據(jù)查詢(xún)技術(shù)優(yōu)勢(shì)對(duì)系統(tǒng)進(jìn)行升級(jí)與改造,能夠避免過(guò)多使用高成本、高性能設(shè)備,降低了投入成本。

      總結(jié):綜上所述,當(dāng)前基于NoSQL數(shù)據(jù)庫(kù)的大數(shù)據(jù)查詢(xún)技術(shù)在眾多領(lǐng)域被廣泛應(yīng)用,為數(shù)據(jù)庫(kù)的發(fā)展和應(yīng)用提供了有力的技術(shù)保障。其在互聯(lián)網(wǎng)數(shù)據(jù)訪(fǎng)問(wèn)需求方面具有明顯的優(yōu)勢(shì),提高了數(shù)據(jù)的擴(kuò)展能力與查詢(xún)速率。

      猜你喜歡
      容錯(cuò)性鍵值數(shù)據(jù)模型
      基于視覺(jué)補(bǔ)充的水稻插秧機(jī)多傳感器組合定位研究
      非請(qǐng)勿進(jìn) 為注冊(cè)表的重要鍵值上把“鎖”
      面板數(shù)據(jù)模型截面相關(guān)檢驗(yàn)方法綜述
      加熱爐爐內(nèi)跟蹤數(shù)據(jù)模型優(yōu)化
      一鍵直達(dá) Windows 10注冊(cè)表編輯高招
      基于認(rèn)知心理學(xué)的交互式產(chǎn)品的容錯(cuò)性設(shè)計(jì)研究
      基于免疫算法的高容錯(cuò)性廣域保護(hù)研究
      基于多Agent的有限廣域方向比較算法與仿真實(shí)現(xiàn)
      面向集成管理的出版原圖數(shù)據(jù)模型
      一種顧及級(jí)聯(lián)時(shí)空變化描述的土地利用變更數(shù)據(jù)模型
      中西区| 新化县| 交城县| 湖州市| 冀州市| 胶州市| 萨迦县| 吴桥县| 井冈山市| 县级市| 蒙城县| 衡山县| 上思县| 青海省| 承德县| 宁晋县| 新乐市| 北京市| 白沙| 淮安市| 南陵县| 诸暨市| 芷江| 剑河县| 克拉玛依市| 韶山市| 通许县| 延寿县| 县级市| 安泽县| 台中县| 内黄县| 张北县| 札达县| 白银市| 泾源县| 襄城县| 三河市| 乌拉特后旗| 南涧| 枣阳市|