hdp源碼
A. Apache Zeppelin 遷移 - Jar 包沖突解決與思考
最近整個公司大數據集群遷移(cdh -> ambri hdp),隨之 Zeppelin 也需要遷移,由於各個組件版飢罩芹本有變化,且 Zeppelin 源碼是有過改動的,遷移起來很麻煩。經過一周的折騰,終於把 Zeppelin 從 cdh 環境遷移至 hdp 環境。同時,在解決問題期間,對 Java 類載入,jar 沖突問題有了更進一步的認識。
版本有所變化,當然得重新編譯 Zeppelin ,指定下 spark hadoop 大版本,重新編譯:
經過配置參數修改,遷移過去 hive 沒問悶碧題,spark 運行報錯,經過一周的折騰終於解決,主要是版爛畢本依賴沖突問題。
現象:跑 spark sql 報 NoSuchMethodError 錯誤如下:
連 hive metastore 後調用 close() 方法, FacebookService( from: libfb303.jar ) 最終調用 TClient.sendBaseOneway ( to: libthrift.jar )
查看 libthrift 源碼, 0.9.3 版本有 sendBaseOneway , 而 0.9.2 版本沒有。
結論: libfb303.jar 的 facebookservice 調用了 libthrift 0.9.3 版本的中的方法,而 JVM 載入了 0.9.2 版本, 導致 NoSuchMethodError。
查看 zeppelin 源碼, zeppelin-spark*.jar , zeppelin-spark-dependencices*.jar 都 shaded 了 libthrift 這個 jar 包。
打包信息如下:
jar 所在目錄:
這里也有一個取巧的方法,將 jar 包解壓刪除 thrift 並重新打包。通過 linux 下 jar 命令即可完成。
如果深入理解 Java 類載入機制,jar包沖突相關原因,對定位解決這類問題有很大的幫助 。
一般來說遇到: ClassNotFoundExpection , NoClassDefFoundError 和 NoSuchMethodError ,有可能是包沖突造成的。
先來解釋下這個三個問題的區別 [1]:
讀完這個 重新看待Jar包沖突問題及解決方案 [3]收獲良多,總結部分筆記,對於沖突,存在兩個場景:
這兩個場景的存在,會導致 JVM 載入到了錯誤的類,導致與預期場景不一致出現上面描述的錯誤等 ,導致出現 ClassNotFoundExpection , NoClassDefFoundError 和 NoSuchMethodError 等異常。
因為 maven 的傳遞依賴機制,maven 引入依賴類似於圖的遍歷,從子往父溯源,引入所有相關依賴。這樣為開發節省了效率,但同時可能引入不同版本的 jar 包,導致在運行時出現包沖突。存在多個依賴,maven 具體選擇引入哪個依賴,規范來源於仲裁機制,仲裁機制如下:
常見的解決依賴沖突的辦法有兩個:
下面這段配置取自 Zeppelin pom,聲明選擇的依賴的 avro 版本,同時排除了部分依賴 如 netty。
還有一種沖突是同樣的類,出現在不同的包裡面,例如 A 和 B 包都有類 C,JVM 在載入 C 的時候到底是選擇 A 還是 B。這個選擇取決於:
如果遇到 ClassNotFoundExpection , NoClassDefFoundError 和 NoSuchMethodError ,有可能是包沖突造成的。
[1] https://stackoverflow.com/questions/1457863/what-causes-and-what-are-the-differences-between-noclassdeffounderror-and-classn/1457879#1457879
[2] classnotfoundexception-vs-noclassdeffounderror
[3] 重新看待Jar包沖突問題及解決方案
B. 電視機hdmi和紅白線路輸入解碼部分有什麼不同
根據你的條件,首先不建議使用紅白黃線:紅白線只能提供2聲道的音頻輸出,黃線是視頻模擬信號,不能支持1080p高清。所以使用紅白黃線視聽效果會大打折扣。
你先確認下你的功放是否有同軸或者spdif光纖輸入?個人覺得目前還沒有太大必要入次世代功放——帶trueHD音軌的片子都是10G以上的高清片源,需要下載來看的,除非你是發燒友。如果你現在的功放支持spdif光纖口那就好辦了:
1、網路機頂盒hdmi線連接世頌電視。
2、網路機頂盒的spdif光纖口通過功放的spdif口
3、網路機頂盒上一定要記得在設置裡面把音頻設置為源碼輸出(透傳),這樣才能點亮功放解碼DTS,否則還是模擬聲道。
目前市面上的大多網路機頂盒都支持猜陸光纖口(支持同軸的較少),如芒果嗨Q,開博爾,天敏的機器。而小米盒子,天貓魔盒1、2代,華為秘盒這些是沒有光纖口的,要注意!
關於網路機頂盒的選購和使用推薦你上高清范hdpfans網站逛逛,有很多相關資料。穗返頃
C. 2017年10大流行Python庫有哪些
1、NumPy
NumPy是構建科學計算 stack 的最基礎的包。它為 Python 中的 n 維數組和矩陣的操作提供了大量有用的功能。該庫還提供了 NumPy 數組類型的數學運算向量化,可以提升性能,從而加快執行速度。
2、SciPy
SciPy 是一個工程和科學軟體庫, 包含線性代數、優化、集成和統計的模塊。SciPy 庫的主
要功能建立在 NumPy 的基礎之上,它通過其特定的子模塊提供高效的數值常式操作。SciPy 的所有子模塊中的函數都有詳細的文檔,這也是一個優勢。
3、Pandas
Pandas是一個 Python 包,旨在通過「標記(labeled)」和「關系(relational)」數據進行工作,簡單直觀。Pandas 是 data wrangling 的完美工具。它設計用於快速簡單的數據操作、聚合和可視化。
4、Seaborn
Seaborn 主要關注統計模型的可視化;這種可視化包括熱度圖(heat map),可以總結數據但也描繪總體分布。Seaborn 基於 Matplotlib,並高度依賴於它。
5、Bokeh
Bokeh是一個很好的可視化庫,其目的是互動式可視化,不過這個庫獨立於 Matplotlib,它通過現代瀏覽器以數據驅動文檔(D3.js)的風格呈現。
6、Scikits
Scikits 是 SciPy Stack 的附加軟體包,專為特定功能(如圖像處理和輔助機器學習)而設計。其中最突出的一個是 scikit-learn。該軟體包構建於 SciPy 之上,並大量使用其數學操作,是使用 Python 進行機器學習的實際上的行業標准。
7、Theano
Theano 是一個 Python 包,它定義了與 NumPy 類似的多維數組,以及數學運算和表達式。該庫是經過編譯的,使其在所有架構上能夠高效運行。這個庫最初由蒙特利爾大學機器學習組開發,主要是為了滿足機器學習的需求。
8、Keras
Keras是一個使用高層介面構建神經網路的開源庫,它是用 Python 編寫的。它簡單易懂,具有高級可擴展性。Keras 極其容易上手,而且可以進行快速的原型設計,足以用於嚴肅的建模。
9、Gensim
Gensim是一個用於 Python 的開源庫,實現了用於向量空間建模和主題建模的工具。Gensim 實現了諸如分層 Dirichlet 進程(HDP)、潛在語義分析(LSA)和潛在 Dirichlet 分配(LDA)等演算法,還有 tf-idf、隨機投影、word2vec 和 document2vec,以便於檢查一組文檔(通常稱為語料庫)中文本的重復模式。
10、Scrapy
Scrapy 是用於從網路檢索結構化數據的爬蟲程序的庫。它現在已經發展成了一個完整的框架,可以從 API 收集數據,也可以用作通用的爬蟲。該庫在介面設計上遵循著名的 Don』t Repeat Yourself 原則——提醒用戶編寫通用的可復用的代碼,因此可以用來開發和擴展大型爬蟲。
D. 技術落地性成大數據競爭賽點,鯤鵬大數據解決方案憑何領先
文 | 曾響鈴
來源 | 科技 向令說(xiangling0815)
新基建浪潮下,作為底層支撐力量的數據與計算正變得越來越重要。
最近,由中國大數據與智能計算產業聯盟主辦,以「新算力 新基建 新經濟」為主題的第二屆中國超級算力大會ChinaSC在北京召開,包括國內外院士、知名學者和產業大咖在內的600多人參加,探討了超級計算、新基建、雲計算、大數據、人工智慧、區塊鏈等前沿技術進展。
這個獎項的頒出,官方給出的標準是,「能夠把當前的各種技術有機的整合在一起,以滿足不同應用場景下的各種綜合的軟硬體及系統方案,集科學性、先進性、穩定性、經濟性等眾多實際指標於一身,是技術轉變為實際應用的關鍵環節。」
顯然,這個權威獎項最關心的,是大數據解決方案在推動技術向實際應用轉變的能力,而這也正是當下市場環境對大數據的核心需求。筆者嘗試拆解鯤鵬大數據解決方案從宏觀到操作層面的布局,希望能給予相關從業者這方面的行業借鑒。
技術競賽不停, 但大數據需求轉向應用落地
數據的價值越來越明顯,更好地釋放數據價值的技術在不斷演化,但是,隨著更多政企組織開始著手利用大數據能力幫助現實業務提升,其需求也開始更多傾向於技術能否更好地實現應用落地,大數據解決方案正是為此而生。
以鯤鵬為案例,在推動技術落地的過程中,其大數據解決方案表現出符合時代需要的三大特徵,讓它在新趨勢下占據領先優勢,受到客戶廣泛歡迎並獲得ChinaSC權威認可。
1、超高性能仍然是應用落地的最有力支撐
大數據解決方案要推動技術實現各種場景的落地,其前提和支撐,是底層軟硬體性能本身要足夠強悍,否則,再完善和深度的解決方案,沒有性能支撐也只能是空中樓閣。
而也只有性能足夠強悍,在應用落地階段才能夠盡可能去滿足客戶各類數據價值需求。
得益於底層軟硬體能力的深度開發,鯤鵬大數據解決方案就擁有超高性能,為應用做好了充分的准備以及支撐。
例如,硬體方面,採用自主研發高性能鯤鵬920處理器,軟體方面,則擁有在大數據場景下獲得倍級性能提升的獨創IO智能預取和Spark機器學習&圖增強演算法。
以鯤鵬與浙江移動的合作為例,2019年,浙江移動相繼完成了IT雲鯤鵬伺服器測試,營業廳前台系統、CRM、計費、大數據、CDN等系統的驗證及上線商用。這其中,浙江移動的CRM&BOSS系統在鯤鵬大數據方案支撐下,整體得到了較大提升,在規模承載網路運營支撐業務的情況下,該系統現在已經穩定運行一年。
目前,浙江移動圍繞網路雲,IT雲和移動雲,已經打造了全球首個運營商領域ICT全場景樣板點。
2、全棧方案才能推動技術全面落地
解決方案本身並不是一種具體的技術,其價值在於各種技術的有效融匯,作為統一的輸出方式面向政企客戶。而在政企客戶需求日益加深的情況下,盡可能滿足多種場景、多種技術訴求的解決方案,就必須建立一套盡可能完善的全棧體系,將各種技術有機地、系統地、全面地整合在一起。
這正是華為鯤鵬大數據解決方案的體系構成,其基於鯤鵬處理器,構建了端到端打通硬體、操作系統、中間件、大數據軟體的全棧體系,並對應進行了全棧性能優化,推動各類技術匯聚成高性能解決方案:
可以看到,這套全棧體系,一方面通過有機整合,能夠較為容易地同時滿足科學性、先進性、穩定性、經濟性等需求(例如,加速特性和大數據組件能夠幫助方案更有效率同時成本更低);另一方面,作為全面、完整、一體化的信息化解決方案,也更容易去適應政府、金融、電信、互聯網、大企業等不同行業應用需求。
從技術到應用落地,「全棧」成為重要的中間轉換環節,不但「無損」,而且「增益」。
3、符合政企個性化需求讓技術落地更具現實價值
在最終面向單個客戶落地時,大數據解決方案還需要真正貼合這個客戶的實際需要,這是從技術到應用落地的「臨門一腳」,畢竟,不論性能如何強悍,全棧體系如何完善靈活,落實到客戶頭上,最終還是需要符合業務實際,產生現實價值。
既要有能力,更需要契合,鯤鵬大數據解決方案就是這么做的。
2019年,江蘇省基於鯤鵬架構打造了全國首個省區市縣三級政務大數據,未來將有越來越多的政務系統可以由自主可靠的鯤鵬計算平台來承載;
在廣西,區內首個鯤鵬產業生態雲項目——「壯美廣西·玉林政務雲(鯤鵬雲)」已於不久前上線,這是該市全面推廣應用廣西數字政務一體化平台的體現,而其推出的廣西首個市級公共數據開放管理辦法,就與鯤鵬的大數據解決方案緊密相關;
目光轉到浙江,在鯤鵬生態落子浙江的過程中,浙江推動形成「用鯤鵬」的共識,城市被當成鯤鵬生態的「試驗場」,杭州市政務雲已經選用鯤鵬作為算力底座,基於鯤鵬技術架構的解決方案和應用在政府服務場景中得到廣泛應用。
總得看來,僅有高高在上的技術而無法產生實際價值的大數據玩法已經行不通,鯤鵬大數據解決方案跨越技術與應用的鴻溝,已經在眾多行業、場景和企業中實現落地。
電信行業三巨頭中,中國移動已實現鯤鵬大數據解決方案規模商用,中國電信則基於鯤鵬打造了天翼雲,中國聯通則基於鯤鵬構建了天宮IT系統;政務方面,北京、廣東、江蘇、浙江、廣西等政務雲都出現鯤鵬身影,當下其已經成為首選技術路線;在金融行業,鯤鵬正在幫助銀行系統加速完成國產化。
可以說,鯤鵬大數據解決方案有力推動了中國數字經濟發展,尤其是信息技術應用創新的落地。
領先優勢下, 鯤鵬三個角度出發為大數據技術落地「鋪路」
1、走得更穩——回應數字時代重要的安全關切
因此,鯤鵬大數據解決方案在安全方面一直加大投入,最典型的,是在底層硬體而非軟體層面進行安全保障——鯤鵬920處理器內置硬體加速器、業界首創支持國密演算法加速,這種CPU內置加速模塊的做法,被稱作「內生安全」,配合國密演算法在技術上更為安全。
而與通常的大數據解決方案為了保證安全不得不讓渡較多的性能隨時監控系統運行不同,華為鯤鵬大數據解決方案內生安全的做法,做到了加密對業務性能的損耗低於5%——既解決安全痛點問題,也解決「為了安全需要」本身導致的痛點問題。
2、走得更順——用兼容性保護既有數據軟硬體投資
前文提到政務雲大數據解決方案中,與現有的伺服器的混合部署,這其中有一個十分重要的兼容性做法——由於鯤鵬大數據解決方案建立在鯤鵬處理器基礎之上,而很多政企組織原有的軟硬體投資都基於X86架構,所以鯤鵬要讓技術的應用落地走得更順,還需要在技術上完成對X86在部署層面的兼容,這樣還能保護政企客戶現有的數字化投資。
可以看到,當下的鯤鵬方案已經支持大數據組件TaiShan伺服器與其他架構伺服器混合部署。
以江蘇電信為例,去年7月,其宣布成功上線全球首個基於鯤鵬處理器的運營商大數據平台。作為核心的業務系統,該大數據平台基於鯤鵬處理器的華為TaiShan伺服器和開源Hadoop軟體構建,承載著江蘇電信所有生產系統的運行數據、存儲及分析:
在項目進行過程中,雙方攜手完成基於鯤鵬處理器的開源Hadoop源代碼編譯,讓關鍵的大數據業務組件在華為TaiShan伺服器上的成功部署和運行,在原有集群上實現了傳統架構伺服器和TaiShan伺服器融合部署。
這種兼容的做法,有效結合了江蘇電信大數據業務特點和未來演進趨勢,且充分發揮鯤鵬處理器的性能,提高了數據存儲、計算等資源的使用效率。
3、走得更寬——生態開放才能讓大數據擁有內生動力
鯤鵬生態的主要推動者華為一直強調的理念是「硬體開放、軟體開源、使能合作夥伴」,在大數據解決方案中,這種理念同樣得到了應用。
例如,在鯤鵬全棧方案中,頂層大數據平台就支持華為自研的FusionInsight大數據平台以及開源Apache、開源HDP/CDH、星環大數據平台,可以有效對接各類場景需要。今年8月,星環 科技 就發布了基於鯤鵬的大數據平台軟硬體聯合解決方案,由星環 科技 的TDH大數據平台提供軟體層面優異的功能,由鯤鵬晶元提供硬體層面強大的性能,擁有極致性能、平滑遷移、豐富的場景支持以及快速部署多重優勢,為行業創造價值。
此外,鯤鵬主導的數據虛擬化引擎openLooKeng開源,就支持跨數據格式、跨數據源、跨數據中心的海量分析,最終幫助方案的性能大幅度提升,典型的如北明數據資產管理平台V4.0就基於openLooKeng技術,解決了數據資產管理數據冗雜、標准不一、難以管理等痛點問題,為企業守護和挖掘數據的價值。
開放的生態,將幫助更多合作夥伴發展伺服器和PC等計算產品,幫助構建高質量的基礎軟體生態,也讓更多生態夥伴獲得端、邊、雲的全場景開發能力,最終促進鯤鵬計算生態的繁榮,也加速大數據行業應用創新。
打好基礎、做好標桿, 鯤鵬進入「強者恆強」周期
彌合技術與應用落地的鴻溝後,鯤鵬大數據解決方案擁有越來越多的政企實踐,它們中大多數都是行業典型客戶,本身既是大數據發展過程中的優質案例。
擁有這些客戶資源的鯤鵬,實際上已經進入了強者恆強的發展周期,這不僅僅是因為它獲得了諸多標桿合作案例、領先於行業,更重要的還在於,技術到應用實踐的通路打通後,實踐也將不斷反饋技術,不斷幫助鯤鵬錘煉自身的技術能力,從而形成有效的正反饋循環。
一旦這種循環形成,大數據解決方案就會進入「飛輪」式發展進程,越轉越快、越難以停下,也很難以被後進者追趕,逐步成為政企客戶最有競爭優勢的選擇。
更進一步來看,大數據服務從來都不是孤立存在的,在計算需求多樣化的時代,鯤鵬計算產業生態的主要推動者華為在物聯網、5G、AI等方面的能力和生態布局,無疑將幫助鯤鵬大數據解決方案有更多橫向技術連接和融合的想像空間,滿足更多政企客戶潛在的創新業務需求。
總而言之,在以鯤鵬大數據解決方案為代表的優質案例引領下,數據與計算的時代正在加速到來,最終,「新算力」將推動「新基建」全面落地,帶來「新經濟」動能,更多政企客戶將享受到技術帶來的價值紅利。
*本文圖片均來源於網路
【完】
曾響鈴
1鈦媒體、品途、人人都是產品經理等多家創投、 科技 網站年度十大作者;
2虎嘯獎評委;
3作家:【移動互聯網+ 新常態下的商業機會】等暢銷書作者;
4《中國經營報》《商界》《商界評論》《銷售與市場》等近十家報刊、雜志特約評論員;
5鈦媒體、36kr、虎嗅、界面、澎湃新聞等近80家專欄作者;
6「腦藝人」(腦力手藝人)概念提出者,現演變為「自媒體」,成為一個行業;
7騰訊全媒派榮譽導師、多家 科技 智能公司傳播顧問。
E. Hive UDF 第一篇:怎麼實現自己的 hive 自定義函數
看到這篇文章的同學相信都是 大數據相關技術愛好者 、從業人員或者業界大佬。這篇文章篇基礎,屬於上手性指引,如有不對的地方歡迎指正
文章的源代碼github地址在文末
為什麼要有 UDF
縱然 內置函數(Build-in Function)再豐富,也會遇到 無法完全滿足我們特定場景的需要,這時我們需要 UDF;或者我們通過內置函數可以實現,但是業務代碼冗長,又或者業務代碼不僅冗長而且可能要多處維護,那麼這時候我們需要 UDF。
強如 Oracle 這一霸佔傳統金融行業大部分資料庫份額的廠商,一樣提供 用戶自定義函數的介面,Hive 這一開源生態的神級項目,自然也不會少。
總之:UDF 就是為靈活性而存在,為可擴展性而存在
選擇合適的 UDF
按照不同使用場景需要, Hive 已經為我們將 UDF 歸為3類,分別對應3種不同使用場景
1. 轉換函數 UDF :適用於行級別轉換操作,數據行中的一列後者幾列,生成一列或者幾列,效源世果可參照 內置函數的 upper() 講一列的字元串所有字元 統一轉換為 大寫字元;
2. 聚合函數 UDAF: 適用與多行進行聚合成一行,或者多行分組聚合成相對小的多行,效果參照 內置函數 sum() ,一般配合 group by 使用較多
3. 表生成函數 UDTF: 適用一行生成多行場景 ,效果參照 內置函數 explode()
實現你的 UDF 邏輯
1. 轉換函數UDF 實現 :
以前在 Oracle 上使用 decode 做 枚舉型值轉譯用得方便,到 hive 上了 沒有這么方便的函數,只能用 case when 或者 if 這種相對繁瑣,代碼行數偏大
為實現這個UDF,我們需要繼承Hive相應類,實現3個函數
1. 第一個函數,初始化:這里做2個事情
1> 檢查傳入欄位的合法性,我兆正這里函數使用時傳入參數必須是大於等於4個的 偶數,參照 oracle decode
2> 我這里返回的是 字元串類型(如果你在這里有疑問:為什麼返回字元串要這樣做, 我在第二篇中努力講清楚)
如果有些需要共享連接之類資源的場景,也可以在這里做,這個方法是 每生成一個 mapper對象 執行一次,也可以理解: MR 中 每個 parttion 才執行一次 ,我在實際工作中有一個 需要遠端解密的場景就用到了
2. 第二個函數,是真正轉換函數
3. 第三個函數,hive收集元數據信息的函數
2. 聚合函數 UDAF實現:
抱歉,我並沒有合適的公開的 案例代碼直接貼出來,後面有合適的
3. 表生成函數 UDTF 實現:
表生成函數有很多使用場景,我這直接上我的實例:我們在 實際數據倉庫研發中,對緩慢變化維度 經常使用 拉鏈雹猜肢表 來實現;而在 hive 中是不支持 不等值條件寫在 on 條件里 ,只能通過 where 子句實現,但 where 子句明顯是過程中產生 笛卡爾積 的做法,
為規避這個情況 寫了一個通用的 日粒度拉鏈表 爆炸展開的 函數, 我們在 與事實表連接時 將很方便地實現 等值連接,也方便 HIve 或者 Spark 的 執行計劃 優化,避免全量的shulffe,等值join 會方便 按連接鍵分區
實現UDTF 需要繼承 相應類,實現 3個函數
1. 第一個函數,初始化:所做事情參照 UDF
2. 第二個函數,循環生成記錄並 通過 forward 函數輸出
3. 第三個函數,關閉函數,按需使用
我這里什麼都沒做
注冊UDF 函數
臨時 UDF,當前會話
永久且全局 UDF
這樣做之後,會在 hive 的元資料庫中查到函數的信息,若遇到 跨 session 無法使用,可選擇 在相應的 session 中做函數重載
全局 UDF 不僅可在 Hive 中使用,亦可在 spark sql 中使用 ,hive 的 hiveserver2 的其他 jdbc/odbc 連接中使用
[這篇文章完整代碼在我的 github 上開源項目中,其中包含 類decode/日期轉 星座 /IPv4與整數互轉 以及適用 拉鏈表爆炸展開的表生成函數](https://github.com/Jiafan/hudf)
參考
為了進一步學習 和使用 UDF相關的功能,可以參考 官方文檔 和 Clouder 文檔
[Hive官方文檔-UDF](https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF#LanguageManualUDF-Built-inOperators)
[Cloudera的關於Hive UDF 的文檔](https://docs.cloudera.com/HDPDocuments/HDP3/HDP-3.0.0/using-hiveql/content/hive_create_udf.html)
下一篇
Hive UDF 第二篇:實現UDF為什麼要實現這幾個方法
[源代碼倉庫](https://github.com/Jiafan/hudf.git)
F. 誰知道appletv2 已越獄,安裝電視直播源方法還有直播源碼是北美中文電視台。
推薦安裝一個沙發管家應用市場,應用的好的有泰捷視頻,VST全聚合,HDP直播等等。
G. 電視盒子裝什麼軟體才能看電視直播
安裝對應的直播軟體就可以看直播了。
一、電視貓視頻
TV貓視頻是國內首個針對智能電視和互聯網機頂盒的電視視頻服務品牌。目前,已為700多萬戶用戶提供穩定的電視視頻點播、直播、回放等服務。
獨特的設計風格,沒有平庸,沒有平庸,提升您的電視體驗。
二、小鷹直播
小鷹直播包括中央電視台,衛星電視,地方、海外等數個高清電視頻道,提供高清、流暢,穩定的直播服務,支持自定義源碼,P2P源碼,為電視遙控器做了完美的適配,支持頻道分類,快速頻道切換,數字頻道選擇等功能。
三、VST全聚合
VSTaggregation在網路機頂盒領域擁有六年的電視直播/點播經驗,不僅在技術上處於領先地位,還支持多種形式的P2P直播平台,已經形成了軟解碼和硬解碼技術的領先結合。
VST操作人員24小時有人值班操作和維護,最大限度地解決了網路電視流暢性問題。此外還有600多個電視直播頻道和10個非廣告頻道,更值得一提的是,網路還增加了直播功能,讓精彩永存。
四、電視家
LiveTV是一個在Android大屏幕上觀看直播電視的應用程序。擁有中央電視台、地方電視台,地方電視台最流暢、最高清的直播頻道,可以通過自定義程序源自己添加程序。
五、小微直播300+電視直播頻道,7天國內衛星電視回訪,電視在線收藏等,最重要的是清晰度很好,所有的直播軟體清晰度都很好。
H. [Hive] - Beeline 偶發 Unable to read HiveServer2 uri from ZooKeeper 問題
用戶有大量的並發 beeline hive sql 任務,偶發 Unable to read HiveServer2 uri from ZooKeeper 報錯。
hive 版本:如汪hdp 1.2.1
修改 beeline connect url 增加 retries。
beeline url 修改前:
beeline url 修改後 :
通過閱讀源碼,hiveserver2 連接步驟大致如下:
1)獲取連接 url,如果是 serviceDiscoveryMode=zooKeeper ,動態的方式獲取真正的連接信息與配置
2)通過 ZK 獲取 hiveserver2 所有節點,對應的路徑為/hiveserver2/。路衫橡讓徑格式為: "/" + zooKeeperNamespace :這個 zooKeeperNamespace 就是連接串裡面配置的 hiveserver2。
3)從 list 中隨機取一個 Znode,獲取 zk 中 Znode 的值
4)解析 url ,獲取真正的 hiveserver2 的地址與埠等信或局息
5)創建連接,支持重試
問題在於:
一個小建議:遇到此類問題,直接看源碼是最好的, 不要去網上瞎找。
Hive 3.x 的版本請注意這個 issue: https://issues.apache.org/jira/browse/HIVE-19825 ,也可能會導致隨機的失敗