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  │
│    --------------------   │
│   revenue DESClimit: 20   │
└─────────────┬─────────────┘
┌─────────────┴─────────────┐
│       SortExec(TopK)      │
│    --------------------   │
│         limit: 20         │
│                           │
│       revenue@2 DESC      │
└─────────────┬─────────────┘
┌─────────────┴─────────────┐
│       ProjectionExec      │
│    --------------------   │
│    c_acctbal: c_acctbal   │
│    c_address: c_address   │
│    c_comment: c_comment   │
│    c_custkey: c_custkey   │
│       c_name: c_name      │
│      c_phone: c_phone     │
│       n_name: n_name      │
│                           │
│          revenue:         │
│        sum(lineitem       │
│        .l_extendedp       │
│ rice * Int64(1) - lineitem│
│        .l_discount)       │
└─────────────┬─────────────┘
┌─────────────┴─────────────┐
│       AggregateExec       │
│    --------------------   │
│           aggr:           │
│        sum(lineitem       │
│        .l_extendedp       │
│ rice * Int64(1) - lineitem│
│        .l_discount)       │
│                           │
│         group_by:         │
│     c_custkey, c_name,    │
│         c_acctbal,        │
│      c_phone, n_name,     │
│    c_address, c_comment   │
│                           │
│           mode:           │
│      FinalPartitioned     │
└─────────────┬─────────────┘
┌─────────────┴─────────────┐
│    CoalesceBatchesExec    │
│    --------------------   │
│     target_batch_size:    │
│           16384           │
└─────────────┬─────────────┘
┌─────────────┴─────────────┐
│      RepartitionExec      │
│    --------------------   │
│ partition_count(in->out): │
│           8 -> 8          │
│                           │
│    partitioning_scheme:   │
│ Hash([c_custkey@0, c_name │
│  @1, c_acctbal@2, c_phone │
│ @3, n_name@4, c_address@5 │
│     , c_comment@6], 8)    │
└─────────────┬─────────────┘
┌─────────────┴─────────────┐
│       AggregateExec       │
│    --------------------   │
│           aggr:           │
│        sum(lineitem       │
│        .l_extendedp       │
│ rice * Int64(1) - lineitem│
│        .l_discount)       │
│                           │
│         group_by:         │
│     c_custkey, c_name,    │
│         c_acctbal,        │
│      c_phone, n_name,     │
│    c_address, c_comment   │
│                           │
│       mode: Partial       │
└─────────────┬─────────────┘
┌─────────────┴─────────────┐
│       ProjectionExec      │
│    --------------------   │
│    c_acctbal: c_acctbal   │
│    c_address: c_address   │
│    c_comment: c_comment   │
│    c_custkey: c_custkey   │
│       c_name: c_name      │
│      c_phone: c_phone     │
│                           │
│        l_discount:        │
│         l_discount        │
│                           │
│      l_extendedprice:     │
│      l_extendedprice      │
│                           │
│       n_name: n_name      │
└─────────────┬─────────────┘
┌─────────────┴─────────────┐
│    CoalesceBatchesExec    │
│    --------------------   │
│     target_batch_size:    │
│           16384           │
└─────────────┬─────────────┘
┌─────────────┴─────────────┐
│        HashJoinExec       │
│    --------------------   │
│            on:            ├──────────────┐
│(n_nationkey = c_nationkey)│              │
└─────────────┬─────────────┘              │
┌─────────────┴─────────────┐┌─────────────┴─────────────┐
│   LiquidCacheClientExec   ││    CoalesceBatchesExec    │
│    --------------------   ││    --------------------   │
│          server:          ││     target_batch_size:    │
│  http://localhost:50051,  ││           16384           │
│      object_stores=[]     ││                           │
└─────────────┬─────────────┘└─────────────┬─────────────┘
┌─────────────┴─────────────┐┌─────────────┴─────────────┐
│       DataSourceExec      ││        HashJoinExec       │
│    --------------------   ││    --------------------   │
│          files: 1         ││            on:            ├───────────────────────────────────────────┐
│      format: parquet      ││ (o_orderkey = l_orderkey) │                                           │
└───────────────────────────┘└─────────────┬─────────────┘                                           │
                             ┌─────────────┴─────────────┐                             ┌─────────────┴─────────────┐
                             │       ProjectionExec      │                             │   LiquidCacheClientExec   │
                             │    --------------------   │                             │    --------------------   │
                             │    c_acctbal: c_acctbal   │                             │          server:          │
                             │    c_address: c_address   │                             │  http://localhost:50051,  │
                             │    c_comment: c_comment   │                             │      object_stores=[]     │
                             │    c_custkey: c_custkey   │                             │                           │
                             │       c_name: c_name      │                             │                           │
                             │                           │                             │                           │
                             │        c_nationkey:       │                             │                           │
                             │        c_nationkey        │                             │                           │
                             │                           │                             │                           │
                             │      c_phone: c_phone     │                             │                           │
                             │                           │                             │                           │
                             │        o_orderkey:        │                             │                           │
                             │         o_orderkey        │                             │                           │
                             └─────────────┬─────────────┘                             └─────────────┬─────────────┘
                             ┌─────────────┴─────────────┐                             ┌─────────────┴─────────────┐
                             │    CoalesceBatchesExec    │                             │      RepartitionExec      │
                             │    --------------------   │                             │    --------------------   │
                             │     target_batch_size:    │                             │ partition_count(in->out): │
                             │           16384           │                             │           1 -> 8          │
                             │                           │                             │                           │
                             │                           │                             │    partitioning_scheme:   │
                             │                           │                             │     RoundRobinBatch(8)    │
                             └─────────────┬─────────────┘                             └─────────────┬─────────────┘
                             ┌─────────────┴─────────────┐                             ┌─────────────┴─────────────┐
                             │        HashJoinExec       │                             │       DataSourceExec      │
                             │    --------------------   │                             │    --------------------   │
                             │            on:            │                             │          files: 1         │
                             │  (o_custkey = c_custkey)  ├──────────────┐              │      format: parquet      │
                             │                           │              │              │                           │
                             │                           │              │              │         predicate:        │
                             │                           │              │              │ l_returnflag = R AND true │
                             └─────────────┬─────────────┘              │              └───────────────────────────┘
                             ┌─────────────┴─────────────┐┌─────────────┴─────────────┐
                             │   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:        ││         predicate:        │
                             │ o_orderdate >= 1993-10-01 ││       true AND true       │
                             │   AND o_orderdate < 1994  ││                           │
                             │           -01-01          ││                           │
                             └───────────────────────────┘└───────────────────────────┘