aboutsummaryrefslogtreecommitdiffstats
path: root/yt/cpp/mapreduce/interface
diff options
context:
space:
mode:
authororlovorlov <orlovorlov@yandex-team.com>2024-07-31 23:34:11 +0300
committerorlovorlov <orlovorlov@yandex-team.com>2024-07-31 23:43:21 +0300
commitdf1d068c88515d34d4c2055643790c619e545352 (patch)
tree4d95d752efd2ced4b8b624c8e28b3fc1b641283f /yt/cpp/mapreduce/interface
parentf3da1e8b8d13a3a52b3eab6f28ed798fa83b4215 (diff)
downloadydb-df1d068c88515d34d4c2055643790c619e545352.tar.gz
YT-22157 Interface part of HLL in columnar statistics
Выделил в отдельный PR, чтобы над кодом в YT и в YQL можно было работать независимо. 4fb122ecc4a54b38b09d854d93ae23fd3f76677e
Diffstat (limited to 'yt/cpp/mapreduce/interface')
-rw-r--r--yt/cpp/mapreduce/interface/common.h3
-rw-r--r--yt/cpp/mapreduce/interface/serialize.cpp1
2 files changed, 4 insertions, 0 deletions
diff --git a/yt/cpp/mapreduce/interface/common.h b/yt/cpp/mapreduce/interface/common.h
index 49e01bad55..10988225dd 100644
--- a/yt/cpp/mapreduce/interface/common.h
+++ b/yt/cpp/mapreduce/interface/common.h
@@ -1193,6 +1193,9 @@ struct TTableColumnarStatistics
/// Total data weight for all chunks for each of requested columns.
THashMap<TString, i64> ColumnDataWeight;
+ /// Estimated number of unique elements for each column.
+ THashMap<TString, ui64> ColumnEstimatedUniqueCounts;
+
/// Total weight of all old chunks that don't keep columnar statistics.
i64 LegacyChunksDataWeight = 0;
diff --git a/yt/cpp/mapreduce/interface/serialize.cpp b/yt/cpp/mapreduce/interface/serialize.cpp
index 9be114b45e..b195bf04d6 100644
--- a/yt/cpp/mapreduce/interface/serialize.cpp
+++ b/yt/cpp/mapreduce/interface/serialize.cpp
@@ -509,6 +509,7 @@ void Deserialize(TTableColumnarStatistics& statistics, const TNode& node)
{
const auto& nodeMap = node.AsMap();
DESERIALIZE_ITEM("column_data_weights", statistics.ColumnDataWeight);
+ DESERIALIZE_ITEM("column_estimated_unique_counts", statistics.ColumnEstimatedUniqueCounts);
DESERIALIZE_ITEM("legacy_chunks_data_weight", statistics.LegacyChunksDataWeight);
DESERIALIZE_ITEM("timestamp_total_weight", statistics.TimestampTotalWeight);
}