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

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

Github user hyunsik commented on a diff in the pull request:

    https://github.com/apache/tajo/pull/846#discussion_r45292402
  
    --- Diff: 
tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/FileTablespace.java
 ---
    @@ -477,12 +503,17 @@ public long getMinSplitSize() {
         return diskIds;
       }
     
    +  public List<Fragment> getSplits(String tableName, TableMeta meta, Schema 
schema, Path... inputs)
    +    throws IOException {
    +    return getSplits(tableName, meta, schema, null, inputs);
    +  }
    +
       /**
        * Generate the list of files and make them into FileSplits.
        *
        * @throws IOException
        */
    -  public List<Fragment> getSplits(String tableName, TableMeta meta, Schema 
schema, Path... inputs)
    +  public List<Fragment> getSplits(String tableName, TableMeta meta, Schema 
schema, String[] partitions, Path... inputs)
    --- End diff --
    
    I'm going to give a suggestion. We need to keep each method for one purpose 
if possible. That approach would keep logic simpler.


> Implement PartitionedFileFragment
> ---------------------------------
>
>                 Key: TAJO-1952
>                 URL: https://issues.apache.org/jira/browse/TAJO-1952
>             Project: Tajo
>          Issue Type: Improvement
>          Components: Planner/Optimizer, Storage
>            Reporter: Jaehwa Jung
>            Assignee: Jaehwa Jung
>             Fix For: 0.12.0, 0.11.1
>
>         Attachments: TAJO-1952.patch
>
>
> Currently, PartitionedTableScanNode contains the list of partitions and it 
> seems to me that the list has some problems as following:
> 1. Duplicate Informs: Task contains Fragment which specify target directory 
> or target file for scanning. A path of partition lists already would write to 
> Fragment. 
> 2. Network Resource: When scanning lost of partition, it will occupy network 
> resource, for example, several hundred kilobytes or more. It looks like an 
> unnecessary resource because Fragment already has the path of partitions.
> I want to improve above problems by implementing new Fragment called 
> PartitionedFileFragment. Currently, I'm planning the implementation as 
> following:
> * PartitionedFileFragment will borrow FileFragment and it contains the 
> partition path and the partition key values.  
> * Remove the path array of partitions from PartitionedTableScanNode. 
> * Implement a method for getting filtered partition directories in 
> FileTableSpace.
> * Implement a method for making PartitionedFileFragment array.
> * Before making splits, call above method and use it for making splits.



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

Reply via email to