原创 Spark報錯:Caused by: java.lang.IllegalArgumentException: Compression codec com.hadoop.compression.lzo

問題 在yarn集羣上提交一個spark-submit的任務,最後拋出一個異常 解決 原因: 因爲在之前的項目中,在hadoop中的core-site.xml 和mapred-site.xml文件配置了lzo格式的壓縮,這就導致上傳到hd

原创 Spark中普通集合與RDD算子的zip()拉鍊有什麼區別

集合中的zip: 如果兩個集合的元素個數不相等,那麼會將同等數量的數據進行拉鍊,多餘的數據省略不用 RDD算子的zip: 該操作可以將兩個RDD中的元素,以鍵值對的形式進行合併。其中,鍵值對中的Key爲第1個RDD中的元素,vaue爲第2個

原创 Spark中普通集合與RDD算子的sortBy()有什麼區別

分別觀察一下集合與算子的sortBy()的參數列表 普通集合的sortBy() RDD算子的sortBy() 結論:普通集合的sortBy就沒有false參數,也就是說只能默認的升序排。 如果需要對普通集合中的元素需要升序排怎麼辦?

原创 如何使用python把json文件轉換爲csv文件

@目錄瞭解json整體格式轉換格式提取key和value使用pandas寫入csv 瞭解json整體格式 這裏有一段json格式的文件,存着全球陸地和海洋的每年異常氣溫(這裏只選了一部分):global_temperature.json {

原创 java和scala的訪問權限修飾符及其異同點

Java -private 只能在當前類中被訪問 -default(默認) 當前類以及同包的其他類 -protected 當前類以及同包

原创 scala:把函數作爲值或參數進行傳遞、作爲返回值進行返回,以及什麼是閉包和柯里化

@目錄函數可以作爲值進行傳遞函數可以作爲參數進行傳遞函數可以作爲返回值進行返回閉包柯里化什麼是匿名函數 函數可以作爲值進行傳遞 語法var f = 函數名 _ 如果明確了變量的數據類型,那麼下劃線可以省略 //函數正常的聲明與調用

原创 scala函數至簡原則是什麼?

1.return可以省略,Scala會使用函數體的最後一行代碼作爲返回值 2.如果函數體只有一行代碼,可以省略花括號 3.返回值類型如果能夠推斷出來,那麼可以省略(:和返回值類型一起省略) 4.如果有return,則不能省略返回值類型,必

原创 使用hql-統計連續登陸的三天及以上的用戶

@目錄數據提供輸出字段解法一解法二建表導數據驗證數據解決方案-使用解法二結果思路 這個問題可以擴展到很多相似的問題:連續幾個月充值會員、連續天數有商品賣出、連續打車、連續逾期…… 數據提供 用戶ID、登入日期 user01,2018

原创 azkaban羣起/羣停腳本

羣起包括: 第一步啓動exec 此時這列的值爲0,下一步激活後變成1 第二步激活exec 第三步打開web頁面 腳本代碼(注意修改自己的主機名和安裝路徑) #!/bin/bash start-web(){ for i

原创 Hive讀取索引文件問題:select * 和select count(*)讀取出來的行數不一致

兩種方式,分別查詢數據有多少行: hive (gmall)> select * from ods_log; Time taken: 0.706 seconds, Fetched: 2955 row(s) hive (gmall)> sel

原创 scala/java等其他語言從CSV文件中讀取數據,使用逗號','分割可能會出現的問題

衆所周知,csv文件默認以逗號“,”分割數據,那麼在scala命令行裏查詢的數據: 可以看見,字段裏就包含了逗號“,”,那接下來切割的時候,這本應該作爲一個整體的字段會以逗號“,”爲界限進行切割爲多個字段。 現在來看看這裏的_c0字段一共

原创 hadoop3.1.3版本的secondaryNamenode的web界面不能顯示的問題?

@目錄發現問題解決問題找到根源根治問題必看 發現問題 在瀏覽器輸入secondaryNamenode的網址後不能顯示,解決: 先按F12,然後選擇console,就能看見報錯信息了: 解決問題 找到根源 那就通過find命令找到這個dfs

原创 kafka項目經驗之如何進行Kafka壓力測試、如何計算Kafka分區數、如何確定Kaftka集羣機器數量

@目錄Kafka壓測Kafka Producer(生產)壓力測試Kafka Consumer(消費)壓力測試計算Kafka分區數Kafka機器數量計算 Kafka壓測 用Kafka官方自帶的腳本,對Kafka進行壓測。Kafka壓測時,可以

原创 centos6和centos7的防火牆命令,以及它們的區別是是什麼?

@目錄一、 Centos6和Centos7 防火牆命令的區別iptables常用命令firewall常用命令 一、 Centos6和Centos7 防火牆命令的區別 Centos6自帶的防火牆工具是iptables Centos7自

原创 Linux的環境變量配置在/etc/profile或/etc/profile.d/*.sh文件中的區別是什麼?

@目錄login shellnon-login shell它們的區別 Linux的環境變量可在多個文件中配置,如/etc/profile,/etc/profile.d/*.sh,~/.bashrc等,下面說明上述幾個文件之間的關係和區別。