Search Results for: Spark

[Spark] Row: getList() 的隱藏錯誤

在開發 Java Spark 的時候,常常會需要轉換 Dataset 或是 DataFrame,對於比較大的表格格式變換 (Schema Change),通常會使用到 JavaRDD 與 Row,開發時用到比較複雜的資料結構像是 List 或是 Map 等等的時候,有時候發生錯誤並不知道要如何除錯?本篇想要展示類別 Row: getList() 的隱藏錯誤在使用的時候發生無法理解的 NullPointerException 現象並且其解決的方法!

詳細內容

[GPU] Native Rapids UDF – Create Custom UDF

在上一篇我們成功實作了 HiveUDF,為了要進一步利用 GPU 加速,我們需要去實作 evaluateColumnar 這一個函數,參考 Spark Rapids 的 Github 與 ColumnView 裡面的範例,針對我們想做到的 UDF 我們沒有發現適合的函數去實作針對一個 Array[String] 的過濾程式,所以我們需要自己去實作 Tutorial 裡面所謂的 Native Code Examples,Tutorial 裡面針對 HiveUDF 只有提供一個範例是 StringWordCount,本篇我們紀錄藉由這個範例去實作一個支援 GPU 的 HiveUDF。

詳細內容

[Hive] Index part #0 for `ROLES` already set

檸檬爸在前面幾篇介紹了有關 Hive Metastore, Hive on Spark 和 Spark Thrift Server 等等的觀念,本篇想要紀錄一個花了不少時間的除錯過程,錯誤發生的環境是在 Spark Standalone 的叢集上啟動的 Spark Thrift Server 嘗試去連接在 MySQL 上的 Hive Metastore,成功使用一段時間之後會時不時地遇到這個 Bug,後來的解決方法是重新創建 MySQL 的使用者。

詳細內容

[BigData] Apache Superset 安裝簡介

本篇想要記錄在實作安裝 Apache Superset 並且配合後端 HIVE 的資料庫進行資料呈現,一開始以為是要在 superset_config.py 內部設定SQLALCHEMY_DATABASE_URI 到指定的 Hive Server,後來了解到那是 Superset 內部 Database, Dataset 與 Charts 設定的儲存位置,本篇參考 Apache Superset 的網站實作安裝 Superset,希望對讀者有所幫助。

詳細內容

[Hive] Metastore in Azure Databricks

在開發 Spark 與 Deltalake 的應用的時候,需要建立很多的 Table 與 Database 等資源,這些 Table 的資源究竟是怎麼管理的?就是 Hive Metastore 的角色,我們在很自然使用 Spark SQL 的時候,是否真正了解背後發生了什麼事情?本篇我們紀錄如何在 Databricks 上面使用客製化的 Hive Metastore。

詳細內容

[Cloud] Mount NFS on Kubernetes (K8S)

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

詳細內容