{eval=Array;=+count(Array);}

国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

問答專欄Q & A COLUMN

學(xué)大數(shù)據(jù)需要Java的基礎(chǔ)嗎?

tunnytunny 回答0 收藏1
收藏問題

10條回答

Half

Half

回答于2022-06-28 15:02

雖然不一定需要java 語言基礎(chǔ),但是選擇java 語言是一條比較好的捷徑。

首先,大數(shù)據(jù)的很多組件都是java 語言寫的,想要加深學(xué)習(xí),就必須去啃源碼,要啃源碼,那java 語言就近水樓臺(tái)先得月了。

其次,大多數(shù)做大數(shù)據(jù)的公司都是招聘java 開發(fā)人員的,這樣就業(yè)方面,就比較機(jī)會(huì)多一些。

當(dāng)然,除了java 語言,python 語言,shell 腳本語言,都是需要掌握的,能為工作帶來不少便捷。

最后,要做好大數(shù)據(jù),數(shù)學(xué)邏輯思維很重要,可以著重培養(yǎng)一下

最后附上一張招聘信息

評(píng)論0 贊同0
  •  加載中...
13651657101

13651657101

回答于2022-06-28 15:02

這個(gè)不是一定的,其他語言也可以

評(píng)論0 贊同0
  •  加載中...
Tangpj

Tangpj

回答于2022-06-28 15:02

大數(shù)據(jù)是指無法在一定時(shí)間內(nèi)用常規(guī)軟件工具對(duì)其內(nèi)容進(jìn)行抓取、管理和處理的數(shù)據(jù)集合。大數(shù)據(jù)技術(shù)是指從各種各樣類型的數(shù)據(jù)中,快速獲得有價(jià)值信息的能力。所以不必學(xué)java 。大數(shù)據(jù)完全始于數(shù)據(jù)存儲(chǔ),也也就是說始于大數(shù)據(jù)框架Hadoop。

評(píng)論0 贊同0
  •  加載中...
Coding01

Coding01

回答于2022-06-28 15:02

一、學(xué)習(xí)大數(shù)據(jù)需要的基礎(chǔ)

javaSE,EE(SSM)

90%的大數(shù)據(jù)框架都是java寫的。

如:MongoDB--最受歡迎的,跨平臺(tái)的,面向文檔的數(shù)據(jù)庫。

Hadoop--用Java編寫的開源軟件框架,用于分布式存儲(chǔ),并對(duì)非常大的數(shù)據(jù)集進(jìn)行分布式處理。

Spark --Apache Software Foundation中最活躍的項(xiàng)目,是一個(gè)開源集群計(jì)算框架。

Hbase--開放源代碼,非關(guān)系型,分布式數(shù)據(jù)庫,采用Google的BigTable建模,用Java編寫,并在HDFS上運(yùn)行。

MySQL(必須需要掌握的)

SQLon Hadoop又分:

batch SQL(Hive):一般用于復(fù)雜的 ETL 處理,數(shù)據(jù)挖掘,高級(jí)分析。

interactive SQL:交互式 SQL 查詢,通常在同一個(gè)表上反復(fù)的執(zhí)行不同的查詢

operation SQL:通常是單點(diǎn)查詢,延時(shí)要求小于 1 秒,該類系統(tǒng)主要是HBase。

Linux

Linux(一種操作系統(tǒng),程序員必須掌握的,我的博客里有我對(duì)Linux的介紹)

大數(shù)據(jù)的框架安裝在Linux操作系統(tǒng)上

二、需要學(xué)什么

第一方面:大數(shù)據(jù)離線分析

一般處理T+1數(shù)據(jù):

Hadoop:(common、HDFS、MapReduce、YARN)重點(diǎn)中的重點(diǎn)。

Hadoop的框架最核心的設(shè)計(jì)就是:HDFS 和 MapReduce,

Hadoop :主要是的環(huán)境搭建

Hadoop的思想:處理數(shù)據(jù)的思想。

Hadoop用Java編寫的開源軟件框架,用于分布式存儲(chǔ),并對(duì)非常大的數(shù)據(jù)集進(jìn)行分布式處理,

用戶可以在不了解分布式底層細(xì)節(jié)的情況下,開發(fā)分布式程序,

充分利用集群進(jìn)行高速運(yùn)算和存儲(chǔ)。

Hadoop實(shí)現(xiàn)了一個(gè)分布式文件系統(tǒng)(Hadoop Distributed File System),簡(jiǎn)稱HDFS。

HDFS為海量的數(shù)據(jù)提供了存儲(chǔ),MapReduce則為海量的數(shù)據(jù)提供了計(jì)算。

HDFS:

HDFS 的架構(gòu)是基于一組特定的節(jié)點(diǎn)構(gòu)建的,這是由它自身的特點(diǎn)決定的。

這些節(jié)點(diǎn)包括NameNode(僅一個(gè)),它在 HDFS 內(nèi)部提供元數(shù)據(jù)服務(wù);

DataNode,它為 HDFS 提供存儲(chǔ)塊。

由于僅存在一個(gè) NameNode,因此這是 HDFS 的一個(gè)缺點(diǎn)(單點(diǎn)失敗)。

存儲(chǔ)在 HDFS 中的文件被分成塊,然后將這些塊復(fù)制到多個(gè)計(jì)算機(jī)中(DataNode)。

這與傳統(tǒng)的 RAID 架構(gòu)大不相同。塊的大小(通常為 64MB)和復(fù)制的塊數(shù)量在創(chuàng)建文件時(shí)由客戶機(jī)決定 NameNode 可以控制所有文件操作。

NameNode 是一個(gè)通常在HDFS實(shí)例中的多帶帶機(jī)器上運(yùn)行的軟件,

它負(fù)責(zé)管理文件系統(tǒng)名稱空間和控制外部客戶機(jī)的訪問。

NameNode 決定是否將文件映射到 DataNode 上的復(fù)制塊上。

對(duì)于最常見的 3 個(gè)復(fù)制塊,第一個(gè)復(fù)制塊存儲(chǔ)在同一機(jī)架的不同節(jié)點(diǎn)上,最后一個(gè)復(fù)制塊存儲(chǔ)在不同機(jī)架的某個(gè)節(jié)點(diǎn)上。

DataNode:

DataNode 也是一個(gè)通常在HDFS實(shí)例中的多帶帶機(jī)器上運(yùn)行的軟件。

Hadoop 集群包含一個(gè) NameNode 和大量 DataNode。

DataNode 通常以機(jī)架的形式組織,機(jī)架通過一個(gè)交換機(jī)將所有系統(tǒng)連接起來。

Hadoop 的一個(gè)假設(shè)是:機(jī)架內(nèi)部節(jié)點(diǎn)之間的傳輸速度快于機(jī)架間節(jié)點(diǎn)的傳輸速度

MapReduce:

MapReduce是一種編程模型,用于大規(guī)模數(shù)據(jù)集(大于1TB)的并行運(yùn)算

概念"Map(映射)"和"Reduce(歸約)"

MapReduce是面向大數(shù)據(jù)并行處理的計(jì)算模型、框架和平臺(tái),它隱含了以下三層含義:

1)MapReduce是一個(gè)基于集群的高性能并行計(jì)算平臺(tái)(Cluster Infrastructure)。

2)MapReduce是一個(gè)并行計(jì)算與運(yùn)行軟件框架(Software Framework)

3)MapReduce是一個(gè)并行程序設(shè)計(jì)模型與方法(Programming Model & Methodology)。

Hive(MPP架構(gòu)):

大數(shù)據(jù)數(shù)據(jù)倉庫

通過寫SQL對(duì)數(shù)據(jù)進(jìn)行操作,類似于mysql數(shù)據(jù)庫中的sql

擴(kuò)展:

MPP架構(gòu):MPP 架構(gòu)的優(yōu)點(diǎn)是查詢速度快,通常在秒計(jì)甚至毫秒級(jí)以內(nèi)就可以返回查詢結(jié)果。

(但MPP 架構(gòu)不適合大規(guī)模部署)

HBase(博客中有 這個(gè)重要)

基于HDFS的NOSQL數(shù)據(jù)庫

面向列的存儲(chǔ)

列存儲(chǔ):

列存儲(chǔ)的思想是將元組垂直劃分為列族集合,每一個(gè)列族獨(dú)立存儲(chǔ),列族可以退化為只僅包含

一個(gè)列的平凡列族。當(dāng)查詢少量列時(shí),列存儲(chǔ)模型可以極大的減少磁盤IO 操作,提高查詢性能。

當(dāng)查詢的列跨越多個(gè)列族時(shí),需要將存儲(chǔ)在不同列族中列數(shù)據(jù)拼接成原始數(shù)據(jù),由于不同列族

存儲(chǔ) 在不同的 HDFS 節(jié)點(diǎn)上,導(dǎo)致大量的數(shù)據(jù)跨越網(wǎng)絡(luò)傳輸,從而降低查詢性能。

擴(kuò)展前沿框架:

協(xié)作框架:

sqoop(橋梁:HDFS 《==》RDBMS)

Sqoop(發(fā)音:skup)是一款開源的工具,一個(gè)用來將Hadoop和關(guān)系型數(shù)據(jù)庫中的數(shù)據(jù)相互轉(zhuǎn)移的工具,

主要用于在Hadoop(Hive)與傳統(tǒng)的數(shù)據(jù)庫(mysql、postgresql...)間進(jìn)行數(shù)據(jù)的傳遞,

可以將一個(gè)關(guān)系型數(shù)據(jù)庫(例如 :MySQL ,Oracle ,Postgres等)中的數(shù)據(jù)導(dǎo)進(jìn)到Hadoop的HDFS

中,也可以將HDFS的數(shù)據(jù)導(dǎo)進(jìn)到關(guān)系型數(shù)據(jù)庫中。

Sqoop介紹:

Sqoop項(xiàng)目開始于2009年,最早是作為Hadoop的一個(gè)第三方模塊存在,后來為了讓使用者能夠快速部署,

也為了讓開發(fā)人員能夠更快速的迭代開發(fā),Sqoop獨(dú)立成為一個(gè)Apache項(xiàng)目。

RDBMS:

RDBMS即關(guān)系數(shù)據(jù)庫管理系統(tǒng)(Relational Database Management System),

是將數(shù)據(jù)組織為相關(guān)的行和列的系統(tǒng)而管理關(guān)系數(shù)據(jù)庫的計(jì)算機(jī)軟件就是關(guān)系數(shù)據(jù)庫管理系統(tǒng),

常用的數(shù)據(jù)庫軟件有Oracle、SQL server等。

RDBMS 是SQL 的基礎(chǔ),同樣也是所有現(xiàn)代數(shù)據(jù)庫系統(tǒng)的基礎(chǔ)

RDBMS 中的數(shù)據(jù)存儲(chǔ)在被稱為表(tables)的數(shù)據(jù)庫對(duì)象中。

表是相關(guān)的數(shù)據(jù)項(xiàng)的集合,它由列和行組成。

RDBMS的特點(diǎn):

1.數(shù)據(jù)以表格的形式出現(xiàn)

2.每行為各種記錄名稱

3.每列為記錄名稱所對(duì)應(yīng)的數(shù)據(jù)域

4.許多的行和列組成一張表單

5.若干的表單組成database

flume:收集日志文件中信息

Flume是Cloudera提供的一個(gè)高可用的,高可靠的,分布式的海量日志采集、聚合和傳輸?shù)南到y(tǒng),

Flume支持在日志系統(tǒng)中定制各類數(shù)據(jù)發(fā)送方,用于收集數(shù)據(jù);同時(shí),

Flume提供對(duì)數(shù)據(jù)進(jìn)行簡(jiǎn)單處理,并寫到各種數(shù)據(jù)接受方(可定制)的能力

調(diào)度框架anzkaban,了解

crontab(Linux自帶)

crontab命令常見于Unix和類Unix的操作系統(tǒng)之中,用于設(shè)置周期性被執(zhí)行的指令。

該命令從標(biāo)準(zhǔn)輸入設(shè)備讀取指令,并將其存放于“crontab”文件中,以供之后讀取和執(zhí)行。

Kylin(中國自主知識(shí)產(chǎn)權(quán)操作系統(tǒng))

Kylin操作系統(tǒng)是國家高技術(shù)研究發(fā)展計(jì)劃(863計(jì)劃)的重大成果之一,

是以國防科技大學(xué)為主導(dǎo),與中軟、聯(lián)想等單位聯(lián)合設(shè)計(jì)和開發(fā)的具有完全自主版權(quán),

可支持多種微處理器和多種計(jì)算機(jī)體系結(jié)構(gòu),具有高性能、高可用性和高安全性,

并與Linux應(yīng)用二進(jìn)制兼容的國產(chǎn)中文服務(wù)器操作系統(tǒng)。

Impala:

Impala是Cloudera公司主導(dǎo)開發(fā)的新型查詢系統(tǒng),它提供SQL語義,

能查詢存儲(chǔ)在Hadoop的HDFS和HBase中的PB級(jí)大數(shù)據(jù)。

已有的Hive系統(tǒng)雖然也提供了SQL語義,但由于Hive底層執(zhí)行使用的是MapReduce引擎,

仍然是一個(gè)批處理過程,難以滿足查詢的交互性。重要的是它查詢的很快

ElasticSearch(ES)

ElasticSearch是一個(gè)基于Lucene的搜索服務(wù)器。

它提供了一個(gè)分布式多用戶能力的全文搜索引擎,基于RESTful web接口。

Elasticsearch是用Java開發(fā)的,并作為Apache許可條款下的開放源碼發(fā)布,是當(dāng)前流行的企業(yè)級(jí)搜索引擎。

ES概念:

cluster

代表一個(gè)集群,集群中有多個(gè)節(jié)點(diǎn),其中有一個(gè)為主節(jié)點(diǎn),這個(gè)主節(jié)點(diǎn)是可以通過選舉產(chǎn)生的,

主從節(jié)點(diǎn)是對(duì)于集群內(nèi)部來說的。

es的一個(gè)概念就是去中心化,字面上理解就是無中心節(jié)點(diǎn),這是對(duì)于集群外部來說的,

因?yàn)閺耐獠縼砜磂s集群,在邏輯上是個(gè)整體,你與任何一個(gè)節(jié)點(diǎn)的通信和與整個(gè)es集群通信是等價(jià)的。

了解:

Shards

Replicas

Recovery

River

Gateway

Discovery.zen

Transport

評(píng)論0 贊同0
  •  加載中...
cppowboy

cppowboy

回答于2022-06-28 15:02

這個(gè)目前來說還是需要有的,但是不需要太深。以下答復(fù)也許可以幫助到您。

學(xué)習(xí)大數(shù)據(jù)是需要有java,python和R語言的基礎(chǔ)。

1) Java學(xué)習(xí)到什么樣的程度才可以學(xué)習(xí)大數(shù)據(jù)呢?

java需要學(xué)會(huì)javaSE即可。javaweb,javaee對(duì)于大數(shù)據(jù)用不到。學(xué)會(huì)了javase就可以看懂hadoop框架。

2) python是最容易學(xué)習(xí)的,難易程度:python java Scala 。

python不是比java更直觀好理解么,因?yàn)闀?huì)了Python 還是要學(xué)習(xí)java的,你學(xué)會(huì)了java,再來學(xué)習(xí)python會(huì)很簡(jiǎn)單的,一周的時(shí)間就可以學(xué)會(huì)python。

3) R語言也可以學(xué)習(xí),但是不推薦,因?yàn)閖ava用的人最多,大數(shù)據(jù)的第一個(gè)框架Hadoop,底層全是Java寫的。就算學(xué)會(huì)了R還是看不懂hadoop。

java在大數(shù)據(jù)中的作用是構(gòu)成大數(shù)據(jù)的語言,大數(shù)據(jù)的第一個(gè)框架Hadoop以及其他大數(shù)據(jù)技術(shù)框架,底層語言全是Java寫的,所以推薦首選學(xué)習(xí)java

再給你們舉例說明下它們的分工和作用,java注重業(yè)務(wù),大數(shù)據(jù)注重?cái)?shù)據(jù),前端是臉(頁面顯示),java是胳膊(業(yè)務(wù)),大數(shù)據(jù)是直男大腦,人工智能,深度學(xué)習(xí)是有情商的大腦。

給你分享下大數(shù)據(jù)整體技術(shù)體系以及大數(shù)據(jù)相關(guān)熱門就業(yè)崗位

評(píng)論0 贊同0
  •  加載中...
happen

happen

回答于2022-06-28 15:02

當(dāng)然啊。

校招都需要扎實(shí)的java基礎(chǔ),還需要有參加過javaEE項(xiàng)目,有開發(fā)經(jīng)驗(yàn)的。

如果只會(huì)一點(diǎn)JavaSE,可能簡(jiǎn)歷都過不了。

這還只是校園招聘的要求,要是社招對(duì)JAVA的要求就更高了,其它企業(yè),大家可以自行去招聘網(wǎng)站查看,基本都如此。

雖然大數(shù)據(jù)開發(fā)崗位隨著大數(shù)據(jù)產(chǎn)業(yè)的發(fā)展,需求在增加,但是學(xué)習(xí)大數(shù)據(jù)開發(fā)的人也在增加。2019年,開設(shè)大數(shù)據(jù)專業(yè)的本科高校就達(dá)到了283所,可以預(yù)見,幾年之后,大數(shù)據(jù)開發(fā)崗位競(jìng)爭(zhēng)將會(huì)非常激烈,隨之,企業(yè)對(duì)大數(shù)據(jù)開發(fā)崗位的要求也會(huì)增加。


評(píng)論0 贊同0
  •  加載中...
voyagelab

voyagelab

回答于2022-06-28 15:02

首先無論如何肯定要有計(jì)算機(jī)基礎(chǔ)百,當(dāng)然實(shí)在基礎(chǔ)很薄弱也不是不行,不影響入行但是影響你的上限。

其次很重度要的是對(duì)數(shù)據(jù)庫要有一定的理解,不過如果是零基礎(chǔ)開始學(xué)的話,也問題知不大。

然后就是語言基礎(chǔ),Java對(duì)大數(shù)據(jù)開發(fā)很重要,Python對(duì)數(shù)據(jù)分析重要。有語言基礎(chǔ)肯定方便你學(xué)習(xí),道但實(shí)在沒有也沒關(guān)系。

評(píng)論0 贊同0
  •  加載中...
YacaToy

YacaToy

回答于2022-06-28 15:02

不一定,不過很多大數(shù)據(jù)框架是用java語言寫的,學(xué)了java比較好理解和使用它們

評(píng)論0 贊同0
  •  加載中...
J4ck_Chan

J4ck_Chan

回答于2022-06-28 15:02

大數(shù)據(jù)太大了,里面又要分很多方向和技術(shù)要求,不過Java是基礎(chǔ)開發(fā)語言,很多時(shí)候都是會(huì)用到的,所以必須要掌握好。

評(píng)論0 贊同0
  •  加載中...
Leo_chen

Leo_chen

回答于2022-06-28 15:02

大數(shù)據(jù)很多組件都是用java開發(fā)的,你不懂java的話,看不懂源碼,更沒辦法進(jìn)行開發(fā)了,但是如果你做的只是hbase,hive這些可以不用懂太深,會(huì)SQL就行了,如果要往更深層次學(xué)習(xí),建議還是要學(xué)習(xí)java

評(píng)論0 贊同0
  •  加載中...

最新活動(dòng)

您已邀請(qǐng)0人回答 查看邀請(qǐng)

我的邀請(qǐng)列表

  • 擅長該話題
  • 回答過該話題
  • 我關(guān)注的人
向幫助了您的網(wǎng)友說句感謝的話吧!
付費(fèi)偷看金額在0.1-10元之間
<