java和大數(shù)據(jù)的區(qū)別 想自學(xué)大數(shù)據(jù),不知道從哪里學(xué)起,有什么書(shū)籍和學(xué)習(xí)路線推薦么?
想自學(xué)大數(shù)據(jù),不知道從哪里學(xué)起,有什么書(shū)籍和學(xué)習(xí)路線推薦么?謝邀!筆者剛簽約大數(shù)據(jù)挖掘工程師崗位,也是在研究生階段才轉(zhuǎn)為大數(shù)據(jù)方向。大數(shù)據(jù)目前正火熱,很多同學(xué)想要轉(zhuǎn)入,但學(xué)習(xí)路線對(duì)于自學(xué)的人來(lái)講因人而
想自學(xué)大數(shù)據(jù),不知道從哪里學(xué)起,有什么書(shū)籍和學(xué)習(xí)路線推薦么?
謝邀!筆者剛簽約大數(shù)據(jù)挖掘工程師崗位,也是在研究生階段才轉(zhuǎn)為大數(shù)據(jù)方向。大數(shù)據(jù)目前正火熱,很多同學(xué)想要轉(zhuǎn)入,但學(xué)習(xí)路線對(duì)于自學(xué)的人來(lái)講因人而異。
拿自身舉例,筆者之前是Python數(shù)據(jù)分析出生,編程能力一般,因此在這個(gè)基礎(chǔ)上先學(xué)習(xí)linux基本操作命令,安裝ubuntu雙系統(tǒng)并進(jìn)一步安裝Hadoop和Spark組件,在此基礎(chǔ)上利用Pyspark操作Spark大數(shù)據(jù)框架進(jìn)行學(xué)習(xí)??梢酝扑]如下書(shū)籍:
《Pyspark實(shí)戰(zhàn)指南》
而要完全進(jìn)入大數(shù)據(jù)領(lǐng)域還不夠,因?yàn)榇髷?shù)據(jù)框架比較側(cè)重開(kāi)發(fā),所以需要有scala語(yǔ)言功底(scala語(yǔ)言是Spark的原生語(yǔ)言),而scala語(yǔ)言跟JAVA關(guān)聯(lián)性很強(qiáng)且完全兼容,所以如果有一定JAVA基礎(chǔ)的話完全可以從scala入手,推薦的書(shū)籍如下:
《Spark編程基礎(chǔ)(scala版)》
視頻教程強(qiáng)烈推薦林子雨老師在MOOC慕課上的國(guó)家精品免費(fèi)課程,由淺入深,非常容易上手。
Java跟大數(shù)據(jù)哪個(gè)容易學(xué)?
大數(shù)據(jù)是我的主要研究方向之一,同時(shí)也出版過(guò)Java編程書(shū)籍,所以我來(lái)回答一下這個(gè)問(wèn)題。
首先,Java是一門(mén)編程語(yǔ)言,目前在Web開(kāi)發(fā)、大數(shù)據(jù)、Android開(kāi)發(fā)等領(lǐng)域都有廣泛的應(yīng)用,Java語(yǔ)言的特點(diǎn)是性能穩(wěn)定且擴(kuò)展性強(qiáng),不少大型互聯(lián)網(wǎng)平臺(tái)往往更愿意采用Java開(kāi)發(fā)方案,因?yàn)槟軌蛟谝欢ǔ潭壬辖档烷_(kāi)發(fā)風(fēng)險(xiǎn)。
大數(shù)據(jù)則代表了一個(gè)技術(shù)體系,是一系列技術(shù)的組合,大數(shù)據(jù)技術(shù)涉及到數(shù)據(jù)的采集、整理、存儲(chǔ)、安全、分析、呈現(xiàn)和應(yīng)用,因此大數(shù)據(jù)涉及到的技術(shù)內(nèi)容非常多,相關(guān)崗位也比較豐富。當(dāng)前正處在大數(shù)據(jù)時(shí)代,所以學(xué)習(xí)大數(shù)據(jù)技術(shù)是個(gè)不錯(cuò)的選擇。對(duì)于初學(xué)者來(lái)說(shuō),如果計(jì)算機(jī)基礎(chǔ)知識(shí)比較薄弱,那么從Java編程開(kāi)始學(xué)起是比較現(xiàn)實(shí)的選擇,在掌握J(rèn)ava編程之后可以繼續(xù)向大數(shù)據(jù)方向發(fā)展。因?yàn)镴ava語(yǔ)言也是從事大數(shù)據(jù)開(kāi)發(fā)的重要工具之一,在大數(shù)據(jù)平臺(tái)開(kāi)發(fā)和大數(shù)據(jù)應(yīng)用開(kāi)發(fā)領(lǐng)域都有廣泛的應(yīng)用。另外,Java語(yǔ)言經(jīng)過(guò)了多年的發(fā)展,整個(gè)IT行業(yè)內(nèi)有大量的開(kāi)發(fā)崗位,所以從就業(yè)的角度出發(fā),學(xué)習(xí)Java語(yǔ)言也是一個(gè)不錯(cuò)的選擇。
學(xué)習(xí)Java可以規(guī)劃三個(gè)學(xué)習(xí)階段,分別是基礎(chǔ)語(yǔ)法階段、Web開(kāi)發(fā)階段和分布式開(kāi)發(fā)階段,其中基礎(chǔ)語(yǔ)法階段是學(xué)習(xí)的難點(diǎn)。Java語(yǔ)言是純粹的面向?qū)ο缶幊陶Z(yǔ)言,所以在學(xué)習(xí)的初期需要接觸大量的抽象概念,當(dāng)掌握這些抽象概念之后,隨后的學(xué)習(xí)會(huì)相對(duì)容易一些。
學(xué)習(xí)Java要注重三點(diǎn),其一是多做實(shí)驗(yàn)和總結(jié),逐漸建立編程思想;其二是多做技術(shù)交流,交流的過(guò)程也是學(xué)習(xí)的過(guò)程;其三是緊跟技術(shù)發(fā)展趨勢(shì),當(dāng)前選擇大數(shù)據(jù)方向就是不錯(cuò)的選擇。
我從事互聯(lián)網(wǎng)行業(yè)多年,目前也在帶計(jì)算機(jī)專業(yè)的研究生,主要的研究方向集中在大數(shù)據(jù)和人工智能領(lǐng)域,我會(huì)陸續(xù)寫(xiě)一些關(guān)于互聯(lián)網(wǎng)技術(shù)方面的文章,感興趣的朋友可以關(guān)注我,相信一定會(huì)有所收獲。
如果有互聯(lián)網(wǎng)方面的問(wèn)題,或者考研方面的問(wèn)題,都可以咨詢我,謝謝!