簡體   English   中英

列值總是被截斷

[英]column values are always truncated

我目前正在做一個小項目,我從 kafka 主題中獲取 stream 機器數據(JSON 格式)以供進一步分析。

列值中的 JSON 應拆分為多個列及其相應的值。 現在我總是遇到無法在列值中看到所有數據的問題,視圖似乎總是被截斷。

讀取 stream:

val df = spark
  .read
  .format("kafka")
  .option("kafka.bootstrap.servers", "20.86.42.36:9092")
  .option("subscribe", "machine1")
  .load()

display(df)

結果: Dataframe 和 base64 編碼消息

我的第一個問題是我收到了二進制數據,我通過使用以下代碼將其轉換為字符串來解決這個問題:

val df1 = df.selectExpr("CAST(key AS STRING)", "CAST(value AS STRING)")
  .as[(String, String)]

結果:在此處輸入圖像描述

現在我仍然遇到看不到完整列值的問題,這讓我很難將 JSON 數據轉換為單列。

我使用display(df1)來打印 dataframe。

有人知道我做錯了什么嗎?

嘗試df.show(False)打印而不截斷。

我懷疑顯示function是相似的。

此外,您還沒有 base64 解碼任何內容。 轉換為字符串沒有返回 JSON,僅從主題中反序列化 UTF8 字節(數據塊可能通過顯示 function 顯示為 Base64,但如果簡單地轉換返回的 JSON,這並不是 Kafka 中的實際內容)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM