2014-01-14 14 views
0

是否有任何指針可讓Scalding與HDFS上的LZO Protobuf數據一起使用?Scalding + LZO + Protobuf

我想讀取存儲在二進制Protobuf中的文件,並使用Scalding在LZO中進行壓縮。 我們可以使用Elephantbird來閱讀這些文件嗎?任何指針將不勝感激!

我看過LzoTraits和LzoProtobufScheme?但我不確定我應該如何使用它來讀取數據?任何例子都會很棒!

回答

1

下面是一個例子:

case class SomeProto() extends FixedPathSource("/my/greatData/*") 
    with LzoProtobuf[MyProtoClassHere] { 
    override def column = classOf[MyProtoClassHere] 
} 

可以以類似的方式與其它類型的抽象基本來源(如TimePathedSource,或MostRecentGoodSource)混合。如果您想使用Hadoop內部級聯本地技巧(如果您不以級聯本地模式運行,則不需要此操作),您可以混合使用with LocalTapSource

+0

謝謝,請問同一個班級還會寫出Lzo壓縮的protobuf文件嗎? – thinker25

+0

另一個快速跟進問題。如何讀取非Lzo壓縮的二進制protobuf文件? – thinker25