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

一種基于Hadoop架構(gòu)和Django框架的圖像存儲系統(tǒng)設(shè)計與實現(xiàn)

2024-05-19 14:36:42楊龍胡錦華陳婷
電腦知識與技術(shù) 2024年7期
關(guān)鍵詞:數(shù)據(jù)存儲

楊龍 胡錦華 陳婷

摘要:Hadoop是一個可用于調(diào)度、處理、計算大數(shù)據(jù)的開源分布式架構(gòu)。它提供了一整套涵蓋數(shù)據(jù)預(yù)處理、數(shù)據(jù)存儲及數(shù)據(jù)可視化等多階段的數(shù)據(jù)解決方案。Hadoop架構(gòu)的分布式存儲優(yōu)勢和Django框架的Web開發(fā)能力相結(jié)合,可實現(xiàn)高效的圖像存儲和訪問。文章以圖像存儲系統(tǒng)的設(shè)計與實現(xiàn)為主線,針對如何依托優(yōu)質(zhì)的Django前端框架在代碼層對數(shù)據(jù)進行高效管理以及如何使用Django Web框架構(gòu)建Hadoop計算模式下的數(shù)據(jù)可視化Web系統(tǒng),提出了一種解決方案可供參考。

關(guān)鍵詞:數(shù)據(jù)存儲;Hadoop架構(gòu);Django框架

中圖分類號:TP311? ? ? 文獻標識碼:A

文章編號:1009-3044(2024)07-0057-03

開放科學(資源服務(wù))標識碼(OSID)

0 引言

隨著計算機應(yīng)用領(lǐng)域的不斷深入發(fā)展,大容量數(shù)據(jù)存儲面臨著存儲成本高、性能低、可擴展性差、訪問延遲等諸多問題,其中數(shù)據(jù)訪問和處理性能的挑戰(zhàn)主要來自于數(shù)據(jù)處理任務(wù)的復(fù)雜性[1]。尤其以大容量圖像和視頻為代表,數(shù)據(jù)的安全存儲與有效管理成為亟待解決的問題。本課題主要研究一種基于Hadoop架構(gòu)和Django框架的圖像存儲系統(tǒng)設(shè)計與實現(xiàn),以期發(fā)揮Hadoop架構(gòu)的分布式存儲優(yōu)勢和Django框架的Web開發(fā)能力,為用戶提供良好體驗效果。

1 理論技術(shù)背景分析

1.1 Hadoop數(shù)據(jù)核心處理技術(shù)

Hadoop是一個開源分布式數(shù)據(jù)計算框架,其核心技術(shù)HDFS(Hadoop Distributed File System) 和MapReduce是優(yōu)勢所在。HDFS采用Master/Slave的體系結(jié)構(gòu),集群中有一個NameNode的主控服務(wù)器管理文件的元數(shù)據(jù)[2]。可以將圖像數(shù)據(jù)存儲在NameNode中,使用Python語言寫入并且支持一次寫入多次讀寫。在HDFS的基礎(chǔ)上配合上層的Map Reduce 的計算框架可實現(xiàn)對目標存儲數(shù)據(jù)進行海量處理和完整保存。

1.2 Django架構(gòu)設(shè)計優(yōu)勢分析

Django是由Python編寫的一個開源Web應(yīng)用框架,它提供了大量的特性和工具且具有完善的在線文檔,使得開發(fā)人員只需較少的代碼即可完成網(wǎng)站開發(fā)的大部分內(nèi)容[3]。Django采用了MTV(Model-Template-View) 的軟件設(shè)計模式,Model本質(zhì)是定義了大量的數(shù)據(jù)庫可操作API封裝到ORM系統(tǒng)技術(shù)人員只需要調(diào)用就可以對大量數(shù)據(jù)進行增、刪、改、查等操作,這樣也方便用戶高效管理圖像數(shù)據(jù)。Template 可將后端的動態(tài)數(shù)據(jù)填充至HTML進行快速渲染,因此該框架也非常適合周期較短的項目。View 主要作用于數(shù)據(jù)間的邏輯運算和操作。Django框架原理如圖1所示。

1.3 MVT 設(shè)計模式的設(shè)定

本系統(tǒng)采用Django中的MVT(Model-View-Template) 模式。MVT模式主要由三個模塊組成,模型層主要是對數(shù)據(jù)的讀取和數(shù)據(jù)庫事務(wù)的處理;視圖層主要是處理用戶發(fā)的請求和發(fā)出響應(yīng);模板層主要負責Web頁面的布局和數(shù)據(jù)渲染。MVT的設(shè)計模式更加適合Web應(yīng)用程序,分層劃分使得代碼更加清晰和可維護,MVT模式的高靈活性和可重用性都非常適合存儲系統(tǒng)的設(shè)計開發(fā)。

1.4 數(shù)據(jù)管理系統(tǒng)的選擇

數(shù)據(jù)庫作為一種重要的倉庫,主要用于存儲數(shù)據(jù)[4]。本系統(tǒng)就采用開源的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)MySQL作為后臺數(shù)據(jù)庫。其一些關(guān)鍵特點和功能被廣泛應(yīng)用于Web開發(fā)領(lǐng)域。該DBMS體積較小、響應(yīng)速度快、可用性高,都非常適配本系統(tǒng)的需求定位,首先由Hadoop集群在處理計算完原始數(shù)據(jù)后會將一部分數(shù)據(jù)存儲在Mysql中進行持久化數(shù)據(jù)存儲,以便將數(shù)據(jù)提供給存儲系統(tǒng)調(diào)用。

2 系統(tǒng)設(shè)計

2.1 架構(gòu)設(shè)計

Hadoop是現(xiàn)在大部分企業(yè)都在使用的分布式計算框架,其本身是一個比較寬泛的概念是為了處理計算海量的數(shù)據(jù)而誕生的生態(tài)圈,它的核心是用多個機器組件計算集群,將問題先拆分再匯總提高計算速度也不浪費計算資源。恰好圖像數(shù)據(jù)正是其中的經(jīng)典,Hadoop本質(zhì)上是處理海量的小文件,這也是HDFS存儲模型所不擅長的,在處理圖像數(shù)據(jù)時可能會因為HDFS存儲文件占用較小的情況可自定義函數(shù)對文件進行合并和切割,便于后期對數(shù)據(jù)的處理和可視化。

Django Web 框架在數(shù)據(jù)庫操作和Web應(yīng)用開發(fā)方面有自己獨有的優(yōu)勢,契合優(yōu)秀的Hadoop的數(shù)據(jù)存儲模型。首先框架中有非常優(yōu)秀的ORM系統(tǒng),其本質(zhì)就是封裝了大量的數(shù)據(jù)庫操作Api,便于對圖像數(shù)據(jù)的維護和調(diào)度,這也是選擇Django框架的原因,其中的URL層、Model層、View層、Template層可更快配合Web應(yīng)用的開發(fā)。

2.2 功能模塊設(shè)計

圖像存儲系統(tǒng)是基于用戶靜態(tài)信息數(shù)據(jù)和數(shù)據(jù)計算技術(shù)平臺并結(jié)合存儲的相關(guān)理論和技術(shù)架構(gòu)搭建,主要是用于對用戶的大量圖像數(shù)據(jù)存儲使用,采用模塊功能進行權(quán)限控制,對用戶進行分析精準化營銷一方面監(jiān)控業(yè)務(wù)數(shù)據(jù)、核心數(shù)據(jù),將用戶數(shù)據(jù)價值最大化。系統(tǒng)功能模塊設(shè)計如圖2所示。

本系統(tǒng)分為兩個模塊,分別是存儲模塊和服務(wù)模塊,用戶本身使用系統(tǒng)只開放存儲管理模塊,服務(wù)模塊需要用戶向聯(lián)系管理員申請進行激活,一方面用戶可最大程度地對自己的數(shù)據(jù)進行存儲和管理,另一方面用戶可將數(shù)據(jù)一鍵自動分類管理,用戶只需要上傳數(shù)據(jù),大大節(jié)省了時間,這樣可對用戶的數(shù)據(jù)進行最大化的整理和美化。

2.3 存儲模塊設(shè)計

用戶上傳原始數(shù)據(jù),可選擇多種格式數(shù)據(jù)進行批量上傳,系統(tǒng)可自動對數(shù)據(jù)類型進行識別并添加至對應(yīng)分類中,也可以自定義進行分類存儲。設(shè)置圖像上傳接口,支持用戶上傳圖像文件,并對上傳的圖像進行預(yù)處理、格式轉(zhuǎn)換、壓縮等操作,以節(jié)省存儲空間和提高訪問效率。設(shè)置圖像數(shù)據(jù)管理權(quán)限確保只有授權(quán)用戶能夠訪問和使用特定的圖像數(shù)據(jù),以保障圖像數(shù)據(jù)的安全性和隱私性。根據(jù)存儲圖像的存儲數(shù)據(jù)信息,如上傳時間、地點、相關(guān)標簽等信息進行圖像檢索,用戶可對檢索出的數(shù)據(jù)進行導(dǎo)出、刪除等操作。

2.4 服務(wù)模塊設(shè)計

服務(wù)模塊分為兩類別,一種是用戶對數(shù)據(jù)的處理包括對圖像的裁剪、美化、旋轉(zhuǎn)、格式轉(zhuǎn)化等操作,用戶對圖像的自定義管理服務(wù)可對圖像進行分類、分享、查詢等操作。用戶可對每次上傳至系統(tǒng)的數(shù)據(jù)進行管理分類,數(shù)據(jù)可自動生成縮略圖。原始數(shù)據(jù)上傳后,再刪除的數(shù)據(jù)系統(tǒng)會進行自動備份,保存一周后數(shù)據(jù)庫事務(wù)進行自動刪除,在此期間,用戶可通過回收站對數(shù)據(jù)進行永久刪除或恢復(fù)至存儲系統(tǒng)中。另一種是用戶可將數(shù)據(jù)交予系統(tǒng)制作成個人主頁,個人主頁可直接分享。根據(jù)用戶個人需求可單獨為用戶拍攝個人主頁的影片并定制主題,為用戶打造屬于自己的獨一無二的主題風格,當然用戶也可直接在論壇分享自己的主頁,在論壇分享的主頁也可評論留言。

3 系統(tǒng)實現(xiàn)

3.1 運行環(huán)境及工具選擇

根據(jù)系統(tǒng)的需求,最終決定將系統(tǒng)搭建在較為穩(wěn)定的Ubuntu系統(tǒng)上[5],將開發(fā)環(huán)境搭建在Windows系統(tǒng)上,運行環(huán)境搭建在Ubuntu系統(tǒng)上包括Hadoop 分布式架構(gòu)、MySQL數(shù)據(jù)庫、Django 框架等,開發(fā)語言選擇與Django契合的Python,開發(fā)工具選擇企業(yè)開發(fā)人員都在使用的Pycharm 和Notepad++。Pycharm是一款集成開發(fā)工具是一款非常人性化的開發(fā)工具,擁有頁面風格版式調(diào)整、代碼補全、支持各種豐富的插件、版本控制及單元測試等。Notepad++是一款開源的編輯器,支持多窗口化、多種語言的語法編輯高亮顯示和檢視,非常適合用作代碼走查的工具。因為本系統(tǒng)在性能上有一定要求,故選擇Notepad++增加代碼可讀性。

3.2 用戶及管理員登錄注冊功能實現(xiàn)

普通用戶在注冊頁面輸入用戶名、密碼、郵箱等信息進行登錄注冊,管理員賬號通過系統(tǒng)管理后臺添加,普通用戶和管理員都可以在登錄頁面選擇輸入郵箱和密碼進行登錄。

3.3 圖像分類管理功能實現(xiàn)

用戶在上傳原始數(shù)據(jù)時即可對圖像數(shù)據(jù)進行分類,圖像分類種類都是由用戶自定義的,以此來增加數(shù)據(jù)存儲的多樣性,同一分類下可存儲大量的數(shù)據(jù)。圖像分類管理界面如圖3所示。

3.4 用戶管理界面實現(xiàn)

系統(tǒng)管理員登錄系統(tǒng)后,點擊系統(tǒng)左側(cè)工具欄中的用戶管理,即可進入用戶管理界面,管理員可對用戶永久刪除的數(shù)據(jù)進行恢復(fù),注意永久刪除的數(shù)據(jù)只可在系統(tǒng)中存儲一年,之后數(shù)據(jù)將在數(shù)據(jù)節(jié)點中永久刪除。管理也可對用戶進行權(quán)限提升,方便后續(xù)為用戶提供服務(wù)模塊中的主頁定制服務(wù)。用戶管理界面如圖4所示。

3.5 回收站功能實現(xiàn)

回收站旨在為用戶提供誤刪除數(shù)據(jù)恢復(fù)功能,對誤刪除的數(shù)據(jù),用戶可自行在7天內(nèi)進行恢復(fù),當然用戶也可對需要永久刪除的數(shù)據(jù)進行永久刪除。

4 系統(tǒng)測試

4.1 系統(tǒng)使用效果測試

本節(jié)主要是對系統(tǒng)的功能進行了測試,查看系統(tǒng)功能是否正常和符合設(shè)計。測試主要采用黑盒測試與白盒測試。黑盒測試主要測試系統(tǒng)的各個功能模塊是否符合系統(tǒng)的設(shè)計需求以及能否返回正確的結(jié)果,黑盒測試不考慮系統(tǒng)的內(nèi)部構(gòu)造和邏輯處理等問題。白盒測試則與之相反,只考慮系統(tǒng)內(nèi)部結(jié)構(gòu)和邏輯實現(xiàn)等問題,而不考慮系統(tǒng)的功能實現(xiàn)。以登錄進入首頁為例進行黑盒測試與白盒測試。登錄進入系統(tǒng)的首頁如圖5所示。

用戶可根據(jù)首頁圖表更加直觀地查看所存儲的圖像,更加直觀地查看圖像類別及種類數(shù)量。首次登錄后首頁統(tǒng)計圖加載慢的情況,這是因為初次登錄時數(shù)據(jù)量較大,需要一定的查詢時間。對于單個圖像的檢索幾乎不存在查詢緩慢的情況,同時對檢索出的圖像也可進行一系列操作,比如圖像編輯、查看此圖像再分享后的評論、移除單個圖像等操作。在批量上傳方面支持圖片與視頻混合上傳,系統(tǒng)會自動識別圖像類別進行分類。

4.2 系統(tǒng)性能測試

性能測試時評估系統(tǒng)是否達到用戶主觀感受的一個標準,根據(jù)表1可以看到數(shù)據(jù)在批量上傳處理時性能的各項指標,這里列出數(shù)據(jù)的最大值和最小值可更加直觀感受到存儲系統(tǒng)對數(shù)據(jù)的處理能力和對系統(tǒng)的評估。可以看到接口響應(yīng)和事務(wù)響應(yīng)的最大值都達到了7 000ms,這里的接口耗時并不是單個接口而是多個接口的響應(yīng)時間,這里的接口是單個系列的接口,比如上傳的接口會回調(diào)數(shù)據(jù)加載、數(shù)據(jù)存儲等接口。

根據(jù)系統(tǒng)性能的最關(guān)鍵指標探尋性能瓶頸[6]。系統(tǒng)都有一個相對極限,在訪問壓力下,TPS會上升到一個最大值,如果壓力繼續(xù)增大,TPS反而會下降。這個峰值就是系統(tǒng)的最大性能,并發(fā)數(shù)-性能測試(LoadRuner/ab)中特定術(shù)語,為模擬現(xiàn)實中的實際用戶,測試軟件使用虛擬用戶代替真實的用戶[7]。系統(tǒng)性能測試后各項指標表如表1所示。

5 結(jié)束語

本文首先介紹了用戶圖像存儲系統(tǒng)實現(xiàn)的各個功能模塊,基于Hadoop和Django 的圖像系統(tǒng)隨著圖像數(shù)據(jù)的快速增長,圖像存儲系統(tǒng)需要具備更強大的存儲和處理能力。未來的圖像存儲系統(tǒng)將繼續(xù)優(yōu)化不斷迭代,通過橫向擴展和并行處理,實現(xiàn)對PB級甚至EB級規(guī)模的圖像數(shù)據(jù)的高效管理和處理。未來圖像存儲系統(tǒng)將不再局限于圖像存儲而是多模數(shù)據(jù)進行發(fā)展比如:音頻、三模數(shù)據(jù)等,在多模數(shù)據(jù)的存儲同時支持違規(guī)圖像的在線線程檢測,而不是一味地只存儲不檢測。

參考文獻:

[1] 岳茹.云計算環(huán)境下的數(shù)據(jù)存儲與管理技術(shù)研究[J].科技資訊,2023,21(21):29-32.

[2] 陳新房,趙晗清,劉義卿.Hadoop核心技術(shù)與實戰(zhàn)課程教材建設(shè)的思考[J].電腦與電信,2022(12):40-43.

[3] 郭鶴楠.基于Django和Python技術(shù)的網(wǎng)站設(shè)計與實現(xiàn)[J].數(shù)字通信世界,2023(6):60-62.

[4] 趙停停.基于MySQL數(shù)據(jù)庫技術(shù)的Web動態(tài)網(wǎng)頁設(shè)計研究[J].信息與電腦(理論版),2023,35(17):174-176.

[5] 王春程,田羽,方譽,等.Linux系統(tǒng)容器兼容性應(yīng)用研究[J].自動化應(yīng)用,2023,64(20):224-226,230.

[6] 付豪.面向大數(shù)據(jù)分析應(yīng)用平臺的性能分析系統(tǒng)[D].貴陽:貴州大學,2022.

[7] 劉東旭.基于LoadRunner的性能測試技術(shù)研究——以某系統(tǒng)登錄模塊為例[J].滁州職業(yè)技術(shù)學院學報,2023,22(2):43-48.

【通聯(lián)編輯:朱寶貴】

猜你喜歡
數(shù)據(jù)存儲
簡單的數(shù)據(jù)修復(fù)
大數(shù)據(jù)時代檔案信息建設(shè)的認識和實踐
淺談電力大數(shù)據(jù)平臺關(guān)鍵技術(shù)研究與應(yīng)用
開源數(shù)據(jù)庫數(shù)據(jù)存儲的實現(xiàn)路徑分析
基于Android開發(fā)的APP數(shù)據(jù)存儲研究
哈希算法在物聯(lián)網(wǎng)數(shù)據(jù)存儲中的應(yīng)用
空難事故跨媒體信息采集與檢索方法的研究
基于STM32的AD采集與SD卡數(shù)據(jù)存儲
淺談信息系統(tǒng)工程和POJO模型組件開發(fā)
基于MongoDB的調(diào)查決策系統(tǒng)數(shù)據(jù)存儲方案設(shè)計
主站蜘蛛池模板: 无遮挡一级毛片呦女视频| www亚洲天堂| 99热这里只有精品免费| 亚洲国产精品无码AV| 91无码视频在线观看| 久久精品欧美一区二区| 91丝袜在线观看| 欧美a√在线| 毛片网站在线播放| 99精品一区二区免费视频| 日韩成人免费网站| 毛片卡一卡二| 亚洲欧美在线综合图区| 制服丝袜 91视频| 国产91精品调教在线播放| 成人午夜视频在线| 香蕉久久国产精品免| 久久精品国产一区二区小说| 亚洲综合第一区| AV在线麻免费观看网站 | 麻豆国产原创视频在线播放| 无码AV高清毛片中国一级毛片| 国产门事件在线| 麻豆精品在线视频| 成色7777精品在线| 欧美日本激情| 午夜精品久久久久久久无码软件 | 国产成人免费高清AⅤ| 国产一级裸网站| 亚洲侵犯无码网址在线观看| 综合色在线| 三上悠亚精品二区在线观看| 伊人久久大香线蕉成人综合网| 91在线中文| 最新精品久久精品| 一级全黄毛片| 91最新精品视频发布页| 欧美综合在线观看| YW尤物AV无码国产在线观看| 亚洲天堂免费| 中文字幕人成人乱码亚洲电影| 国产一区二区精品福利 | 国产成+人+综合+亚洲欧美| 亚洲精品va| 中字无码精油按摩中出视频| 无码一区中文字幕| 伊人久久婷婷| 欧美色伊人| AV在线天堂进入| aa级毛片毛片免费观看久| 日韩精品一区二区三区免费| 久久国产成人精品国产成人亚洲| 欧美午夜视频| 欧美狠狠干| 午夜爽爽视频| 亚洲最新在线| 国产精品久久久久久搜索| 精品国产成人国产在线| 国产精品19p| 久久99国产综合精品1| 欧美乱妇高清无乱码免费| 麻豆国产在线观看一区二区| 激情在线网| 亚洲综合经典在线一区二区| 午夜成人在线视频| 亚洲国产中文综合专区在| 精品一区二区三区四区五区| 精品福利视频网| 欧美亚洲一区二区三区导航| 欧美午夜在线观看| 国产va在线观看免费| 五月天福利视频| 亚洲成肉网| 麻豆精品视频在线原创| 亚洲无码91视频| 亚洲欧美成人综合| 一级做a爰片久久免费| 香蕉蕉亚亚洲aav综合| 国产日韩欧美一区二区三区在线| 欧美精品色视频| 免费人成在线观看成人片| 91无码人妻精品一区二区蜜桃|