Avro 轉 JSON
在本機把 Apache Avro 檔案(.avro)轉換為可讀的 JSON,內嵌的 schema 一併讀取,無需上傳。
正在你的裝置上本機處理 ...
0%
你的檔案永遠不會離開你的裝置
我的檔案會被上傳嗎?
不會。一切都在你的瀏覽器中執行,你的檔案永遠不會離開你的裝置。這一點如何查證
在本機把 Apache Avro 檔案(.avro)轉換為可讀的 JSON,內嵌的 schema 一併讀取,無需上傳。
正在你的裝置上本機處理 ...
0%
你的檔案永遠不會離開你的裝置
不會。一切都在你的瀏覽器中執行,你的檔案永遠不會離開你的裝置。這一點如何查證
Apache Avro 是源自大數據領域(Kafka、Hadoop、資料管道)的一種精簡二進位資料格式。一個 .avro 物件容器檔案(OCF)把記錄和它們的 schema(以 JSON 表示)一起打包進檔案標頭,因此檔案完全自我描述。二進位形式節省空間,但在文字編輯器裡無法閱讀。本工具讀取該容器及其內嵌 schema,並把每筆記錄都轉成清晰、可讀的 JSON。
一切都完全在你的瀏覽器裡本機執行(純 JavaScript,無需上傳,離線也能用,不依賴任何第三方程式庫)。工具讀取 OCF 標頭,解析內嵌的 Avro schema,並據此解碼每筆記錄 - 包括記錄、陣列、map、union、列舉和原始型別。支援 null 和 deflate 兩種區塊壓縮編碼;較少見的 snappy 編碼會被誠實地拒絕。bytes 和 fixed 欄位會轉為 base64,超出 JavaScript 安全整數範圍的 64 位元整數則以字串輸出,從而不遺失任何精度。
當某條資料管道、某個 Kafka 主題匯出或某項分析作業產生了一個 .avro 檔案,而你想檢視它、把它餵給一個支援 JSON 的工具,或者只是想讀懂它時,就會用到這個工具。JSON 是通用且人類可讀的。注意:這是單向檢視(Avro 轉 JSON),不會反向序列化回 Avro,而邏輯型別(date、timestamp、decimal)會以其底層基礎值的形式出現。
| 輸入格式 | AVRO |
|---|---|
| 輸出格式 | JSON |
| 批次處理 | 支援 |
| 處理方式 | 在瀏覽器中本機處理 (JavaScript) |
| 檔案上傳 | 無 |
限制: 支援編碼為 null 或 deflate 的 Avro 物件容器檔案;snappy 編碼會以清晰的錯誤訊息被拒絕。bytes/fixed 顯示為 base64,較大的 64 位元整數顯示為字串(保證精度),union 顯示為對應分支的值,邏輯型別顯示為其基礎值。轉換是單向的(不能從 JSON 反轉回 Avro)。schema 從檔案標頭讀取;不帶 OCF 容器的裸單筆 Avro 記錄不受支援。
一種源自大數據領域(Kafka、Hadoop)的精簡、自我描述二進位資料格式。schema 隨檔案標頭一起攜帶。
不會。轉換完全在瀏覽器中本機完成 - 離線也可以。
支援 null 和 deflate 兩種區塊壓縮編碼。較少見的 snappy 編碼會以清晰的提示被拒絕,而不會被錯誤解碼。
超出 JavaScript 安全範圍的 64 位元整數會輸出為字串;bytes 和 fixed 欄位輸出為 base64。
不能,本工具是單向的(Avro 轉 JSON)- 用於檢視和重複使用資料。