版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第五章大數(shù)據(jù)計(jì)算
1.簡(jiǎn)述MapReduce計(jì)算過(guò)程(1)將輸入文件切分為邏輯上的多個(gè)
Split,通過(guò)RecordReader處理
Split
中的具體記錄,加載數(shù)據(jù)并轉(zhuǎn)換為適合
Map
任務(wù)讀取的<key,value>,并輸入給
Map
任務(wù)。(2)
Map
:根據(jù)用戶自定義的映射規(guī)則,輸出一系列<key,value>的作為中間結(jié)果。(3)
Shuffle:
對(duì)
Map
任務(wù)的輸出結(jié)果進(jìn)行一定的分區(qū)、排序(Sort)、合并(Combine)、歸并(Merge)等操作,得到<key,value-list>形式的中間結(jié)果,并交給對(duì)應(yīng)的
Reduce
任務(wù)進(jìn)行處理。(4)Reduce:以一系列<key,value-list>的中間結(jié)果作為輸入,執(zhí)行用戶定義的邏輯,輸出結(jié)果給
OutputFormat。(5)
OutputFormat驗(yàn)證輸出目錄是否已經(jīng)存在及輸出結(jié)果類型是否符合配置文件中的配置類型,并輸出
Reduce
任務(wù)的結(jié)果到分布式文件系統(tǒng)。2.
簡(jiǎn)述本章列舉的大數(shù)據(jù)計(jì)算模式的異同
(1)在大數(shù)據(jù)領(lǐng)域,批處理計(jì)算是把所有的數(shù)據(jù)算一遍以獲得答案的計(jì)算模式;而流計(jì)算中處理的數(shù)據(jù)是源源不斷地、突發(fā)地到來(lái)的流數(shù)據(jù)(或數(shù)據(jù)流)。批處理計(jì)算使用的算法經(jīng)常被稱為批量算法,流計(jì)算使用的算法經(jīng)常被稱為增量算法,流計(jì)算常常需要大數(shù)據(jù)算法的支持。(2)圖計(jì)算和流計(jì)算、MapReduce
等類似,是一種通用分布式計(jì)算模式,解決的是在大規(guī)模分布式計(jì)算環(huán)境下的共性問(wèn)題。但是,它又和流計(jì)算不同,圖計(jì)算是一種真正的計(jì)算模式,各種圖計(jì)算系統(tǒng)也通過(guò)提供
API
等形式,允許開(kāi)發(fā)者在一致性的計(jì)算模式下,根據(jù)自己的需要開(kāi)發(fā)特定的應(yīng)用。(3)查詢分析計(jì)算利用SQL對(duì)文本或者非結(jié)構(gòu)化數(shù)據(jù)進(jìn)行處理的通用數(shù)據(jù)處理架構(gòu)。(4)云計(jì)算代表了以虛擬化技術(shù)為核心、以低成本為目標(biāo)的、動(dòng)態(tài)可擴(kuò)展的網(wǎng)絡(luò)應(yīng)用基礎(chǔ)設(shè)施。3.
簡(jiǎn)述云計(jì)算的服務(wù)模式
云計(jì)算中典型的服務(wù)模式:基礎(chǔ)設(shè)施即服務(wù)(IaaS)、平臺(tái)即服務(wù)(PaaS)和軟件即服務(wù)(SaaS)。4.
簡(jiǎn)述云計(jì)算的類型
云計(jì)算的類型包括公有云、私有云和混合云。5.
簡(jiǎn)述云計(jì)算的關(guān)鍵技術(shù)
云計(jì)算的關(guān)鍵技術(shù)包括虛擬化技術(shù)、分布式存儲(chǔ)、分布式計(jì)算、多租戶技術(shù)。6.
簡(jiǎn)述云計(jì)算與大數(shù)據(jù)的區(qū)別與聯(lián)系
(1)
云計(jì)算和大數(shù)據(jù)的區(qū)別:云計(jì)算旨在整合和優(yōu)化各種
IT
資源,并通過(guò)網(wǎng)絡(luò)以服務(wù)的方式廉價(jià)地提供給用戶;大數(shù)據(jù)旨在對(duì)海量數(shù)據(jù)的存儲(chǔ)、處理與分析,從海量數(shù)據(jù)中發(fā)現(xiàn)價(jià)值,服務(wù)于社會(huì)生產(chǎn)和生活。(2)
云計(jì)算和大數(shù)據(jù)的聯(lián)系。從整體上看,大數(shù)據(jù)和云計(jì)算是相輔相成的。云計(jì)算為大數(shù)據(jù)處理提供了強(qiáng)大的計(jì)算和存儲(chǔ)基礎(chǔ)設(shè)施,同時(shí)也可以提供各種數(shù)據(jù)管理和分布式計(jì)算服務(wù),使得大數(shù)據(jù)處理變得更加高效和靈活。反之,大數(shù)據(jù)為云計(jì)算提供了“用武之地”,沒(méi)有大數(shù)據(jù)這個(gè)“練兵場(chǎng)”,云計(jì)算再先進(jìn),也不能發(fā)揮它的應(yīng)用價(jià)值。可以說(shuō),云計(jì)算和大數(shù)據(jù)已經(jīng)彼此滲透、相互融合、相互促進(jìn)、相互影響。7.
簡(jiǎn)述
YARN
各組件的功能
(1)
ResourceManager:
處理
Client
的請(qǐng)求;
啟動(dòng)/監(jiān)控
ApplicationMaster;
監(jiān)控
NodeManager;
資源分配與調(diào)度(2)
ApplicationMaster:
為應(yīng)用申請(qǐng)資源,并分配給內(nèi)部任務(wù);
任務(wù)調(diào)度、監(jiān)控與容錯(cuò)(3)
NodeManager:
單個(gè)節(jié)點(diǎn)上的資源管理;
處理來(lái)自
ResourceManager
的命令;
處理來(lái)自
ApplicationMaster
的命令8.
簡(jiǎn)述
Spark
RDD
依賴關(guān)系區(qū)別
RDD
的依賴關(guān)系可以分為兩種類型:(1)窄依賴關(guān)系:每個(gè)父
RDD
分區(qū)最多只有一個(gè)子
RDD
分區(qū)依賴它。(2)寬依賴關(guān)系:每個(gè)父
RDD
分區(qū)可以有多個(gè)子
RDD
分區(qū)依賴它。9.
簡(jiǎn)述
Spark
的運(yùn)行架構(gòu)
(1)
當(dāng)一個(gè)Spark應(yīng)用被提交時(shí),首先為這個(gè)應(yīng)用構(gòu)建起基本的運(yùn)行環(huán)境。(2)
資源管理器為Executor分配資源,并啟動(dòng)Executor,Executor
運(yùn)行情況將隨著“心跳”信息發(fā)送到資源管理器上。(3)
SparkContext根據(jù)RDD的依賴關(guān)系構(gòu)建DAG,并將DAG提交給DAG調(diào)度器進(jìn)行
解析。(4)
任務(wù)在Executor上執(zhí)行,執(zhí)行結(jié)果被反饋給任務(wù)調(diào)度器和DAG調(diào)度器,執(zhí)行完畢后寫(xiě)入數(shù)據(jù)并釋放所有資源。10.
簡(jiǎn)述
Hadoop1.0
的改進(jìn)與提升
針對(duì)Hadoop1.0存在的局限與不足,在后續(xù)發(fā)展過(guò)程中,Hadoop對(duì)
MapReduce和
HDFS的許多方面做了有針對(duì)性的改進(jìn)與提升:(1)HDFS:
對(duì)于單一名稱節(jié)點(diǎn),存在的單點(diǎn)故障問(wèn)題,設(shè)計(jì)了
HDFS
HA,提供名稱節(jié)點(diǎn)熱備份機(jī)制。對(duì)于單一命名空間,無(wú)法實(shí)現(xiàn)資源隔離問(wèn)題,設(shè)計(jì)了
HDFS
聯(lián)邦,管理多個(gè)命名空間。(2)MapReduce:對(duì)于資源管理效率低的問(wèn)題,設(shè)計(jì)了新的資源管理調(diào)度框架
YARN。11.
使用代碼實(shí)現(xiàn)一個(gè)簡(jiǎn)單的詞頻統(tǒng)計(jì)
MapReduce
應(yīng)用
#
mapper
函數(shù)def
mapper(line):
words
=
line.strip().split()
for
word
in
words:
yield
(word,
1)#
reducer
函數(shù)def
reducer(word,
counts):
return
word,
sum(counts)#
主程序if
__name__
==
'__main__':
#
讀取輸入文件
with
open('input.txt',
'r')
as
f:
lines
=
f.readlines()
#
執(zhí)行
mapper
函數(shù)
pairs
=
[]
for
line
in
lines:
pairs.extend(mapper(line))
#
按鍵進(jìn)行分組
groups
=
{}
for
pair
in
pairs:
word,
count
=
pair
if
word
not
in
groups:
groups[word]
=
[]
groups[word].append(count)
#
執(zhí)行
reducer
函數(shù)
results
=
[]
for
word,
counts
in
groups.items():
result
=
reducer(word,
counts)
results.append(result)
#
輸出結(jié)果
for
result
in
results:
print(result)12.介紹一個(gè)本章未詳細(xì)介紹的大數(shù)據(jù)計(jì)算平臺(tái)或工具,形成報(bào)告SparkSQL的前身是Shark,給熟悉RDBMS但又不理解MapReduce的技術(shù)人員提供快速上手的工具。Spark
SQL
是
Apache
Spark
中用于處理結(jié)構(gòu)化數(shù)據(jù)的模塊,它提供了一種基于
SQL
的統(tǒng)一數(shù)據(jù)處理引擎,支持許多標(biāo)準(zhǔn)
SQL
查詢以及內(nèi)置函數(shù)和聚合操作,同時(shí)還能夠與
Spark
的其他組件集成,例如
Spark
Streaming、MLlib
和
GraphX。
(1)Spark
SQL的幾大優(yōu)點(diǎn):①
易整合:
無(wú)縫的整合了
SQL
查詢和
Spark
編程②
統(tǒng)一的數(shù)據(jù)訪問(wèn):可以使用相同的方式連接不同的數(shù)據(jù)源③
兼容Hive:在已有的倉(cāng)庫(kù)上直接運(yùn)行
SQL
或者
HiveQL④
標(biāo)準(zhǔn)數(shù)據(jù)連接:
通過(guò)
JDBC
或者
ODBC
來(lái)連接
(2)Spark
SQL
的主要功能包括:①
支持多種數(shù)據(jù)源:Spark
SQL
支持從多種數(shù)據(jù)源中讀取數(shù)據(jù),包括
JSON、Parquet、Hive
表、JDBC
數(shù)據(jù)庫(kù)等。②
支持
SQL
查詢:Spark
SQL
可以通過(guò)
SQL
查詢語(yǔ)句進(jìn)行數(shù)據(jù)查詢和分析,支持標(biāo)準(zhǔn)
SQL
查詢語(yǔ)句、聚合函數(shù)、內(nèi)置函數(shù)等。③
DataFrame
API:Spark
SQL
還提供了
DataFrame
API,使得用戶可以用類似于
SQL
的方式進(jìn)行數(shù)據(jù)查詢和處理,同時(shí)也可以通過(guò)編程方式實(shí)現(xiàn)更復(fù)雜的操作。④
優(yōu)化器:Spark
SQL
中內(nèi)置了一個(gè)基于
Catalyst
的優(yōu)化器,能夠自動(dòng)優(yōu)化查詢計(jì)劃,提高查詢性能。⑤
集成
Hive:Spark
SQL
還可以與
Hive
集成,用戶可以使用
Spark
SQL
的
API
或
SQL
查詢語(yǔ)句查詢
Hive
表,還可以將
Spark
SQL
的結(jié)果保存到
Hive
表中。Spark
SQL
的應(yīng)用場(chǎng)景包括數(shù)據(jù)倉(cāng)庫(kù)、數(shù)據(jù)分析、數(shù)據(jù)挖掘、報(bào)表等領(lǐng)域,它可以處理結(jié)構(gòu)化數(shù)據(jù)和半結(jié)構(gòu)化數(shù)據(jù),支持多種數(shù)據(jù)源和數(shù)據(jù)格式,并提供了易于使用的
API
和查詢語(yǔ)言,是
Spark
生態(tài)系統(tǒng)中重要的組成部分。第六章大數(shù)據(jù)挖掘1.?dāng)?shù)據(jù)挖掘的任務(wù)有哪些?每項(xiàng)任務(wù)的含義是什么?數(shù)據(jù)挖掘的主要任務(wù),具體包括聚類分析、預(yù)測(cè)建模(分類和回歸)、關(guān)聯(lián)分析、異常檢測(cè)。聚類是一種查找隱藏在數(shù)據(jù)之間內(nèi)在結(jié)構(gòu)的技術(shù),它將所有的樣本數(shù)據(jù)組織成一些相似的組,根據(jù)樣本數(shù)據(jù)的特點(diǎn)對(duì)其進(jìn)行分類,使得同一類別中的數(shù)據(jù)實(shí)例具有相似性的特點(diǎn),不同類別的數(shù)據(jù)實(shí)例相似性應(yīng)盡可能小。預(yù)測(cè)建模是通過(guò)變量函數(shù)的方式為因變量建立模型。預(yù)測(cè)建模任務(wù)通常分為兩大類:分類任務(wù),用于預(yù)測(cè)離散的因變量;回歸任務(wù),用于預(yù)測(cè)連續(xù)的因變量。關(guān)聯(lián)分析是用來(lái)發(fā)現(xiàn)描述數(shù)據(jù)中強(qiáng)關(guān)聯(lián)特征的模式,它利用關(guān)聯(lián)規(guī)則進(jìn)行數(shù)據(jù)挖掘,以發(fā)現(xiàn)隱藏在大型數(shù)據(jù)集中令人感興趣的聯(lián)系。異常檢測(cè)的任務(wù)是識(shí)別數(shù)據(jù)特征顯著不同于其他數(shù)據(jù)的觀測(cè)值。這樣的觀測(cè)值稱為異常點(diǎn)或離群點(diǎn)。異常檢測(cè)算法的目的是發(fā)現(xiàn)真正的離群點(diǎn),而避免錯(cuò)誤地將正常的對(duì)象標(biāo)注為離群點(diǎn)。2.?dāng)?shù)據(jù)挖掘和知識(shí)發(fā)現(xiàn)的概念有什么異同?
數(shù)據(jù)挖掘是指從大量的、不完全的、有噪聲的、模糊的、隨機(jī)的數(shù)據(jù)中,提取隱含在其中的、人們事先不知道但又是潛在有用信息的過(guò)程。這些信息的表現(xiàn)形式為規(guī)則、概念、規(guī)律及模式等。許多人把數(shù)據(jù)挖掘等同于數(shù)據(jù)庫(kù)中的知識(shí)發(fā)現(xiàn),實(shí)際上數(shù)據(jù)挖掘是數(shù)據(jù)庫(kù)中知識(shí)發(fā)現(xiàn)不可缺少的一部分,而知識(shí)發(fā)現(xiàn)是將未加工的數(shù)據(jù)轉(zhuǎn)換為有用信息的過(guò)程,該過(guò)程包括一系列轉(zhuǎn)換步驟,從數(shù)據(jù)的預(yù)處理到數(shù)據(jù)挖掘結(jié)果的后處理。
3.按如下標(biāo)準(zhǔn)對(duì)下列每種聚類算法進(jìn)行描述:可以確定的簇的形狀;必須指定的輸入?yún)?shù);局限性。(1)
k-means:K-means算法是一種基于距離的聚類算法,將平均值作為類“中心”進(jìn)行分割聚類。適用于球形簇,使用時(shí)需要指定簇的數(shù)量和初始中心點(diǎn)。對(duì)非球形簇分布的數(shù)據(jù)效果不好,且對(duì)初始中心點(diǎn)的選擇敏感;(2)
k中心點(diǎn):K中心點(diǎn)算法是一種基于距離的聚類算法,它將數(shù)據(jù)集分成K個(gè)簇,每個(gè)簇的中心是該簇內(nèi)距離最遠(yuǎn)的兩個(gè)點(diǎn)之間的中點(diǎn)。適用于球形簇,使用時(shí)需要指定簇的數(shù)量和初始中心點(diǎn)。對(duì)非球形簇分布的數(shù)據(jù)效果不好,且對(duì)初始中心點(diǎn)的選擇敏感;(3)
DBSCAN:DBSCAN算法是一種基于高密度連通區(qū)域的聚類算法,它將類簇定義為高密度相連點(diǎn)的最大集合。適用于各種復(fù)雜形狀的數(shù)據(jù)集,需要設(shè)置半徑和密度閾值來(lái)確定簇。對(duì)于高維數(shù)據(jù)集,和密度差異較大的數(shù)據(jù)集,DBSCAN聚類效果不佳;(4)
CLARA
算法隨機(jī)地抽取多個(gè)樣本,針對(duì)每個(gè)樣本尋找其代表對(duì)象,并對(duì)全部的數(shù)據(jù)對(duì)象進(jìn)行聚類,從中選擇質(zhì)量最好的聚類結(jié)果作為最終結(jié)果。算法需要指定采樣數(shù)量和簇?cái)?shù)量K。算法對(duì)不同的初始節(jié)點(diǎn)會(huì)導(dǎo)致不同的聚類結(jié)果,且結(jié)果往往收斂于局部最優(yōu),對(duì)數(shù)據(jù)對(duì)象的輸入順序異常敏感,且只能處理凸形或球形邊界聚類。4.
結(jié)果如下。
(1)
第一次循環(huán)執(zhí)行后的三個(gè)聚類中心:A1(2,10)、B2(7,5)和C1(1,2)(2)
最后的三個(gè)簇:{C2(4,9),
A1(2,10),
B1(5,8)}{B2(7,5),
A3(8,4),
B3(6,4)}{C1(1,2),
A2(2,5)}5.簡(jiǎn)述分類的意義及常用的分類方法。
分類是通過(guò)學(xué)習(xí)得到一個(gè)目標(biāo)函數(shù)f把每個(gè)屬性集
x
映射到一個(gè)預(yù)先定義的類標(biāo)號(hào)y上,其中目標(biāo)函數(shù)
f
也稱分類模型。目前比較常用的分類算法有決策樹(shù)算法、最近鄰算法、貝葉斯法、支持向量機(jī)、分類器組合法和人工神經(jīng)網(wǎng)絡(luò)算法。6.比較線性可分支持向量機(jī)、線性支持向量機(jī)和線性不可分的線性支持向量機(jī)。
線性可分支持向量機(jī)是指數(shù)據(jù)集可以被一個(gè)超平面完全分開(kāi)的情況。在這種情況下,可以找到一個(gè)最大間隔超平面;線性支持向量機(jī)是指數(shù)據(jù)集不能被一個(gè)超平面完全分開(kāi)的情況。在這種情況下,可以使用軟間隔最大化來(lái)找到一個(gè)最大間隔超平面;線性不可分的線性支持向量機(jī)是指數(shù)據(jù)集不能被一個(gè)超平面完全分開(kāi),并且不能使用軟間隔最大化來(lái)找到一個(gè)最大間隔超平面的情況。在這種情況下,我們可以使用核函數(shù)將數(shù)據(jù)映射到高維空間中,然后在高維空間中找到一個(gè)最大間隔超平面。7.列舉常見(jiàn)的回歸方法。常見(jiàn)的回歸方法主要有線性回歸、非線性回歸、邏輯回歸(
Logistic
Regression)、多項(xiàng)式回歸(
Polynomial
Regression)、嶺回歸及主成分回歸。8.支持向量回歸模型和支持向量機(jī)的區(qū)別支持向量機(jī)(SVM)是一種二分類模型,它的目標(biāo)是找到一個(gè)超平面,將數(shù)據(jù)集分成兩個(gè)部分。支持向量回歸(SVR)是支持向量機(jī)的一個(gè)應(yīng)用分支,它是一種非常強(qiáng)大的回歸方法。與SVM不同的是,SVR的目標(biāo)是找到一個(gè)超平面,使得所有樣本點(diǎn)到該超平面的距離都小于等于一個(gè)給定的閾值。SVR可以處理線性和非線性回歸問(wèn)題,并且可以使用核函數(shù)將數(shù)據(jù)映射到高維空間中,以處理非線性問(wèn)題。9.結(jié)果如下所示使用Apriori算法和FP算法得到的頻繁項(xiàng)集相同,其結(jié)果如下:{E}:
3{K}:
4{Y}:
3{K,
E}:
3{Y,
E}:
3{K,
Y}:
3{K,
Y,
E}:
3兩種算法得到的頻繁項(xiàng)集是相同的。但是,F(xiàn)P-growth算法的效率要高于Apriori算法,因?yàn)镕P-growth算法只需要掃描數(shù)據(jù)集兩次,而Apriori算法需要掃描數(shù)據(jù)集多次。因此,在實(shí)際應(yīng)用中,F(xiàn)P-growth算法更加常用。10.選擇任意兩種聚類算法進(jìn)行編程實(shí)現(xiàn)(Python、Matlab、Java、C
任選一種)。以k-means和DBSCAN算法為例。需要先安裝scikit-learn庫(kù)。from
sklearn.cluster
import
KMeans
from
sklearn.cluster
import
DBSCANimport
numpy
as
np#
輸入數(shù)據(jù)X
=
np.array([(1,1),
(1,2),
(2,1),
(8,8),
(8,9),
(9,8),
(15,15)])
#
k-means
print('k-means聚類結(jié)果')kmeans
=
KMeans(n_clusters=2,
random_state=0)kmeans_labels
=
kmeans.fit_predict(X)for
i
in
range(max(kmeans_labels)+1):
print(f"Cluster
{i+1}:
{list(X[kmeans_labels==i])}")
print('\n')#
DBSCAN
print('DBSCAN聚類結(jié)果')
dbscan
=
DBSCAN(eps=2,
min_samples=3)dbscan_labels
=
dbscan.fit_predict(X)for
i
in
range(max(dbscan_labels)+1):
print(f"Cluster
{i+1}:
{list(X[dbscan_labels==i])}")print(f"Noise:
{list(X[dbscan_labels==-1])}")第七章大數(shù)據(jù)安全1.大數(shù)據(jù)安全與隱私之間的區(qū)別與聯(lián)系。
區(qū)別:(1)需求不同。大數(shù)據(jù)隱私保護(hù)需求一般僅聚焦于匿名性;而大數(shù)據(jù)安全需求更為廣泛,不僅包括數(shù)據(jù)機(jī)密性,還包括數(shù)據(jù)完整性、真實(shí)性、不可否認(rèn)性、平臺(tái)安全、數(shù)據(jù)權(quán)屬判定等。(2)聚焦對(duì)象不同。大數(shù)據(jù)安全聚焦的數(shù)據(jù)對(duì)象是有明確定義的,可以是某個(gè)具體數(shù)據(jù),
也可以是一個(gè)信息系統(tǒng)中的全部信息;而大數(shù)據(jù)隱私的范圍沒(méi)有明顯界定,隱私或顯示或隱式存在于多種數(shù)據(jù)類型中。聯(lián)系:大數(shù)據(jù)隱私的匿名性和大數(shù)據(jù)安全的機(jī)密性較為相似。二者都希望用戶的關(guān)鍵數(shù)據(jù)或者標(biāo)識(shí)數(shù)據(jù)不被泄露,否則將會(huì)對(duì)用戶的隱私安全、財(cái)產(chǎn)安全造成威脅。
2.大數(shù)據(jù)生命周期包括哪些?請(qǐng)?jiān)敿?xì)介紹。
(1)大數(shù)據(jù)的生命周期包括數(shù)據(jù)產(chǎn)生、采集、傳輸、存儲(chǔ)、分析和使用、分享、銷毀等諸多階段。(2)數(shù)據(jù)產(chǎn)生:在大數(shù)據(jù)時(shí)代,數(shù)據(jù)產(chǎn)生是指在目標(biāo)領(lǐng)域有新的數(shù)據(jù)產(chǎn)生或者現(xiàn)有數(shù)據(jù)出現(xiàn)更新。(3)數(shù)據(jù)采集:數(shù)據(jù)采集是指數(shù)據(jù)采集方對(duì)于用戶端、智能設(shè)備、傳感器等終端產(chǎn)生的數(shù)據(jù)進(jìn)行記錄與預(yù)處理的過(guò)程。(4)數(shù)據(jù)傳輸:數(shù)據(jù)傳輸是指將采集到的大數(shù)據(jù)由用戶端、智能設(shè)備、傳感器等終端傳輸?shù)酱笮图惺綌?shù)據(jù)中心的過(guò)程。(5)數(shù)據(jù)存儲(chǔ):數(shù)據(jù)被采集后匯集并存儲(chǔ)于大型集中式數(shù)據(jù)中心的過(guò)程。(6)分析和使用:通過(guò)數(shù)據(jù)挖掘、機(jī)器學(xué)習(xí)等算法對(duì)數(shù)據(jù)進(jìn)行處理,從而提取出用戶所需的數(shù)據(jù)。(7)數(shù)據(jù)分享:將價(jià)值密度較高的信息向公眾展示或用于其他目的的分享過(guò)程。(8)數(shù)據(jù)銷毀:大數(shù)據(jù)系統(tǒng)中的某些數(shù)據(jù)一旦不再進(jìn)行預(yù)期目的分析、長(zhǎng)期內(nèi)沒(méi)有任何訪問(wèn)需求、超過(guò)生存時(shí)間戳以及存儲(chǔ)冗余都會(huì)進(jìn)行數(shù)據(jù)銷毀。數(shù)據(jù)銷毀主要包括數(shù)據(jù)硬銷毀和數(shù)據(jù)重寫(xiě)兩種方式。
3.大數(shù)據(jù)安全與隱私保護(hù)關(guān)鍵技術(shù)有哪些?
(1)設(shè)施層面關(guān)鍵技術(shù)。大數(shù)據(jù)安全設(shè)施層防護(hù)主要涉及終端、云平臺(tái)及大數(shù)據(jù)基礎(chǔ)設(shè)施設(shè)備的安全問(wèn)題,包括設(shè)備的失效、電磁破壞及平臺(tái)的崩潰等問(wèn)題。通常采用的關(guān)鍵技術(shù)包括終端安全防護(hù)技術(shù)、云平臺(tái)安全防護(hù)技術(shù)及大數(shù)據(jù)基礎(chǔ)設(shè)施安全防護(hù)技術(shù)等。(2)數(shù)據(jù)層面關(guān)鍵技術(shù)。①數(shù)據(jù)傳輸安全技術(shù),主要是VPN技術(shù),主流VPN產(chǎn)品包括基于SSL協(xié)議的VPN和IPsec協(xié)議的VPN。②數(shù)據(jù)采集安全技術(shù),關(guān)于數(shù)據(jù)采集安全技術(shù)相關(guān)的研究有基于計(jì)算機(jī)技術(shù)的方法在融合數(shù)據(jù)的同時(shí)保障感知數(shù)據(jù)的認(rèn)證性及機(jī)密性;針對(duì)無(wú)線傳感器的信息觀測(cè)及數(shù)據(jù)安全問(wèn)題,則提出了基于時(shí)間部署的密鑰管理方案。③數(shù)據(jù)存儲(chǔ)安全技術(shù),數(shù)據(jù)存儲(chǔ)安全技術(shù)包括靜態(tài)數(shù)據(jù)、動(dòng)態(tài)數(shù)據(jù)加密和非關(guān)系型的數(shù)據(jù)存儲(chǔ)安全最佳方案及數(shù)據(jù)的備用、恢復(fù)等。(3)接口層面關(guān)鍵技術(shù)。①數(shù)據(jù)提供者與數(shù)據(jù)應(yīng)用提供者之間的接口安全防護(hù)需要利用的關(guān)鍵技術(shù)包括終端輸入驗(yàn)證、安全數(shù)據(jù)融合技術(shù)、過(guò)濾技術(shù)及實(shí)時(shí)安全監(jiān)控技術(shù)等。②數(shù)據(jù)應(yīng)用提供者與數(shù)據(jù)消費(fèi)者之間的接口安全防護(hù)需要利用的關(guān)鍵技術(shù)包括防止隱私數(shù)據(jù)分析和傳播的隱私保護(hù)技術(shù)及遵循法律法規(guī)的敏感數(shù)據(jù)訪問(wèn)控制技術(shù)等。③數(shù)據(jù)應(yīng)用提供者與數(shù)據(jù)框架提供者之間的接口安全防護(hù)需要利用的關(guān)鍵技術(shù)包括身份識(shí)別、數(shù)據(jù)加密、訪問(wèn)控制、加密數(shù)據(jù)的計(jì)算粒度訪問(wèn)及粒度審計(jì)等。(4)系統(tǒng)層面關(guān)鍵技術(shù)。數(shù)據(jù)安全系統(tǒng)層安全技術(shù)利用大數(shù)據(jù)對(duì)系統(tǒng)進(jìn)行安全管理和防御,包括實(shí)時(shí)安全檢測(cè)、基于大數(shù)據(jù)分析的安全事件管理、面向安全的大數(shù)據(jù)挖掘的監(jiān)測(cè)和防范等關(guān)鍵技術(shù)。(5)數(shù)據(jù)發(fā)布匿名保護(hù)技術(shù)。隱私保護(hù)的研究領(lǐng)域主要關(guān)注基于數(shù)據(jù)失真的技術(shù)、基于數(shù)據(jù)加密的技術(shù)和基于限制發(fā)布的技術(shù)。(6)社交網(wǎng)絡(luò)匿名保護(hù)技術(shù)。目前的邊匿名保護(hù)技術(shù)大多是通過(guò)隨機(jī)增刪交換邊的方法有效實(shí)現(xiàn)邊匿名。有少部分邊匿名保護(hù)技術(shù)是基于超級(jí)節(jié)點(diǎn)對(duì)圖結(jié)構(gòu)進(jìn)行分割和集聚操作的,如基于節(jié)點(diǎn)聚集的匿名保護(hù)技術(shù)、基于基因算法的匿名保護(hù)技術(shù)、基于模擬退火算法的匿名保護(hù)技術(shù)及先填充再分割超級(jí)節(jié)點(diǎn)的匿名保護(hù)技術(shù)。(7)數(shù)據(jù)水印技術(shù)。數(shù)字水印是指將標(biāo)識(shí)信息以難以察覺(jué)的方式嵌入數(shù)據(jù)載體內(nèi)部且不影響其使用的技術(shù),多用于多媒體數(shù)據(jù)版權(quán)保護(hù),也有部分針對(duì)數(shù)據(jù)庫(kù)和文本文件的水印技術(shù)。(8)數(shù)據(jù)溯源技術(shù)。數(shù)據(jù)溯源的基本方法是標(biāo)記法,后來(lái)數(shù)據(jù)溯源的概念進(jìn)一步細(xì)化為
why-和-where-兩類,分別側(cè)重?cái)?shù)據(jù)的計(jì)算方法及數(shù)據(jù)的出處。(9)角色挖掘技術(shù)。角色挖掘簡(jiǎn)單來(lái)說(shuō),就是如何設(shè)置合理的角色。典型的算法包括以可視化的形式,通過(guò)用戶權(quán)限二維圖排序歸并的算法提取角色;通過(guò)子集枚舉及聚類等非形式化的算法提取角色;也有基于形式化語(yǔ)義分析、通過(guò)層次化挖掘更準(zhǔn)確提取角色的算法。
4.密文技術(shù)有哪些?它們的步驟是什么?它們有什么特點(diǎn)?它們適用于什么應(yīng)用場(chǎng)景?(1)對(duì)稱密文檢索技術(shù),包括Setup、BuildIndex、Gen
Trapdoor、Search等算法,適用于大部分第三方存儲(chǔ)場(chǎng)景。可分為:①基于全文掃描的技術(shù)、②基于文檔-關(guān)鍵詞索引的技術(shù)、③基于關(guān)鍵詞-文檔索引的技術(shù)。①基于全文掃描的技術(shù)步驟:先對(duì)文檔進(jìn)行分組加密,然后將分組加密結(jié)果與一個(gè)偽隨機(jī)流進(jìn)行異或得到最終用于檢索的密文數(shù)據(jù)。檢索時(shí),用戶將關(guān)鍵詞對(duì)應(yīng)的陷門(mén)發(fā)送給服務(wù)器,服務(wù)器對(duì)所有密文數(shù)據(jù)依次使用陷門(mén)計(jì)算其是否滿足預(yù)設(shè)的條件,若滿足預(yù)設(shè)條件,則返回該文檔。②基于文檔-關(guān)鍵詞索引的技術(shù)步驟:為每個(gè)文檔建立單獨(dú)的索引,且服務(wù)器在檢
索時(shí)需要遍歷全部索引。特點(diǎn):這種技術(shù)的檢索時(shí)間復(fù)雜度與文檔個(gè)數(shù)成正比。③基于關(guān)鍵詞-文檔索引的技術(shù)步驟:該技術(shù)的索引結(jié)構(gòu)類似于搜索引擎倒排索引,在初始化時(shí)為每個(gè)關(guān)鍵詞生成包含該關(guān)鍵詞的文檔標(biāo)識(shí)集合,并加密存儲(chǔ)這些索引結(jié)構(gòu)。特點(diǎn):不需要逐個(gè)檢索每個(gè)文檔,其檢索時(shí)間復(fù)雜度僅與返回的結(jié)果個(gè)數(shù)呈線性關(guān)系。因此該技術(shù)的檢索效率遠(yuǎn)高于前兩種技術(shù)。使用場(chǎng)景:大數(shù)據(jù)場(chǎng)景。(2)非對(duì)稱密文檢索技術(shù),包括Setup、BuildIndex、Gen
Trapdoor、Search等算法,適用于密鑰交換、證書(shū)等場(chǎng)景。(3)密文區(qū)間檢索技術(shù)可分為①早期的密文區(qū)間檢索技術(shù)、②基于謂詞加密和矩陣加密的密文區(qū)間檢索技術(shù)、③基于等值檢索的技術(shù)、④保序加密。①適用于客戶端存儲(chǔ)和計(jì)算能力突出的場(chǎng)景。特點(diǎn):早期的密文區(qū)間檢索技術(shù)雖然簡(jiǎn)單易實(shí)現(xiàn),但是在安全性和檢索效率上的缺陷阻礙了其在現(xiàn)實(shí)場(chǎng)景中的應(yīng)用。②基于謂詞加密的密文區(qū)間檢索技術(shù)普遍安全性較高。但是其基本運(yùn)算操作為雙線性映射,從而檢索效率較低。不適用于處理高維度、高精度數(shù)據(jù)?;诰仃嚰用艿拿芪膮^(qū)間檢索技術(shù)雖然安全性不如基于謂詞加密的密文區(qū)間檢索技術(shù)但檢索效率較高,且可以方便地處理精度數(shù)據(jù)。③基于等值檢索的技術(shù)靈活性較大,根據(jù)用戶對(duì)于安全性、檢索效率和存儲(chǔ)空間的要求,可以采用不同的關(guān)鍵詞構(gòu)造方法。④密文直接泄露了明文的排序特征,因此其安全性較低。但是對(duì)于經(jīng)過(guò)保序加密的數(shù)據(jù),可以使用任意明文數(shù)據(jù)結(jié)構(gòu)和檢索方式對(duì)其進(jìn)行檢索,所以在安全性要求不高的場(chǎng)景中,保序加密具有良好的表現(xiàn)。
5.安全處理技術(shù)中同態(tài)加密技術(shù)有什么優(yōu)缺點(diǎn)?有沒(méi)有對(duì)該技術(shù)的改進(jìn)方式?
優(yōu)點(diǎn):同態(tài)加密技術(shù)的全過(guò)程不需要對(duì)數(shù)據(jù)進(jìn)行解密,人們可
以在加密的情況下進(jìn)行簡(jiǎn)單的比較和檢索從而得出正確的結(jié)論。因此,云計(jì)算運(yùn)用同態(tài)加密
技術(shù),不僅可以很好地解決目前云計(jì)算遭遇到的大部分安全問(wèn)題,還可以擴(kuò)展和增強(qiáng)云計(jì)算
的應(yīng)用模式,同時(shí)它為在云計(jì)算的服務(wù)中有效合法利用海量云數(shù)據(jù)提供了可能。缺點(diǎn):現(xiàn)有算法存在效率低、密鑰過(guò)大、密文爆炸等性能問(wèn)題,在性能上距離可行的工程應(yīng)用還有一定距離。目前改進(jìn)方式舉例:基于整數(shù)的全同態(tài)加密技術(shù)改進(jìn)方案。
6.請(qǐng)簡(jiǎn)述隱私保護(hù)技術(shù)的重要性,并描述現(xiàn)有技術(shù)的特點(diǎn)。
隱私保護(hù)技術(shù)的重要性:隱私保護(hù)技術(shù)的重要性在于能夠在不泄露原始內(nèi)容的情況下對(duì)數(shù)據(jù)進(jìn)行計(jì)算。隱私保護(hù)技術(shù)的目標(biāo)在于實(shí)現(xiàn)數(shù)據(jù)可用性和隱私性之間的良好平衡?,F(xiàn)有技術(shù):(1)社交圖譜中的隱私保護(hù),社交網(wǎng)絡(luò)隱私保護(hù)目標(biāo)為依據(jù)當(dāng)前社交網(wǎng)絡(luò)分析技術(shù)能力,對(duì)社交圖譜進(jìn)行足夠的處理變換,在保證數(shù)據(jù)可用性的前提下,合理降低被保護(hù)數(shù)據(jù)被推測(cè)的準(zhǔn)確度。(2)位置軌跡隱私保護(hù),可分為①基于策略的保護(hù)方法,依賴于外界約束;②基于匿名的保護(hù)方法,切斷了用戶請(qǐng)求的位置與用戶身份的聯(lián)系;③基于干擾的保護(hù)方法,使用噪音對(duì)用戶的準(zhǔn)確位置進(jìn)行擾動(dòng);④基于加密的保護(hù)方法,可以在確保服務(wù)可用的情況下不會(huì)泄露任何身份信息和查詢信息,滿足更加嚴(yán)格的保護(hù)隱私的需求。
7.安全存儲(chǔ)技術(shù)有哪些分類?如何實(shí)現(xiàn)企業(yè)存儲(chǔ)安全?
安全存儲(chǔ)技術(shù)分類:基于可信引用監(jiān)控機(jī)的訪問(wèn)控制、基于密碼學(xué)的訪問(wèn)控制。實(shí)現(xiàn)企業(yè)存儲(chǔ)安全:(1)對(duì)于中小型企業(yè)的數(shù)據(jù)存儲(chǔ)業(yè)務(wù),由于外包存儲(chǔ)的存儲(chǔ)服務(wù)是第三方提供的,較難構(gòu)建可信引用監(jiān)控機(jī),所以往往采用密碼學(xué)中的密碼技術(shù)
來(lái)實(shí)施訪問(wèn)控制,如基于密鑰管理的訪問(wèn)控制技術(shù)和基于屬性加密(Attribute
Based
Encryption,ABE)的訪問(wèn)控制技術(shù)(2)對(duì)于大企業(yè)或組織,使用基于可信引用監(jiān)控機(jī)的訪問(wèn)控制技術(shù)。包括傳統(tǒng)的自主訪問(wèn)控制、強(qiáng)制訪問(wèn)控制、
基于角色的訪問(wèn)控制、基于屬性的訪問(wèn)控制(Attribute-Based
Access
Control,ABAC)及基于數(shù)據(jù)分析的訪問(wèn)控制和角色挖掘等技術(shù)。
8.請(qǐng)讀者根據(jù)對(duì)大數(shù)據(jù)安全的理解,簡(jiǎn)述大數(shù)據(jù)安全目前所面臨的挑戰(zhàn)。
(1)大數(shù)據(jù)依托的非關(guān)系型數(shù)據(jù)庫(kù)缺乏數(shù)據(jù)安全機(jī)制。(2)社會(huì)工程學(xué)攻擊帶來(lái)的安全問(wèn)題。(3)軟件后門(mén)威脅大數(shù)據(jù)安全。(4)操作系統(tǒng)漏洞的存在威脅文件安全。(5)云計(jì)算環(huán)境中用戶數(shù)據(jù)安全與隱私保護(hù)難以實(shí)現(xiàn)。
9.簡(jiǎn)述大數(shù)據(jù)安全對(duì)企業(yè)服務(wù)的影響。
總的來(lái)說(shuō)數(shù)據(jù)安全主要包括四個(gè)方面:數(shù)據(jù)安全審計(jì)、數(shù)據(jù)安全防火墻、數(shù)據(jù)脫敏和數(shù)據(jù)加密。(1)數(shù)據(jù)安全審計(jì)數(shù)據(jù)安全審計(jì)通過(guò)記錄、分析和報(bào)告用戶訪問(wèn)數(shù)據(jù)庫(kù)行為,幫助用戶生成合規(guī)報(bào)告、事故可追溯性,同時(shí)通過(guò)大數(shù)據(jù)搜索技術(shù)提供高效查詢審計(jì)報(bào)告,定位事件原因,以便未來(lái)查詢、分析、過(guò)濾,加強(qiáng)內(nèi)外數(shù)據(jù)庫(kù)網(wǎng)絡(luò)行為監(jiān)控審計(jì),提高數(shù)據(jù)資產(chǎn)安全。(2)數(shù)據(jù)安全防火墻數(shù)據(jù)安全防火墻可以控制數(shù)據(jù)庫(kù)訪問(wèn)行為,攔截高風(fēng)險(xiǎn)操作,監(jiān)控可疑行為,攔截風(fēng)險(xiǎn)威脅,提供可靠的數(shù)據(jù)庫(kù)安全保護(hù)服務(wù)。(3)數(shù)據(jù)脫敏數(shù)據(jù)脫敏是保證數(shù)據(jù)安全的最基本的手段。脫敏方法有很多。最常用的方法是使用可逆加密算法。倉(cāng)庫(kù)中的每個(gè)敏感字段都需要加密,匿名個(gè)人信息,為數(shù)據(jù)的安全使用提供基本保障。(4)數(shù)據(jù)加密數(shù)據(jù)加密提供積極的數(shù)據(jù)安全防御機(jī)制,防止明文存儲(chǔ)造成的數(shù)據(jù)泄露,突破邊界保護(hù)外部黑客攻擊和內(nèi)部高權(quán)限用戶數(shù)據(jù)盜竊,防止繞過(guò)合法應(yīng)用系統(tǒng)直接訪問(wèn)數(shù)據(jù)庫(kù)的外部攻擊和盜竊,從根本上解決數(shù)據(jù)庫(kù)數(shù)據(jù)存儲(chǔ)安全問(wèn)題。一旦重要數(shù)據(jù)泄露,將給企業(yè)經(jīng)濟(jì)、用戶隱私造成巨大損失。
10.請(qǐng)讀者通過(guò)查閱資料,自行尋找其他大數(shù)據(jù)安全實(shí)例。
政務(wù)服務(wù)領(lǐng)域,由于數(shù)據(jù)敏感、系統(tǒng)壁壘等問(wèn)題,政務(wù)數(shù)據(jù)共享存在以下問(wèn)題:(1)各地區(qū)、各部門(mén)存在系統(tǒng)壁壘。傳統(tǒng)的政務(wù)數(shù)據(jù)采取中心化的服務(wù)模式,由特定政府機(jī)構(gòu)管理,不利于數(shù)據(jù)共享和各種獲取數(shù)據(jù)。(2)政務(wù)數(shù)據(jù)敏感,信息傳輸、交換風(fēng)險(xiǎn)高。政府?dāng)?shù)據(jù)由于其與生俱來(lái)的敏感性,以及歷史和設(shè)備原因?qū)е麓嬖诘男畔⒔粨Q風(fēng)險(xiǎn),導(dǎo)致各地區(qū)、部門(mén)之間的信息交換存在顧慮。(3)構(gòu)建統(tǒng)一平臺(tái)花費(fèi)大、維護(hù)成本高。若推出統(tǒng)一共享平臺(tái),需接入各地區(qū)、部門(mén)的系統(tǒng),易導(dǎo)致數(shù)據(jù)泄露以及未來(lái)維護(hù)成本較高等問(wèn)題。解決方案:基于區(qū)塊鏈構(gòu)建一個(gè)政府主導(dǎo)、多方監(jiān)管、共同協(xié)作的新型政務(wù)數(shù)據(jù)共享平臺(tái)。依托區(qū)塊鏈自有的加密安全、防篡改、去中心化的優(yōu)勢(shì),實(shí)現(xiàn)跨地域、跨主體、跨系統(tǒng)之間的數(shù)據(jù)共享,實(shí)現(xiàn)數(shù)據(jù)價(jià)值流動(dòng)交換。
11.簡(jiǎn)述未來(lái)大數(shù)據(jù)安全的發(fā)展方向。
(1)針對(duì)大數(shù)據(jù)依托的非關(guān)系型數(shù)據(jù)庫(kù)推出有效防控機(jī)制。(2)封閉軟件后門(mén)、封堵系統(tǒng)漏洞,降低對(duì)數(shù)據(jù)的威脅。(3)云計(jì)算環(huán)境中用戶數(shù)據(jù)安全與隱私保護(hù)。(4)區(qū)塊鏈的應(yīng)用。
12.談一談對(duì)大數(shù)據(jù)時(shí)代來(lái)臨,如何保護(hù)個(gè)人隱私的認(rèn)識(shí)。
(1)了解隱私政策。(2)加強(qiáng)賬號(hào)安全。(3)控制個(gè)人信息。(4)使用加密通訊工具。(5)定期清理瀏覽歷史和緩存。(6)使用隱私保護(hù)工具。(7)謹(jǐn)慎分享個(gè)人信息。(8)教育自己和他人。第八章大數(shù)據(jù)可視化
1.?dāng)?shù)據(jù)可視化的三個(gè)分支是什么?分別有什么特點(diǎn)?
數(shù)據(jù)可視化的三個(gè)分支主要包括科學(xué)可視化、信息可視化和可視分析學(xué)??茖W(xué)可視化的特點(diǎn)主要有:1)主要關(guān)注三維現(xiàn)象的可視化
2)重點(diǎn)在于對(duì)體、面及光源等的逼真渲染
3)目的是以圖形的方式說(shuō)明科學(xué)數(shù)據(jù),使科學(xué)家能夠從數(shù)據(jù)中了解、說(shuō)明和收集規(guī)律4)處理
的數(shù)據(jù)具有天然幾何結(jié)構(gòu)(如磁感線、流體分布等)信息可視化的特點(diǎn)主要有:1)研究抽象數(shù)據(jù)的交互式視覺(jué)表示,以加強(qiáng)人類認(rèn)知
2)處理的數(shù)據(jù)具有抽象數(shù)據(jù)結(jié)構(gòu)可視分析學(xué)的特點(diǎn)主要有:1)重點(diǎn)是通過(guò)交互式視覺(jué)界面進(jìn)行分析推理
2)綜合了計(jì)算機(jī)圖形學(xué)、數(shù)據(jù)挖掘和人機(jī)交互等技術(shù)
3)將人的感知能力與認(rèn)知能力以可視的方式融入數(shù)據(jù)處理過(guò)程
4)
能建立螺旋式信息交流與知識(shí)提煉途徑2.如何實(shí)現(xiàn)數(shù)據(jù)可視化?常用的數(shù)據(jù)可視化圖表有哪些?
經(jīng)典的可視化實(shí)現(xiàn)流程如圖
8.6
所示。首先對(duì)數(shù)據(jù)進(jìn)行加工過(guò)濾,轉(zhuǎn)變成視覺(jué)可表達(dá)形式,然后渲染成用戶可見(jiàn)的視圖。
常用的可視化圖表有餅圖、旭日?qǐng)D、散點(diǎn)圖、氣泡圖、折線圖、柱狀圖、箱線圖、關(guān)系圖、雷達(dá)圖、平行坐標(biāo)圖、分級(jí)統(tǒng)計(jì)地圖等。
3.?dāng)?shù)據(jù)可視化工具有哪些特性?主流的編程工具有哪些?分別適用于哪些場(chǎng)景?
數(shù)據(jù)可視化工具的特點(diǎn)主要有:
1)實(shí)時(shí)性
2)操作簡(jiǎn)單
3)擁有更豐富的展現(xiàn)
4)多種數(shù)據(jù)集成支持方式。主流的編程工具主要有Processing、R、SAS、D3.js、Echarts。要求從藝術(shù)的角度進(jìn)行數(shù)據(jù)可視化的場(chǎng)景,可以使用Processing;既要做數(shù)據(jù)分析,又要做圖形處理的場(chǎng)景可以使用R、SAS;既要兼顧數(shù)據(jù)處理,又要兼顧展現(xiàn)效果的場(chǎng)景可以使用D3.js和Echarts。
4.四個(gè)人捐款給一個(gè)人,姓名和捐款金額如表
8.1
所示,請(qǐng)用餅圖描述四個(gè)人捐款金額占總捐款金額中的比例。
import
matplotlib.pyplot
as
plt#
設(shè)置允許中文字符plt.rcParams['font.sans-serif']
=
'simhei'#
設(shè)置餅圖數(shù)據(jù)data
=
[900,
10000,
7000,
15000]#
設(shè)置餅圖每個(gè)數(shù)據(jù)對(duì)應(yīng)的標(biāo)簽label
=
['George',
'Sam',
'Betty',
'Charlie']
#
新建一個(gè)畫(huà)布plt.figure(figsize=(5,5))#
畫(huà)圖餅圖plt.pie(data,
labels
=
label,
autopct='%.2f%%',
)#
設(shè)置餅圖標(biāo)題plt.title('四人捐款占比情況')#
展示餅圖plt.show()5.某公司統(tǒng)計(jì)了近半年的銷售收入(Income)和邊際利潤(rùn)率(Profit_Margin)的數(shù)據(jù),為了方便財(cái)務(wù)人員進(jìn)行查看,請(qǐng)?jiān)谕粋€(gè)圖形窗口中繪制兩組數(shù)據(jù)的變化趨勢(shì)。import
matplotlib.pyplot
as
plt#
設(shè)置允許中文字符plt.rcParams['font.sans-serif']
=
'simhei'#
銷售收入Income
=
[2456,
2032,
1900,
2450,
2890,
2280]#
邊際利潤(rùn)率Profit_Margin
=
[0.125,
0.113,
0.102,
0.145,
0.143,
0.151]#
設(shè)置
x
軸的標(biāo)簽x_label
=
['一月',
'二月',
'三月',
'四月',
'五月',
'六月']#
創(chuàng)建第一個(gè)坐標(biāo)系fig,
ax1
=
plt.subplots()#
繪制
Income
折線圖,顏色設(shè)置為紅色ax1.plot(x_label,
Income,
color='tab:red')#
添加坐標(biāo)軸標(biāo)簽和標(biāo)題ax1.set_xlabel('月份')ax1.set_ylabel('銷售收入',
color='tab:red')ax1.tick_params(axis='y',
labelcolor='tab:red')ax1.set_ylim([1000,
3200])
#
設(shè)置
y
軸范圍#
創(chuàng)建第二個(gè)坐標(biāo)系,因?yàn)閮山M數(shù)據(jù)的數(shù)值范圍差距過(guò)大,所以使用兩套坐標(biāo)系ax2
=
ax1.twinx()#
繪制
Profit_Margin
折線圖ax2.plot(x_label,
Profit_Margin,
color='tab:blue')#
添加坐標(biāo)軸標(biāo)簽和標(biāo)題ax2.set_ylabel('邊際利潤(rùn)率',
color='tab:blue')ax2.tick_params(axis='y',
labelcolor='tab:blue')ax2.set_ylim([0,
0.2])
#
設(shè)置
y
軸范圍#
添加圖例ax1.legend(['銷售收入'],
loc='upper
left')ax2.legend(['邊際利潤(rùn)率'],
loc='upper
right')#
添加標(biāo)題plt.title('近半年公司銷售收入和邊際利潤(rùn)率折線圖')#添加網(wǎng)格plt.grid()#
顯示圖形plt.show()6.利用爬蟲(chóng)方法爬取北京或其他省市地區(qū)的歷史空氣污染物含量及
AQI
數(shù)據(jù),選擇合
適的數(shù)據(jù)可視化圖表展示多個(gè)地區(qū)歷史空氣質(zhì)量的對(duì)比關(guān)系,并采用數(shù)據(jù)可視化圖表對(duì)
AQI與各種空氣污染物含量的關(guān)系進(jìn)行分析。爬蟲(chóng)代碼如下所示:
import
os
import
requestsfrom
bs4
import
BeautifulSoupimport
pandas
as
pd
#
爬取的城市列表cities
=
['beijing',
'shanghai',
'tianjin','chongqing','haerbin','dalian','shenyang','suzhou','wuhan','chengdu']names=['北京','上海','天津','重慶','哈爾濱','大連','沈陽(yáng)','蘇州','武漢','成都']#
城市英文名轉(zhuǎn)換成中文名en2cn=dict(zip(cities,names))#
所有城市空氣質(zhì)量歷史信息存儲(chǔ)目錄dir='AirQualityInfos'
if
not
os.path.exists(dir):
os.makedirs(dir)#
爬取的時(shí)間范圍start_year
=
2021end_year
=
2022#
請(qǐng)求頭信息headers
=
{
'User-Agent':
'Mozilla/5.0
(Windows
NT
10.0;
Win64;
x64)
AppleWebKit/537.36
(KHTML,
like
Gecko)
Chrome/58.0.3029.110
Safari/537.3'}#
循環(huán)遍歷城市列表,爬取數(shù)據(jù)并存儲(chǔ)到
CSV
文件中
for
city
in
cities:
#
創(chuàng)建一個(gè)表格用于存儲(chǔ)爬取得到的數(shù)據(jù)
df=pd.DataFrame(columns=['City',
'Date',
'Quality'
,
'AQI',
'PM2.5',
'PM10',
'SO2',
'NO2',
'CO',
'O3'])
#
從開(kāi)始的年份到結(jié)束的年份進(jìn)行遍歷
for
year
in
range(start_year,end_year):
#
從1月到12月進(jìn)行遍歷
for
mon
in
range(1,13):
mon=str(mon).zfill(2)
time=str(year)+mon
print('當(dāng)前正在爬取的數(shù)據(jù)為:',time,en2cn[city])
#
爬取網(wǎng)站的數(shù)據(jù)
url
=
f'/aqi/{city}-{time}.html'
#
獲取網(wǎng)頁(yè)內(nèi)容
response
=
requests.get(url,
headers=headers)
soup
=
BeautifulSoup(response.content,
'html.parser')
#
獲取數(shù)據(jù)表格
table
=
soup.find('table',
{'class':
'b'})
#
獲取數(shù)據(jù)行
rows
=
table.find_all('tr')[1:]
for
row
in
rows:
#
獲取日期和數(shù)據(jù)
tds=row.find_all('td')
date
=
tds[0].get_text().strip()
quality
=
tds[1].get_text().strip()
aqi
=
tds[2].get_text().strip()
pm25
=
tds[4].get_text().strip()
pm10
=
tds[5].get_text().strip()
so2
=
tds[6].get_text().strip()
no2
=
tds[7].get_text().strip()
co
=
tds[8].get_text().strip()
o3
=
tds[9].get_text().strip()
#
print(en2cn[city],date,quality,aqi,pm25,pm10,so2,no2,co,o3)
df.loc[len(df.index)]=[
en2cn[city],date,quality,aqi,pm25,pm10,so2,no2,co,o3
]
df.to_excel(os.path.join(dir,city+'.xlsx'))第九章大數(shù)據(jù)應(yīng)用案例1.歸納大數(shù)據(jù)在金融行業(yè)有哪些具體應(yīng)用場(chǎng)景,并分析大數(shù)據(jù)為金融行業(yè)帶來(lái)的價(jià)值。
銀行大數(shù)據(jù)的應(yīng)用有客戶畫(huà)像、精準(zhǔn)營(yíng)銷、風(fēng)險(xiǎn)管理與風(fēng)險(xiǎn)控制、運(yùn)營(yíng)優(yōu)化等。保險(xiǎn)大數(shù)據(jù)的應(yīng)用有客戶細(xì)分和精細(xì)化營(yíng)銷、欺詐行為分析、精細(xì)化運(yùn)營(yíng)等。證券大數(shù)據(jù)的應(yīng)用有股價(jià)預(yù)測(cè)、客戶關(guān)系管理、智能投資顧問(wèn)、投資景氣指數(shù)等。大數(shù)據(jù)為金融行業(yè)帶來(lái)的價(jià)值有:改進(jìn)風(fēng)險(xiǎn)管理:金融機(jī)構(gòu)可以通過(guò)使用大數(shù)據(jù)技術(shù)更準(zhǔn)確地識(shí)別風(fēng)險(xiǎn)和預(yù)測(cè)未來(lái)趨勢(shì),增強(qiáng)風(fēng)險(xiǎn)管理能力,為投資者和客戶提供更可靠的服務(wù)。提高效率與降低成本:大數(shù)據(jù)可以提高金融機(jī)構(gòu)的工作效率,減少錯(cuò)誤和重復(fù)工作,并降低運(yùn)營(yíng)成本。例如,采用自動(dòng)化服務(wù)和智能客戶服務(wù)代替人工服務(wù),或是自動(dòng)識(shí)別、分析和預(yù)測(cè)市場(chǎng)動(dòng)態(tài)來(lái)實(shí)現(xiàn)高頻交
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度車庫(kù)租賃及智能停車設(shè)備安裝合同3篇
- 二零二五年度雛雞養(yǎng)殖場(chǎng)與動(dòng)物疫病防控中心合作合同4篇
- 科技賦能下的寵物醫(yī)療行業(yè)發(fā)展前景
- 科技創(chuàng)新助力創(chuàng)新藥物研發(fā)的市場(chǎng)突破
- 二零二五年度車間承包與新能源應(yīng)用合作協(xié)議4篇
- 二零二五年度GPS技術(shù)在智能穿戴設(shè)備中的應(yīng)用合同3篇
- 網(wǎng)絡(luò)時(shí)代下家庭教育的新視角-家庭網(wǎng)絡(luò)安全教育的重要性及實(shí)踐路徑
- 教育、醫(yī)療、辦公多領(lǐng)域下的農(nóng)業(yè)科技發(fā)展探討
- 二零二五年度櫥柜行業(yè)展會(huì)參展與采購(gòu)合同4篇
- 二零二五年度文化產(chǎn)業(yè)發(fā)展藝人合作合同2篇
- 肩袖損傷護(hù)理查房
- 迅雷網(wǎng)盤(pán)最最最全影視資源-持續(xù)更新7.26
- 設(shè)備運(yùn)維管理安全規(guī)范標(biāo)準(zhǔn)
- 辦文辦會(huì)辦事實(shí)務(wù)課件
- 大學(xué)宿舍人際關(guān)系
- 2023光明小升初(語(yǔ)文)試卷
- GB/T 14600-2009電子工業(yè)用氣體氧化亞氮
- GB/T 13234-2018用能單位節(jié)能量計(jì)算方法
- 申請(qǐng)使用物業(yè)專項(xiàng)維修資金征求業(yè)主意見(jiàn)表
- 房屋買(mǎi)賣合同簡(jiǎn)單范本 房屋買(mǎi)賣合同簡(jiǎn)易范本
- 無(wú)抽搐電休克治療規(guī)范
評(píng)論
0/150
提交評(píng)論