亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

精彩解密大數據之精絕古城

發布時間:2020-06-13 03:09:12 來源:網絡 閱讀:464 作者:caosheng03 欄目:大數據

     Avro schema作為大數據一個項目,它可以算得上精品中的上等品,讓學習或者想要學習大數據的人為之傾倒,不斷挖掘學習,那么它究竟有著怎樣的神秘面紗呢?我們一起來揭開!

為了理解Avro,首先要理解序列化。序列化是在內存里表述數據的一種方式,它是一連串的字節,可以保存數據到磁盤或通過網絡發送出去,反序列化允許你把數據讀回到內存。

舉個實際的例子,我們如何序列化數字108125150?可以指定一些具體類型:(1)當存儲為Java int類型時是4 bytes;(2)當存儲為Java string類型時是9 bytes.

很多編程語言和庫都支持序列化,比如Java里的Serializable或Python的pickle。但是向后兼容和交叉語言支持對我們來講可能是一項挑戰,而Avro就是開發出來應對這些挑戰。

  • 什么是Apache Avro

Avro數據文件格式只是Avro項目的一部分,它是高效的數據序列化框架,是由Doug Cutting創立的Apache頂級項目,在Hadoop和它的生態系統得到廣泛的支持。最大的特點就是在不犧牲性能的前提下提供兼容性,可在Java、C、C++、C#、Python、PHP和其他語言中讀寫數據。Avro也支持RemoteProcedure Calls(RPC),可以用于構建定制網絡協議,而且Flume使用它進行內部通信。

  • AvroSchemas支持的類型

1)簡單類型:

精彩解密大數據之精絕古城

(2)復雜類型

精彩解密大數據之精絕古城

這里record類型最重要,其他類型主要用來定義record的字段。

  • 基本schema示例

這里我們先引用一段SQL CREATE TABLE語句

精彩解密大數據之精絕古城

然后我們使用Avro schema來表達同樣的語句

精彩解密大數據之精絕古城

  • 在Schema里指定默認值

Avro支持在schema里設置默認值,當沒有明確指定字段值的時候使用,和SQL相似

精彩解密大數據之精絕古城

  • AvroSchemasNull

1)當序列化數據時Avro檢查null

2)當在schema里明確指定時才可以使用Null

精彩解密大數據之精絕古城

  • 復雜類型的schema示例

示例:帶enumstring array類型的record

精彩解密大數據之精絕古城

  • 注釋schema

schema加注釋是一種避免歧義的好的做法

1)所有的類型都支持加上可選的doc屬性

精彩解密大數據之精絕古城

  • Avro容器格式

Avro定義了一種容器文件格式來存儲Avro記錄,也稱為“Avro數據文件格式”。和Hadoop SequenceFile格式相似,支持交叉語言的數據讀寫。它也支持塊記錄的壓縮,壓縮后數據可分片。另外這種格式是自描述的,每個文件包含一份schema的拷貝,用于寫數據,并且所有記錄在文件中必須使用相同的schema

  • 使用Avro工具檢查Avro數據文件

Avro數據文件是一種高效存儲數據的方式,然而,二進制格式使得debug很不方便。使用avro-tools命令來操作二進制文件,可以讀取Avro文件里的schema或數據。

精彩解密大數據之精絕古城

挖掘了一番,你有沒有挖掘到寶貝呢?如果找到了,這絕對是你的私人財產,如果沒有,也沒有關系,因為還有猛料等你來!盛大網絡大咖親自坐鎮,分享大數據干貨,一起來吧!關注微信公眾號“大數據cn”,一起來交流。


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

乳山市| 望谟县| 兰州市| 光山县| 宝丰县| 京山县| 永年县| 白银市| 蓬莱市| 额济纳旗| 宁乡县| 原平市| 中宁县| 郧西县| 闻喜县| 望奎县| 安阳市| 马龙县| 麟游县| 四子王旗| 菏泽市| 内乡县| 犍为县| 屯昌县| 伽师县| 忻州市| 湖口县| 密山市| 涞源县| 丹阳市| 嘉荫县| 九龙城区| 仁化县| 永修县| 永昌县| 临泽县| 忻城县| 神池县| 四会市| 景泰县| 上虞市|