[ 
https://issues.apache.org/jira/browse/TAJO-269?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14260199#comment-14260199
 ] 

ASF GitHub Bot commented on TAJO-269:
-------------------------------------

Github user hyunsik commented on the pull request:

    https://github.com/apache/tajo/pull/322#issuecomment-68272663
  
    I carried out some simple benchmark in terms of serialized data size and 
(de)serialization speed. Protobuf-based serialization outperforms both 
serialized size and serialization speed. They also have similar deserialization 
speed.
    
    Test query:
    ```
    create table store1 as select p.deptName, sumtest(score) from dept as p, 
score group by p.deptName.
    ```
    
    ## Size
     * JSON serialized size: 9,597 bytes
     * Protobuf serialized size: 2,131 bytes
    
    ## Speed
    I used 10,000 iteration to measure times of serialization and 
deserialization.
    
    *Json*
    * Serialization: 5,265 msec
    * Deserialization; 10,269 msec
    
    *Protobuf*
    * Serialization: 1,779 msec
    * Deserialization: 10244 msec


> Protocol buffer De/Serialization for LogicalNode
> ------------------------------------------------
>
>                 Key: TAJO-269
>                 URL: https://issues.apache.org/jira/browse/TAJO-269
>             Project: Tajo
>          Issue Type: Improvement
>          Components: query master, worker
>            Reporter: Jihoon Son
>            Assignee: Hyunsik Choi
>             Fix For: 0.10
>
>         Attachments: TAJO-269.patch, TAJO-269_2.patch
>
>
> In the current implementation, the logical plan is serialized into a JSON 
> object and sent to each worker.
> However, the transmission of JSON object incurs the high overhead due to its 
> large size.
> ProtocolBuffer is a good alternative because its overhead is quite small and 
> already used in other modules of Tajo.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to