Category: IT Technology

apache-spark

[Spark] 常見錯誤 NoSuchMethodError/ClassNotFound

檸檬爸在開發 Spark, Java, Scala 程式的時候很常遇到 NoSuchMethodError/ClassNotFound 這兩個錯誤,通常出現這兩個錯誤訊息的時候,主要原因是因為 Java Package 的 Dependency Conflict,在開發 Spark 的應用的時候究竟要怎麽去處理會比較好?本篇想要紀錄幾個常用的解法,包含Java 指令, JD-GUI 與 Maven Dependency:Tree 的介紹。

詳細內容

[Cloud] Mount NFS on Kubernetes (K8S)

前幾篇記錄了有關 K8S 與 Spark 的應用與一些 K8S 的常用指令,最近需要研究如何把 NFS 掛載上 K8S 裡面的 Pod,最主要的目的是要模擬出一個封閉的運算環境,在一個封閉的伺服器群集裡面,最好的分享檔案的方式就是利用像是 NAS 或是 NFS 等等的服務,本篇記錄一些在 Azure 環境裡面創造出 NFS 服務給 Kubernetes 使用遇到的一些挑戰與經驗。

詳細內容

[Django] SynchronousOnlyOperation 解決方法

在使用 Django Rest Framework 開發的時候出現 SynchronousOnlyOperation 的錯誤,本篇展示一個範例紀錄筆者使用 sync_to_async 的解決方法,一開始看 sync_to_async 說明的時候並不好理解要怎麼使用,參考範例可以比較容易了解,關於 django 的一些基本介紹可以參考 [Django] 用 Python 寫網頁?

詳細內容

[K8S] On-Demand Spark Cluster on AKS

最近在研究如何在 K8S 上面跑一個 On-Demand 的 Spark Cluster 服務,基本上有兩條路可以走,一條是利用 k8s 的 Deployment 來自建 Spark Cluster,另外一條路則是利用 Kubernetes 既有與 Spark 對接的介面 (這邊是利用 spark-submit) 來實作,概念上就是直接執行一個類似下方的指令,所以想要擁有一個 On-Demand Spark Cluster on AKS 這兩種方法個有什麼優劣?

詳細內容

[開發] 建立自己的 Nexus Repository

🍋 爸在法國擔任資料工程師的時候,頻繁地使用過 Nexus 這個資源庫倉儲系統,那時候使用 Nexus 主要的原因是因為在一間大公司裡面,常常各個部門之間的專案是互相依賴的,此時為了建置 CICD 的管理機制,他們會導入 Nexus 這樣的系統來分享自己編譯好的 Jar 檔(如果是 Java, Scala 的開發環境),所有使用過 Maven 編譯的開發者應該會 nexus 也不陌生,很多著名的專案都是利用 Nexus 這樣的系統在分享他們的開源程式,例如 Apache Spark 等等,那時候🍋 爸主要是使用為主,本篇要介紹如何部署屬於自己的 Nexus Repository ? 

詳細內容