This is an automated email from the ASF dual-hosted git repository.

yiguolei pushed a commit to branch branch-2.1
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/branch-2.1 by this push:
     new 972c37de956 [opt](scanner profile) Rename some filed name to keep 
consistent with audit log. #41993 (#42137)
972c37de956 is described below

commit 972c37de9561acbe75522578b67d0d8b53699dcb
Author: zhiqiang <seuhezhiqi...@163.com>
AuthorDate: Fri Oct 25 01:05:13 2024 +0800

    [opt](scanner profile) Rename some filed name to keep consistent with audit 
log. #41993 (#42137)
    
    cherry pick from #41993
---
 be/src/pipeline/exec/olap_scan_operator.cpp |  2 ++
 be/src/pipeline/exec/scan_operator.cpp      |  7 +++++++
 be/src/pipeline/exec/scan_operator.h        |  3 +++
 be/src/vec/exec/scan/new_olap_scanner.cpp   | 25 +++++++++++++++----------
 be/src/vec/exec/scan/new_olap_scanner.h     |  4 ++--
 be/src/vec/exec/scan/vscan_node.cpp         |  3 +++
 be/src/vec/exec/scan/vscan_node.h           |  3 +++
 7 files changed, 35 insertions(+), 12 deletions(-)

diff --git a/be/src/pipeline/exec/olap_scan_operator.cpp 
b/be/src/pipeline/exec/olap_scan_operator.cpp
index 1c7d34058b6..b32f9e0457e 100644
--- a/be/src/pipeline/exec/olap_scan_operator.cpp
+++ b/be/src/pipeline/exec/olap_scan_operator.cpp
@@ -53,6 +53,8 @@ Status OlapScanLocalState::_init_profile() {
     _read_compressed_counter = ADD_COUNTER(_segment_profile, 
"CompressedBytesRead", TUnit::BYTES);
     _read_uncompressed_counter =
             ADD_COUNTER(_segment_profile, "UncompressedBytesRead", 
TUnit::BYTES);
+    _scan_rows = ADD_COUNTER(_runtime_profile, "ScanRows", TUnit::UNIT);
+    _scan_bytes = ADD_COUNTER(_runtime_profile, "ScanBytes", TUnit::BYTES);
     _block_load_timer = ADD_TIMER(_segment_profile, "BlockLoadTime");
     _block_load_counter = ADD_COUNTER(_segment_profile, "BlocksLoad", 
TUnit::UNIT);
     _block_fetch_timer = ADD_TIMER(_scanner_profile, "BlockFetchTime");
diff --git a/be/src/pipeline/exec/scan_operator.cpp 
b/be/src/pipeline/exec/scan_operator.cpp
index 2c3e85b972b..7e91b501ab6 100644
--- a/be/src/pipeline/exec/scan_operator.cpp
+++ b/be/src/pipeline/exec/scan_operator.cpp
@@ -1119,6 +1119,13 @@ Status ScanLocalState<Derived>::_init_profile() {
 
     _peak_running_scanner =
             _scanner_profile->AddHighWaterMarkCounter("PeakRunningScanner", 
TUnit::UNIT);
+
+    // Rows read from storage.
+    // Include the rows read from doris page cache.
+    _scan_rows = ADD_COUNTER(_runtime_profile, "ScanRows", TUnit::UNIT);
+    // Size of data that read from storage.
+    // Does not include rows that are cached by doris page cache.
+    _scan_bytes = ADD_COUNTER(_runtime_profile, "ScanBytes", TUnit::BYTES);
     return Status::OK();
 }
 
diff --git a/be/src/pipeline/exec/scan_operator.h 
b/be/src/pipeline/exec/scan_operator.h
index 126ed529227..2ff5db88ac6 100644
--- a/be/src/pipeline/exec/scan_operator.h
+++ b/be/src/pipeline/exec/scan_operator.h
@@ -130,6 +130,9 @@ protected:
     RuntimeProfile::Counter* _num_scanners = nullptr;
 
     RuntimeProfile::Counter* _wait_for_rf_timer = nullptr;
+
+    RuntimeProfile::Counter* _scan_rows = nullptr;
+    RuntimeProfile::Counter* _scan_bytes = nullptr;
 };
 
 template <typename LocalStateType>
diff --git a/be/src/vec/exec/scan/new_olap_scanner.cpp 
b/be/src/vec/exec/scan/new_olap_scanner.cpp
index 7e2baf2ae76..aaf6fbdf3b4 100644
--- a/be/src/vec/exec/scan/new_olap_scanner.cpp
+++ b/be/src/vec/exec/scan/new_olap_scanner.cpp
@@ -536,17 +536,21 @@ void NewOlapScanner::_update_realtime_counters() {
     NewOlapScanNode* olap_parent = static_cast<NewOlapScanNode*>(_parent);
     pipeline::OlapScanLocalState* local_state =
             static_cast<pipeline::OlapScanLocalState*>(_local_state);
-    auto& stats = _tablet_reader->stats();
+    const OlapReaderStatistics& stats = _tablet_reader->stats();
     COUNTER_UPDATE(olap_parent ? olap_parent->_read_compressed_counter
                                : local_state->_read_compressed_counter,
                    stats.compressed_bytes_read);
-    _compressed_bytes_read += stats.compressed_bytes_read;
+    COUNTER_UPDATE(olap_parent ? olap_parent->_scan_bytes : 
local_state->_scan_bytes,
+                   stats.compressed_bytes_read);
+    _scan_bytes += stats.compressed_bytes_read;
     _tablet_reader->mutable_stats()->compressed_bytes_read = 0;
 
     COUNTER_UPDATE(olap_parent ? olap_parent->_raw_rows_counter : 
local_state->_raw_rows_counter,
                    stats.raw_rows_read);
+    COUNTER_UPDATE(olap_parent ? olap_parent->_scan_rows : 
local_state->_scan_rows,
+                   stats.raw_rows_read);
+    _scan_rows += stats.raw_rows_read;
     // if raw_rows_read is reset, scanNode will scan all table rows which may 
cause BE crash
-    _raw_rows_read += stats.raw_rows_read;
     _tablet_reader->mutable_stats()->raw_rows_read = 0;
 }
 
@@ -563,7 +567,8 @@ void NewOlapScanner::_collect_profile_before_close() {
 #define INCR_COUNTER(Parent)                                                   
                   \
     COUNTER_UPDATE(Parent->_io_timer, stats.io_ns);                            
                   \
     COUNTER_UPDATE(Parent->_read_compressed_counter, 
stats.compressed_bytes_read);                \
-    _compressed_bytes_read += stats.compressed_bytes_read;                     
                   \
+    COUNTER_UPDATE(Parent->_scan_bytes, stats.compressed_bytes_read);          
                   \
+    _scan_bytes += stats.compressed_bytes_read;                                
                   \
     COUNTER_UPDATE(Parent->_decompressor_timer, stats.decompress_ns);          
                   \
     COUNTER_UPDATE(Parent->_read_uncompressed_counter, 
stats.uncompressed_bytes_read);            \
     COUNTER_UPDATE(Parent->_block_load_timer, stats.block_load_ns);            
                   \
@@ -571,8 +576,8 @@ void NewOlapScanner::_collect_profile_before_close() {
     COUNTER_UPDATE(Parent->_block_fetch_timer, stats.block_fetch_ns);          
                   \
     COUNTER_UPDATE(Parent->_delete_bitmap_get_agg_timer, 
stats.delete_bitmap_get_agg_ns);         \
     COUNTER_UPDATE(Parent->_block_convert_timer, stats.block_convert_ns);      
                   \
-    COUNTER_UPDATE(Parent->_raw_rows_counter, stats.raw_rows_read);            
                   \
-    _raw_rows_read += _tablet_reader->mutable_stats()->raw_rows_read;          
                   \
+    COUNTER_UPDATE(Parent->_scan_rows, stats.raw_rows_read);                   
                   \
+    _scan_rows += _tablet_reader->mutable_stats()->raw_rows_read;              
                   \
     COUNTER_UPDATE(Parent->_vec_cond_timer, stats.vec_cond_ns);                
                   \
     COUNTER_UPDATE(Parent->_short_cond_timer, stats.short_cond_ns);            
                   \
     COUNTER_UPDATE(Parent->_expr_filter_timer, stats.expr_filter_ns);          
                   \
@@ -665,11 +670,11 @@ void NewOlapScanner::_collect_profile_before_close() {
 #undef INCR_COUNTER
 #endif
     // Update metrics
-    
DorisMetrics::instance()->query_scan_bytes->increment(_compressed_bytes_read);
-    DorisMetrics::instance()->query_scan_rows->increment(_raw_rows_read);
+    DorisMetrics::instance()->query_scan_bytes->increment(_scan_bytes);
+    DorisMetrics::instance()->query_scan_rows->increment(_scan_rows);
     auto& tablet = _tablet_reader_params.tablet;
-    tablet->query_scan_bytes->increment(_compressed_bytes_read);
-    tablet->query_scan_rows->increment(_raw_rows_read);
+    tablet->query_scan_bytes->increment(_scan_bytes);
+    tablet->query_scan_rows->increment(_scan_rows);
     tablet->query_scan_count->increment(1);
 }
 
diff --git a/be/src/vec/exec/scan/new_olap_scanner.h 
b/be/src/vec/exec/scan/new_olap_scanner.h
index 7070594383c..cdadf8f7f49 100644
--- a/be/src/vec/exec/scan/new_olap_scanner.h
+++ b/be/src/vec/exec/scan/new_olap_scanner.h
@@ -101,8 +101,8 @@ private:
     std::unordered_set<uint32_t> _tablet_columns_convert_to_null_set;
 
     // ========= profiles ==========
-    int64_t _compressed_bytes_read = 0;
-    int64_t _raw_rows_read = 0;
+    int64_t _scan_bytes = 0;
+    int64_t _scan_rows = 0;
     bool _profile_updated = false;
 };
 } // namespace vectorized
diff --git a/be/src/vec/exec/scan/vscan_node.cpp 
b/be/src/vec/exec/scan/vscan_node.cpp
index e3d9f916b5d..a7842188feb 100644
--- a/be/src/vec/exec/scan/vscan_node.cpp
+++ b/be/src/vec/exec/scan/vscan_node.cpp
@@ -300,6 +300,9 @@ Status VScanNode::_init_profile() {
 
     _max_scanner_thread_num = ADD_COUNTER(_runtime_profile, 
"MaxScannerThreadNum", TUnit::UNIT);
 
+    _scan_rows = ADD_COUNTER(_runtime_profile, "ScanRows", TUnit::UNIT);
+    _scan_bytes = ADD_COUNTER(_runtime_profile, "ScanBytes", TUnit::BYTES);
+
     return Status::OK();
 }
 
diff --git a/be/src/vec/exec/scan/vscan_node.h 
b/be/src/vec/exec/scan/vscan_node.h
index 43a7437cafd..7b802bf5894 100644
--- a/be/src/vec/exec/scan/vscan_node.h
+++ b/be/src/vec/exec/scan/vscan_node.h
@@ -379,6 +379,9 @@ protected:
     RuntimeProfile::HighWaterMarkCounter* _free_blocks_memory_usage = nullptr;
     RuntimeProfile::Counter* _scale_up_scanners_counter = nullptr;
 
+    RuntimeProfile::Counter* _scan_rows = nullptr;
+    RuntimeProfile::Counter* _scan_bytes = nullptr;
+
     std::unordered_map<std::string, int> _colname_to_slot_id;
 
     TPushAggOp::type _push_down_agg_type;


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to