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

大數據編程對于JAVA程序設計課程改革的沖擊

2021-11-19 12:15:06
探索科學(學術版) 2021年11期
關鍵詞:課程

高 巖

河南理工大學計算機科學與技術學院數據科學系 河南 焦作 454003

一、引言

大數據編程相關的課程主要包括:HDFS,MapReduce,YARN,Spark,Storm,Hive,HBase等內容[1]。所涉及的大量的計算機基礎知識包括:Linux系統原理,計算機組成原理,網絡組成,數據庫原理,面向對象程序設計等內容。對于上課學生的基礎都提出了極高的要求,往往存在一邊上課,一邊“填空”的情況。另一方面,為了改變“老師講,學生聽;教師問,學生答,動手練”的教學模式,我國的高校正在大量壓縮理論教學時長,轉而可以將更多精力放在實踐過程中。面向對象程序課程中JAVA、PYTHON語言在大數據編程方面也存在大量的應用[2]。因此,教學過程中的需要按照大數據的要求進行相應的調整,并大量壓縮課時。

二、JAVA程序設計課程的典型設定

JAVA程序設計相關課程是計算機專業的基礎課程之一,也是重要的核心課程[3]。一般而言,這門的主要教學目標有三:1、熟練掌握JAVA語言的基本語法,能夠較為深入理解面向對象程序設計機制,可以熟練掌握類的設計;2、掌握JAVA標準版的API使用方法,掌握常用系統類、異常處理相關類、容器集合類、輸入輸出類、多線程類;3、能過圖形用戶界面介紹頁面布局、事件響應等知識為后續網絡前端設計提供基礎;在網絡編程方面,介紹SOCKET的概念,進一步深化IO流及多線程的相關知識,為后續的服務池管理提供前期模型,能過相關的項目的練習培養良好編程習慣,并讓學生具備編寫一定規模簡易程序的能力,為后續軟件工程、web編程的相關課程打下基礎。

對于普通計算機專業而言,繼續學習數據庫相關技術、JDBC、Servlet、Ajax、Spring MVC、HTML5等相關課程,讓學生具有較為完整的web網站全棧開發能力,其學生重點發展方向為網站前、后臺系統整合能力。

三、大數據平臺Hadoop

Hadoop兩大核心就是HDFS(Hadoop Distributed File System)分布式文件系統和 MapReduce(并行計算框架)[5]。

HDFS系統可以通過其中核心元祖類FileSystem的不同的HDFS實現子類實例化對象實現接入。這些實現子類包含:Apache Hadoop,Aliyun OSS,Amazon S3,Azure Blob Storage,Azure Data Lake Storage,OpenStack Swift,Tencent COS這些Hadoop兼容的文件系統完成。HDFS要求具體的實現文件系統滿足(部分滿足)LINUX文件系統的POSIX標準[6]。

MapReduce是非常容易上手的一個軟件框架,它主要是利用其并行計算能力在由數千個廉價計算結點組成的高可靠計算集群之上進行TB級海量數據的運算。一個MapReduce的Job可以分為兩大部分:Map和Reduce。在數據輸入端,Map Redce分將數據集的分割成相互獨立小份,再將每一小份送至完全并行的Map任務當中。從輸出端來看,這個框架可以將這個Job中Map的輸出進行排序,而后轉化為后續的Reduce任務的輸入,最后進行輸出。通常來說,整個Job的輸入與輸出是存儲的文件系統中的文件。Map Reduce這個框架的核心即是Job內任務的編排、監視及任務失敗后的重啟。整個Hadoop框架是由JAVA實現的,因此,使用面向對象程序語言JAVA的程序在Map Reduce框架中運行有著天然親合性[7]。

四、面向Hadoop集群進行編程所面臨的問題

HDFS文件系統是一個類似于UNIX實現的文件系統。對于HDFS文件系統的文件、文件夾對象,使用PATH對象進行封裝。其中對于路徑的描述是與常用的WINDOWS中對于文件系統的描述存在著差異,如層次文件系統以“/”根目錄開始且不能重命名、不被覆蓋,無盤符概念;更加嚴格的權限檢查,也就是說一個調用者若沒有相應許可,其程序操作將會拒絕而失敗,且同時拋出一個異常對象;通常需要使用URI地址,即統一資源標志符Universal Resource Inde,在某一規則下能把一個資源獨一無二地標識出來。我們所熟知的統一資源定位符URL是其子集;有些文件系統如Azure blob存儲文件中不能使用嵌入字符“.”等。在有了HDFS聯結對象(FileSystem對象)及HDFS文件管理對象(PATH對象)之后,使用FileSystem對象的Open方法產生一個FSDataInputStream實例,這里的org.apache.hadoop.fs.FSDataInputStream是java.io.DataInputStream及java.io.InputStream的子類;或使用create、append等方法產生一個FSDataOutput-Stream實例,這里org.apache.hadoop.fs.FSDataOutputStream是java.io.DataOutputStream與java.io.OutputStream的子類。只有找到這個接口,才能將HDFS文件系統的讀寫IO代碼接入HDFS文件系統當中。這一個過程與JDBC及Socket編程方法十分類似,里面涉及大量對象序列化、反序列化、對象之間的比較、對象HashCode設定、IO處理流、節點流相關的知識。

另一方面,MapReduce的框架唯一可以進行操作的是一些Key-Value對,也就是說,從框架的角度來看,整個Job的輸入是若干Key-Value對的集合,其輸出也是若干Key-Value對的集合。不同的Job使用不同的數據類型,但整個運算框架是一致的。第一、MapReduce的框架中,JAVA中的基礎數據類型及包裝類類型不同的是:Map Reduce中用于Key-Value的數據類型類必須是被框架進行串行化處理的,具體來說就是要實現Writable接口,對于用于Key數據類型類必須實現WritableComparable接口以配合框架完成排序工作。在Hadoop中主要的數據類型包括了:BooleanWritable:布爾型數值、ByteWritable:單字節整型值、DoubleWritable:雙精度浮點數、floatWritable:單精度浮點數、IntWritable:整型值、LongWritable:長整型值、Text:使用UTF8格式存儲的文本、NullWritable:當<key,value>中的key或value為空時使用,分別對應JAVA 程序中的Boolean,Byte,Double,Float,Integer,Long,String和 null用來處理MapReduce框架中傳遞的數據。第二、在MapReduce框架中大量使用泛型接口、泛型類和泛型方法,但在基礎語法中僅僅在容器類中出現。但是在實際的編程過程中,我們需要引導學生自己去使用泛型簡化開發程序,且提高代碼質量。第三、在Rreduce方法輸入Key-Value中Value是一個包含同一類型的list,但對于Key則沒有這個要求。這個框架可以重用reduce輸入的Key與Value對象,因此,這個應用可以克隆希望可以拷貝的對象。綜上可見,MapReduce的框架當中對于抽象類、接口、包裝類對象、容器類,泛型、迭代器有了廣泛地使用。

五、結論

通常來說,JAVA程序設計相關課程中的主講內容多為:面向對象編程設計思相、類、接口、常用類、異常類、IO、容器類、多線程、網絡編程與圖形界面等內容。對于Hadoop這樣的集群管理并行計算系統,使用JAVA編程是一種可行的選擇,但在教學過程中還需要強調對象序列化、反序列化、對象之間的比較、對象HashCode設定、IO處理流、節點流相關的知識、于抽象類、接口、包裝類對象、容器類,泛型、迭代器等內容。若時間有限的情況下,可適當刪減多線程、網絡編程與圖形界面等部分的內容。

猜你喜歡
課程
《無機化學》課程教學改革
云南化工(2021年6期)2021-12-21 07:31:42
數字圖像處理課程混合式教學改革與探索
寓寫于玩:童化班本課程的成長之路
軟件設計與開發實踐課程探索與實踐
計算機教育(2020年5期)2020-07-24 08:53:38
基于OBE的軟件測試課程教學改革探索
計算機教育(2020年5期)2020-07-24 08:53:20
為什么要學習HAA課程?
早期教育與課程建設
商周刊(2017年23期)2017-11-24 03:24:01
A—Level統計課程和AP統計課程的比較
精細高分子課程教學改革
熟悉的米,奇妙的稻——課程敘事:我們的班本課程“稻”
幼兒100(2016年30期)2016-02-28 21:26:29
主站蜘蛛池模板: 久久国产拍爱| 91无码人妻精品一区| 亚洲另类国产欧美一区二区| 手机在线国产精品| 国产流白浆视频| 中文字幕一区二区人妻电影| 国产成人精品2021欧美日韩| 国产大片喷水在线在线视频| 福利在线不卡| 尤物特级无码毛片免费| 在线免费观看AV| 亚洲成人一区二区| 免费观看亚洲人成网站| 天天视频在线91频| 国产成人综合网在线观看| 色香蕉影院| 亚洲色欲色欲www在线观看| 一区二区三区精品视频在线观看| 华人在线亚洲欧美精品| 一级毛片在线免费视频| 青青青国产精品国产精品美女| 国产正在播放| 国产精品久久久久久搜索| 中文国产成人久久精品小说| 丰满人妻一区二区三区视频| 亚洲视频一区| 91人妻日韩人妻无码专区精品| 日本午夜影院| 亚洲码一区二区三区| 精品五夜婷香蕉国产线看观看| 国产亚洲美日韩AV中文字幕无码成人 | 久久国产精品无码hdav| 久久精品最新免费国产成人| 国产又爽又黄无遮挡免费观看| 999国产精品永久免费视频精品久久 | 91在线日韩在线播放| 中文字幕有乳无码| 国产在线第二页| 欧美 亚洲 日韩 国产| 91国内外精品自在线播放| 91av国产在线| 亚洲无码精品在线播放| 九月婷婷亚洲综合在线| 亚洲无码日韩一区| 国产成人免费手机在线观看视频| 欧美性色综合网| a毛片在线播放| 国产亚洲欧美在线中文bt天堂 | 一个色综合久久| 麻豆精品在线| 国产精品香蕉| 亚洲VA中文字幕| 在线毛片网站| 日韩欧美中文字幕在线精品| 国产本道久久一区二区三区| 丝袜久久剧情精品国产| 国产精品太粉嫩高中在线观看| 國產尤物AV尤物在線觀看| 日韩久久精品无码aV| 欧美影院久久| 天堂av综合网| 欧美福利在线观看| 欧美精品高清| 亚洲精品无码不卡在线播放| 毛片网站在线看| 欧美另类一区| 免费啪啪网址| 欧美日本在线观看| 国产又爽又黄无遮挡免费观看 | 亚洲成年人网| 亚洲日韩欧美在线观看| 无码AV日韩一二三区| a级毛片免费看| 久久青草热| 国产成人91精品免费网址在线| 欧美精品1区| 97色婷婷成人综合在线观看| 波多野结衣无码AV在线| 国产91久久久久久| 国产黄在线观看| 国产成年女人特黄特色毛片免| 日韩在线视频网|