liquid-cache-client 0.1.10

10x lower latency for cloud-native DataFusion
Documentation
---
source: src/client/src/tests/mod.rs
expression: displayable.tree_render().to_string()
---
┌───────────────────────────┐
│  SortPreservingMergeExec  │
│    --------------------   │
│ supplier_cnt DESC, p_brand│
│   ASC NULLS LAST, p_type  │
│   ASC NULLS LAST, p_size  │
│       ASC NULLS LAST      │
└─────────────┬─────────────┘
┌─────────────┴─────────────┐
│          SortExec         │
│    --------------------   │
│    supplier_cnt@3 DESC,   │
│        p_brand@0 ASC      │
│     NULLS LAST, p_type    │
│     @1 ASC NULLS LAST,    │
│     p_size@2 ASC NULLS    │
│            LAST           │
└─────────────┬─────────────┘
┌─────────────┴─────────────┐
│       ProjectionExec      │
│    --------------------   │
│      p_brand: p_brand     │
│       p_size: p_size      │
│       p_type: p_type      │
│                           │
│       supplier_cnt:       │
│       count(alias1)       │
└─────────────┬─────────────┘
┌─────────────┴─────────────┐
│       AggregateExec       │
│    --------------------   │
│    aggr: count(alias1)    │
│                           │
│         group_by:         │
│  p_brand, p_type, p_size  │
│                           │
│           mode:           │
│      FinalPartitioned     │
└─────────────┬─────────────┘
┌─────────────┴─────────────┐
│    CoalesceBatchesExec    │
│    --------------------   │
│     target_batch_size:    │
│           16384           │
└─────────────┬─────────────┘
┌─────────────┴─────────────┐
│      RepartitionExec      │
│    --------------------   │
│ partition_count(in->out): │
│           8 -> 8          │
│                           │
│    partitioning_scheme:   │
│ Hash([p_brand@0, p_type@1,│
│        p_size@2], 8)      │
└─────────────┬─────────────┘
┌─────────────┴─────────────┐
│       AggregateExec       │
│    --------------------   │
│    aggr: count(alias1)    │
│                           │
│         group_by:         │
│  p_brand, p_type, p_size  │
│                           │
│       mode: Partial       │
└─────────────┬─────────────┘
┌─────────────┴─────────────┐
│       AggregateExec       │
│    --------------------   │
│         group_by:         │
│  p_brand, p_type, p_size, │
│           alias1          │
│                           │
│           mode:           │
│      FinalPartitioned     │
└─────────────┬─────────────┘
┌─────────────┴─────────────┐
│    CoalesceBatchesExec    │
│    --------------------   │
│     target_batch_size:    │
│           16384           │
└─────────────┬─────────────┘
┌─────────────┴─────────────┐
│      RepartitionExec      │
│    --------------------   │
│ partition_count(in->out): │
│           8 -> 8          │
│                           │
│    partitioning_scheme:   │
│ Hash([p_brand@0, p_type@1,│
│   p_size@2, alias1@3], 8) │
└─────────────┬─────────────┘
┌─────────────┴─────────────┐
│       AggregateExec       │
│    --------------------   │
│         group_by:         │
│  p_brand, p_type, p_size, │
│    ps_suppkey as alias1   │
│                           │
│       mode: Partial       │
└─────────────┬─────────────┘
┌─────────────┴─────────────┐
│    CoalesceBatchesExec    │
│    --------------------   │
│     target_batch_size:    │
│           16384           │
└─────────────┬─────────────┘
┌─────────────┴─────────────┐
│        HashJoinExec       │
│    --------------------   │
│    join_type: RightAnti   │
│                           ├──────────────┐
│            on:            │              │
│  (s_suppkey = ps_suppkey) │              │
└─────────────┬─────────────┘              │
┌─────────────┴─────────────┐┌─────────────┴─────────────┐
│   LiquidCacheClientExec   ││      RepartitionExec      │
│    --------------------   ││    --------------------   │
│          server:          ││ partition_count(in->out): │
│  http://localhost:50051,  ││           1 -> 8          │
│      object_stores=[]     ││                           │
│                           ││    partitioning_scheme:   │
│                           ││     RoundRobinBatch(8)    │
└─────────────┬─────────────┘└─────────────┬─────────────┘
┌─────────────┴─────────────┐┌─────────────┴─────────────┐
│       DataSourceExec      ││       ProjectionExec      │
│    --------------------   ││    --------------------   │
│          files: 1         ││      p_brand: p_brand     │
│      format: parquet      ││       p_size: p_size      │
│                           ││       p_type: p_type      │
│         predicate:        ││                           │
│  s_comment LIKE %Customer ││        ps_suppkey:        │
│        %Complaints%       ││         ps_suppkey        │
└───────────────────────────┘└─────────────┬─────────────┘
                             ┌─────────────┴─────────────┐
                             │    CoalesceBatchesExec    │
                             │    --------------------   │
                             │     target_batch_size:    │
                             │           16384           │
                             └─────────────┬─────────────┘
                             ┌─────────────┴─────────────┐
                             │        HashJoinExec       │
                             │    --------------------   │
                             │            on:            ├──────────────┐
                             │  (p_partkey = ps_partkey) │              │
                             └─────────────┬─────────────┘              │
                             ┌─────────────┴─────────────┐┌─────────────┴─────────────┐
                             │   LiquidCacheClientExec   ││   LiquidCacheClientExec   │
                             │    --------------------   ││    --------------------   │
                             │          server:          ││          server:          │
                             │  http://localhost:50051,  ││  http://localhost:50051,  │
                             │      object_stores=[]     ││      object_stores=[]     │
                             └─────────────┬─────────────┘└─────────────┬─────────────┘
                             ┌─────────────┴─────────────┐┌─────────────┴─────────────┐
                             │       DataSourceExec      ││       DataSourceExec      │
                             │    --------------------   ││    --------------------   │
                             │          files: 1         ││          files: 1         │
                             │      format: parquet      ││      format: parquet      │
                             │                           ││      predicate: true      │
                             │         predicate:        ││                           │
                             │  p_brand != Brand#45 AND  ││                           │
                             │       p_type NOT LIKE     ││                           │
                             │      MEDIUM POLISHED%     ││                           │
                             │   AND p_size IN (49, 14,  ││                           │
                             │    23, 45, 19, 3, 36, 9)  ││                           │
                             └───────────────────────────┘└───────────────────────────┘