| ==== |
| ---- QUERY |
| create table test_parquet stored as parquet as select * from tpch_parquet.lineitem; |
| ---- RUNTIME_PROFILE |
| # Exepct all cache misses for tpch_parquet.lineitem. |
| row_regex: DataCacheHitBytes: 0 |
| row_regex: DataCacheHitCount: 0 \(0\) |
| row_regex: DataCacheMissCount: 64 \(64\) |
| ==== |
| ---- QUERY |
| select count(*) from tpch_parquet.lineitem t1, test_parquet t2 where t1.l_orderkey = t2.l_orderkey; |
| ---- RESULTS |
| 30012985 |
| ---- RUNTIME_PROFILE |
| # Exepct cache hits for t1 and cache misses for t2. |
| row_regex: DataCacheHitCount: 6 \(6\) |
| row_regex: DataCacheMissBytes: 0 |
| row_regex: DataCacheMissCount: 0 \(0\) |
| row_regex: DataCachePartialHitCount: 0 \(0\) |
| row_regex: DataCacheHitBytes: 0 |
| row_regex: DataCacheHitCount: 0 \(0\) |
| row_regex: DataCacheMissCount: 3 \(3\) |
| row_regex: DataCachePartialHitCount: 0 \(0\) |
| ==== |
| ---- QUERY |
| select count(distinct l_orderkey) from test_parquet; |
| ---- RESULTS |
| 1500000 |
| ---- RUNTIME_PROFILE |
| # Expect all cache hits. |
| row_regex: DataCacheHitCount: 3 \(3\) |
| row_regex: DataCacheMissBytes: 0 |
| row_regex: DataCacheMissCount: 0 \(0\) |
| row_regex: DataCachePartialHitCount: 0 \(0\) |
| ==== |
| ---- QUERY |
| # Overwrite temp table with subset of data. |
| insert overwrite test_parquet select * from tpch_parquet.lineitem where l_shipmode = 'AIR'; |
| ==== |
| ---- QUERY |
| # Verifies that stale data from the cache is not used. |
| select count(distinct l_orderkey) from test_parquet; |
| ---- RESULTS |
| 652393 |
| ---- RUNTIME_PROFILE |
| # Expect all cache misses due to change in mtime. |
| row_regex: DataCacheHitBytes: 0 |
| row_regex: DataCacheHitCount: 0 \(0\) |
| row_regex: DataCacheMissCount: 2 \(2\) |
| row_regex: DataCachePartialHitCount: 0 \(0\) |
| ==== |
| ---- QUERY |
| # Exercise HDFS cache |
| select count(*) from tpch.nation; |
| ---- RESULTS |
| 25 |
| ==== |