国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于大數據的數據挖掘中容錯技術研究

2020-05-21 05:54張紅軍王豫鑫楊萬里祁永釗李登明
電腦知識與技術 2020年9期
關鍵詞:關鍵技術大數據算法

張紅軍 王豫鑫 楊萬里 祁永釗 李登明

摘要:隨著互聯網的不斷發(fā)展,應用程序、數據正在迅速增長,大規(guī)模數據存儲成為大數據技術研究重點,借助數據挖掘技術能更好地為決策者提供信息支撐。容錯技術是大數據處理領域中一個前沿且極具挑戰(zhàn)性的研究課題。該文依據當前的研究現狀和進展,通過對大數據時代數據特征的分析,結合當前技術發(fā)展趨勢,運用Python技術設計數據挖掘中代碼容錯技術的改進,并用算法進行實現。測試結果表明,該算法運行良好,系統(tǒng)的健壯性和可靠性大大提高,為大數據和數據挖掘提供理論基礎,為海量數據的安全可靠挖掘提供科學有效的技術支撐。

關鍵詞:大數據;容錯技術;算法;關鍵技術;健壯性

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

文章編號:1009-3044(2020)09-0016-03

1 背景

隨著互聯網技術的快速發(fā)展,大量文字、圖形、視頻、音頻、Web頁面等多種類型復雜的數據信息在信息檢索、社交網絡、物聯網、車載網等諸多新興行業(yè)廣為應用,數據規(guī)模呈爆炸式增長,數據量成為信息社會增長最快的資源之一。與其同時,數據挖掘近年來也引起信息產業(yè)界的極大關注,各行各業(yè)的人們迫切需要從大量數據中提取或轉換為有用的信息和知識,并將獲取的知識和信息廣泛應用于各類領域。

由于分布式存儲系統(tǒng)中節(jié)點數量寵大,不斷增長的海量數據需要被安全可靠存儲,常常會產生各類意外故障,導致數據節(jié)點失效情況頻繁,采用容錯技術可以避免部分存儲節(jié)點失效的情況下,數據仍然能夠正常讀取和下載,因此,容錯技術成為大數據挖掘處理中不容忽視的重要技術。

2 數據挖掘

2.1 相關概念

大數據是指在是指在一定時間范圍內無法使用傳統(tǒng)數據庫工具對其進行捕捉、管理、計算、分析和處理的數據集合。大數據具有4V特征:Volume(大容量)、Variety(多樣化)、Velocity(高速性)和Value(價值性)。

數據挖掘是在大數據中通過算法搜索隱藏于其中信息的過程,通常通過在線分析處理、機器學習、專家系統(tǒng)、網絡爬蟲、數據庫、可視化和模式識別等諸多技術來實現。數據挖掘是人工智能(AI)研究的熱點。

基金資助:河南省科技攻關項目(項目編號:182102210208);河南省高等學校重點科研項目(項目編號:18A520013);河南省教育科學十三五規(guī)劃一般課題(項目編號:2018 -JKGHYB-0407);河南省高等學校青年骨干教師培養(yǎng)計劃(項目編號:2018GGJS196);河南省教師教育課程改革研究項目(項目編號:2019-JSJYZD-041);國家級大學生創(chuàng)新創(chuàng)業(yè)訓練計劃項目 (項目編號:201913504001)

作者簡介:張紅軍(1979-),男,河南平輿縣人,副教授,碩士,主要研究方向為大數據技術;王豫鑫(1998-),男,本科生;楊萬里(1998-),男,本科生;祁永釗(1998-),男,本科生;李登明(1998-)男,本科生。

容錯技術是在系統(tǒng)在運行時,異常錯誤被激活的狀態(tài)下,系統(tǒng)因其算法的健壯性,依舊能正常運行而不會出現崩潰死機等意外,其基本思想是使系統(tǒng)內潛在的差錯對可靠性的影響縮小控制到最低程度。在一些應用場景,如航空航天、交通實時監(jiān)控、金融服務、醫(yī)療救援等特定行業(yè),一次系統(tǒng)錯誤的發(fā)生會帶來無法估計的損失和后果,在這些系統(tǒng)的關鍵設計中采用容錯技術,從而確保運行中突發(fā)的計算機錯誤不會導致整個系統(tǒng)的崩潰。

2.2 Python技術下的數據挖掘

作為一種面向對象的解釋型計算機編程語言,PYthon以其開源共享、函數式編程、語潔簡潔清晰、擁有功能強大的標準庫和擴展庫、計算生態(tài)等諸多特點一直位居各大編程語言網站排行榜前列。

Python擁有15萬個第三方擴展庫,其中jieba庫、Json庫、Requests庫、Scrapy庫、numpy庫使得數據挖掘變得簡單快捷高效。對于數據挖掘來講,Python對數據清洗、數據探索、建立寬表、變量篩選、建模、模型參數優(yōu)化、模型輸出、模型投產等等一系列環(huán)節(jié)均有成熟的“包”進行支持,而在建模環(huán)節(jié),除了對傳統(tǒng)時序、Logistic、決策樹等算法的支持,Python對于數據的處理速度均極大的超過了MySQL數據庫。在實際的挖掘項目中,在面臨著需要計算幾千甚至上萬特征值的情況下,通過Python將可以從代碼量和運算速度兩方面極大提高寬表制作效率,甚至完成傳統(tǒng)SQL數據庫難以完成的工作。

2.3 Python技術下的數據預處理

在進行數據挖掘之前,首先要做的一步是對已有數據進行預處理。數據預處理指的是對數據進行初步處理,把臟數據(即影響結果準確率的數據)處理掉,否則很容易影響最終的結果。如果連初始數據都是不正確的,那么就無法保證最后的結果的正確性。只有對數據進行預處理,保證其準確性,才能保證最后結果的正確性。常見的數據預處理方法包括缺失值處理、異常值處理和數據集成。其中異常值產生的原因往往是數據在采集時發(fā)生了錯誤,如在采集數字66時發(fā)生了錯誤,誤將其采集成660。在處理異常值之前,需要先發(fā)現這些異常值數據,往往可以借助畫圖的方法來發(fā)現這些異常值數據。在對異常值數據處理完成之后,原始數據才會趨于正確,才能保證最終結果的準確性。

3 Python在數據挖掘中異常容錯處理

3.1異常處理

異常(Exception)指程序運行過程中出現的非正?,F象,如數據采集錯誤、數據分析錯誤、處理的文件不存在、網絡傳輸錯誤等。如果這些錯誤得不到正確的處理將會導致數據挖掘系統(tǒng)崩潰并終止運行,合理地使用異常處理結構可以使得系統(tǒng)更加健壯,具有更高的容錯性。由于異常情況總是不可避免,因此要求數據挖掘系統(tǒng)除了具備基本功能之外,還應具備預見并處理可能發(fā)生各種異常的功能,使軟件具有較強的容錯能力。

3.2 Python中常見標準異常處理

PYthon系統(tǒng)定義了一系列可能發(fā)生的異常類型,這些預定義的異常類型稱為標準異常,當程序運行過程中發(fā)生標準異常時系統(tǒng)會顯示相應的提示信息。常見的標準異常如表1所示。

3.3 異常捕捉與處理

Python提供多種異常處理機制的基本原理是:首先嘗試運行代碼,如果沒有問題就正常執(zhí)行,如果發(fā)生錯誤就采用容錯機制嘗試去捕捉和處理。

3.3.1使用try...except語句

這是異常處理結構中最基本的結構形式,其中try子句中的代碼塊包含可能會引發(fā)異常的語句,而except子句則用來捕捉相應的異常。

例如數據采集代碼

Numl=eval(input(”input first number”))

Num2=eval(input(”input second number”))

當采集的數據為非數值類型,程序面臨崩潰。

可改進為以下代碼來實現代碼容錯

Try:

Numl=eval(input(”input first number”))

Num2=eval(input(”input second number”))

Except:

Print(”輸入非數字,請重新輸入!”)

3.3.2使用try...except...else語句

如果try中的代碼出現異常并且被except語句捕捉則執(zhí)行相應的異常處理代碼,如果try中的代沒有引導異常,則執(zhí)行else塊的代碼。

例如數據采集代碼

While True:

x=input(”input first number”)

Try:

x=int(x)

Except Exception as e:

Print(”error”1

Else:

Print(”You must input{0)”.format(x》

Break

3.3.3 使用try...excepL..finally語句

無論try中的代碼是否發(fā)生異常,finallv子句中的代碼總會得到執(zhí)行。

例如下面代碼,如果try子句的異常沒有被except語句捕捉和處理,或者except子句或else子句中的代碼出現異常,無論是否發(fā)生異常,finally子句中的代碼總能被執(zhí)行。

Def div(a,b):

Try:

Print(a/b)

Except ZeroDivisionError:

Print(”The second argument canno be 0”)

finally:

Print(”一1”1

4 Python數據分析中代碼容錯設計與實現

4.1 詞頻統(tǒng)計

在對網絡信息進行自動檢索和歸檔時,很多時候需要對給定的已采集的大量原始數據,統(tǒng)計其中多次出現的關鍵字,進行概要分析原始數據,或依關鍵字進行搜索,這種對關鍵字進行統(tǒng)計的方法叫詞頻分析。

4.2 jieba庫的使用

jieba庫是一款優(yōu)秀的Pyhon第三方中文分詞庫,主要提供分詞功能,可以輔助自定義分詞詞典。jieba庫支持精確模式、全模式和搜索引擎模式三種分詞模式。精確模式將語句最精確的切分,不存在冗余數據,適合做文本分析。全模式將語句中所有可能是詞的詞語都切分出來,速度快,但是存在冗余數據。搜索引擎模式在精確模式的基礎上,對長詞再次進行切分。

jieba是一個第三方庫,需要在本地機電腦上進行安裝。在聯網狀態(tài)下,在命令提示符下輸入pip install jieba進行安裝,安裝完成后會提示安裝成功。

4.3 算法實現

本算法以英文《Hamlet》(《哈姆雷特》)為例,統(tǒng)計其英文詞頻,算法分三個步驟:第一步,分解并提取英文文章的單詞;第二步,對每個單詞進行計數;第三步,對單詞的統(tǒng)計值從高到低進行排序,輸出前20個高頻詞語。在算法分析過程中,引入代碼容錯機制來避免因數據采集錯誤導致系統(tǒng)崩潰。

def get_text0:

txt= open(”hamlet.txt”,”r”,encoding= 'UTF_8,).read0

try:

txt= txt.lower()

for ch in…#$%&0++,一./=;<=>?@【\\]^-‘m~':

txt= txt.replace(ch,””)

return txt

except IOError:

print(”Error:沒有找到文件或讀取文件失敗”)

else:

print(”內容讀取成功”)

txt.close()

file_txt= get_text0

words= file_txt.split0

counts={)

for word in words:

if len(word)==1:

conbnue

else:

counts[word]= counts.get(word,0)+l

items= list(counts.items0)

items.sort(key=lambda x: x[ll, reverse=True)

fori in range(5):

word,count= items[i]

print(”{0:<5卜>(1:>5".format(word,count)

4. 4算法測試

經測試算法運行良好,無異常,算法健壯性和可靠性大大提高。

5 結束語

大數據時代的到來,為各行各業(yè)帶來了機遇與挑戰(zhàn)。人們在從海量數據中挖掘自己有用信息的同時,數據的安全性和可靠性也逐漸成為社會關注的重點內容,計算機系統(tǒng)的可靠性研究對提高整個系統(tǒng)運行起到關鍵作用。本文通過圍繞大數據技術、數據挖掘技術、容錯技術和Python技術多方面展開討論,結合算法代碼詳細分析了具體容錯方法,通過算法優(yōu)化分析,最終實現大大提高了計算機可靠性,從而保障計算機系統(tǒng)運行過程的安全性,以期為進一步研究計算機容錯提供參考借鑒。

參考文獻:

[1]李鑫,孫蓉,劉景偉.分布式存儲系統(tǒng)中容錯技術綜述[Jl.無線電通信技術,2019,45(5): 463-475.

[2]吳慶民.大數據環(huán)境下數據容錯技術研究與實現[D].北京:中國科學院大學,2016.

[3]楊娜,劉靖.面向云應用系統(tǒng)的容錯即服務優(yōu)化提供方法[Jl.軟件學報,2019,30(4): 1191-1202.

[4]吳必造.基于Linux的智能家居控制終端系統(tǒng)的設計與實現[Dl.成都:電子科技大學,2013.

[5]孫黎,蘇宇,張弛,等,分布式存儲系統(tǒng)中的糾刪碼容錯方法研究[J].計算機工程,2019,45(11): 74-80.

[6]劉新宇,李浪,肖斌斌.基于屬性代理重加密技術與可容錯機制相結合的數據檢索方案[Jl.計算機科學,2018,45(7):162-166, 196.

[7]張志敏,吳軍,嚴明玉.面向網絡的快速容錯恢復技術[Jl.計算機工程與設計,201 8,39(9): 2701-2706.

[8]謝建洲.計算機系統(tǒng)容錯技術研究[Jl.電腦知識與技術,2016.12(6): 250-252.

[9]雷利香.計算機系統(tǒng)容錯技術分析及研究[Jl.電子世界,2019(13): 177-178.

[10]陸陽,王強,張本宏,等.計算機系統(tǒng)容錯技術研究[J].計算機工程,2010,36(13): 230-235.

【通聯編輯:謝媛媛】

猜你喜歡
關鍵技術大數據算法
小麥春季化控要掌握關鍵技術
棉花追肥關鍵技術
成功育雛的關鍵技術
老蘋果園更新改造的關鍵技術
基于MapReduce的改進Eclat算法
Travellng thg World Full—time for Rree
進位加法的兩種算法
一種改進的整周模糊度去相關算法