hive-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Prasanth Jayachandran (JIRA)" <>
Subject [jira] [Updated] (HIVE-9188) BloomFilter in ORC row group index
Date Wed, 28 Jan 2015 23:50:35 GMT


Prasanth Jayachandran updated HIVE-9188:
    Attachment: HIVE-9188.5.patch

[~owen.omalley] Updated patch creates separate streams for bloom filter. It only has row group
level bloom filter are dropped. The disk IO is merged while reading row index.

[~gopalv] Addressed all your review comments. Additionally FileDump will aggregate the bloom
filters to stripe level and will print the stats. You might want to use
hive --orcfiledump --rowindex=<column_index_csv_list> <file_path>

> BloomFilter in ORC row group index
> ----------------------------------
>                 Key: HIVE-9188
>                 URL:
>             Project: Hive
>          Issue Type: New Feature
>          Components: File Formats
>    Affects Versions: 0.15.0
>            Reporter: Prasanth Jayachandran
>            Assignee: Prasanth Jayachandran
>              Labels: orcfile
>         Attachments: HIVE-9188.1.patch, HIVE-9188.2.patch, HIVE-9188.3.patch, HIVE-9188.4.patch,
> BloomFilters are well known probabilistic data structure for set membership checking.
We can use bloom filters in ORC index for better row group pruning. Currently, ORC row group
index uses min/max statistics to eliminate row groups (stripes as well) that do not satisfy
predicate condition specified in the query. But in some cases, the efficiency of min/max based
elimination is not optimal (unsorted columns with wide range of entries). Bloom filters can
be an effective and efficient alternative for row group/split elimination for point queries
or queries with IN clause.

This message was sent by Atlassian JIRA

View raw message