druid配置詳解 零基礎(chǔ)的人如何學(xué)習(xí)Java?
零基礎(chǔ)的人如何學(xué)習(xí)Java?我已經(jīng)使用java很長時(shí)間了,并且已經(jīng)出版了關(guān)于java的書籍,所以讓我來談?wù)剬W(xué)習(xí)java的過程。java學(xué)習(xí)的重點(diǎn)是web開發(fā),學(xué)習(xí)的難點(diǎn)是對(duì)java面向?qū)ο蟾拍畹睦斫狻?/p>
零基礎(chǔ)的人如何學(xué)習(xí)Java?
我已經(jīng)使用java很長時(shí)間了,并且已經(jīng)出版了關(guān)于java的書籍,所以讓我來談?wù)剬W(xué)習(xí)java的過程。
java學(xué)習(xí)的重點(diǎn)是web開發(fā),學(xué)習(xí)的難點(diǎn)是對(duì)java面向?qū)ο蟾拍畹睦斫?。學(xué)習(xí)java需要一個(gè)系統(tǒng)的過程,在學(xué)習(xí)java的不同階段需要做不同的準(zhǔn)備。下面是一個(gè)描述(以web開發(fā)為例)。
在第一階段,我為自己設(shè)定了方向。例如,我想在將來做web開發(fā)或Android開發(fā)。當(dāng)我有了方向,我自然知道我的重點(diǎn)是什么。畢竟,編程語言是一種工具,所以在學(xué)習(xí)工具之前我需要知道該怎么做。
第二階段是開始了解Java的語法細(xì)節(jié)。此階段的準(zhǔn)備工作是構(gòu)建開發(fā)環(huán)境并安裝JDK。在學(xué)習(xí)初期,建議使用記事本編程,鍛煉程序員的手寫代碼能力,并在編程初期養(yǎng)成一些好習(xí)慣。
第三階段是開始學(xué)習(xí)web開發(fā)。在這個(gè)階段,我們需要準(zhǔn)備數(shù)據(jù)庫知識(shí)和一些前端知識(shí)。數(shù)據(jù)庫產(chǎn)品可以選擇mysql,mysql也是一種應(yīng)用廣泛的數(shù)據(jù)庫產(chǎn)品。
第四階段開始學(xué)習(xí)框架開發(fā)??蚣荛_發(fā)可以節(jié)省大量的開發(fā)時(shí)間。目前,springmvc得到了廣泛的應(yīng)用。
第五階段開始實(shí)習(xí)。實(shí)習(xí)對(duì)程序員的成長有很大的幫助。通過實(shí)際項(xiàng)目的磨練,我們將更全面地掌握編程語言。
kylin和druid區(qū)別?
Druid是由Java開發(fā)的OLAP計(jì)算和存儲(chǔ)引擎。它以全索引、寬表的方式存儲(chǔ)和處理數(shù)據(jù)。它本身包含存儲(chǔ)和計(jì)算能力。Kylin是一個(gè)離線預(yù)處理框架,它依靠spark或horn進(jìn)行計(jì)算,然后使用HBase保存預(yù)處理結(jié)果。然后顯示預(yù)處理結(jié)果。
德魯伊和麒麟都依賴于HDFS。Druid將HDFS作為遠(yuǎn)程脫機(jī)存儲(chǔ),但在實(shí)際計(jì)算中沒有使用它。由于麒麟采用Hadoop技術(shù)棧,中間的計(jì)算過程和最終的計(jì)算結(jié)果將使用HDFS。
Druid還具有靈活的預(yù)聚合能力,可以使用hyperloglog算法進(jìn)行多維UV聚合。是利用麒麟強(qiáng)大的位圖計(jì)算,做精確的UV計(jì)算的能力。
總之:Druid是一個(gè)具有預(yù)聚合功能的多維mloap存儲(chǔ)計(jì)算引擎,它僅依賴HDFS進(jìn)行遠(yuǎn)程存儲(chǔ)。Kylin是一個(gè)離線預(yù)聚合計(jì)算引擎,它依賴Hadoop進(jìn)行計(jì)算,HBase保存結(jié)果