github.com/matrixorigin/matrixone@v1.2.0/proto/statsinfo.proto (about)

     1  /*
     2   * Copyright 2021 - 2024 Matrix Origin
     3   *
     4   * Licensed under the Apache License, Version 2.0 (the "License");
     5   * you may not use this file except in compliance with the License.
     6   * You may obtain a copy of the License at
     7   *
     8   *      http://www.apache.org/licenses/LICENSE-2.0
     9   *
    10   * Unless required by applicable law or agreed to in writing, software
    11   * distributed under the License is distributed on an "AS IS" BASIS,
    12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    13   * See the License for the specific language governing permissions and
    14   * limitations under the License.
    15   */
    16  
    17  syntax = "proto3";
    18  package statsinfo;
    19  option go_package = "github.com/matrixorigin/matrixone/pkg/pb/statsinfo";
    20  
    21  import "github.com/gogo/protobuf/gogoproto/gogo.proto";
    22  
    23  message ShuffleHeap {
    24    ShuffleHeap Left = 1;
    25    ShuffleHeap Right = 2;
    26    double Key = 3;
    27    double Value = 4;
    28    int64 Height = 5;
    29    int64 Sz = 6;
    30    int64 Nulls = 7;
    31    bool Reverse = 8;
    32  }
    33  
    34  message ShuffleRange {
    35    bool IsStrType = 1;
    36    int64 Sz = 2;
    37    ShuffleHeap Tree = 3;
    38    double Min = 4;
    39    double Max = 5;
    40    repeated bytes Mins = 6;
    41    repeated bytes Maxs = 7;
    42    repeated int64 Rows = 8;
    43    repeated int64 Nulls = 9;
    44    int64 MaxLen = 10;
    45    repeated bool Flags = 11;
    46    double Overlap = 12;
    47    double Uniform = 13;
    48    repeated double Result = 14;
    49  }
    50  
    51  message StatsInfo {
    52    map<string, double> NdvMap = 1;
    53    map<string, double> MinValMap = 2;
    54    map<string, double> MaxValMap = 3;
    55    map<string, uint64> DataTypeMap = 4;
    56    map<string, uint64> NullCntMap = 5;
    57    map<string, uint64> SizeMap = 6;
    58    map<string, ShuffleRange> ShuffleRangeMap = 7;
    59    int64 BlockNumber = 8;
    60    int64 AccurateObjectNumber = 9;
    61    int64 ApproxObjectNumber = 10;
    62    double TableCnt = 11;
    63    string TableName = 12;
    64  }
    65  
    66  message StatsInfoKey {
    67    uint64 DatabaseID = 1;
    68    uint64 TableID = 2;
    69  }
    70  
    71  message StatsInfoKeys {
    72    repeated StatsInfoKey Keys = 1 [(gogoproto.nullable) = false];
    73  }