mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-27 18:12:02 +00:00
Merge
This commit is contained in:
parent
35184afdc2
commit
2b9f4ca2bf
@ -153,6 +153,9 @@ private:
|
|||||||
String date_column_name;
|
String date_column_name;
|
||||||
size_t index_granularity;
|
size_t index_granularity;
|
||||||
|
|
||||||
|
size_t min_marks_for_seek;
|
||||||
|
size_t min_marks_for_concurrent_read;
|
||||||
|
|
||||||
/// Для схлопывания записей об изменениях, если это требуется.
|
/// Для схлопывания записей об изменениях, если это требуется.
|
||||||
String sign_column;
|
String sign_column;
|
||||||
|
|
||||||
|
@ -523,7 +523,7 @@ public:
|
|||||||
if (may_be_true)
|
if (may_be_true)
|
||||||
{
|
{
|
||||||
/// Увидели полезный промежуток между соседними засечками. Либо добавим его к последнему диапазону, либо начнем новый диапазон.
|
/// Увидели полезный промежуток между соседними засечками. Либо добавим его к последнему диапазону, либо начнем новый диапазон.
|
||||||
if (res.empty() || (current_mark_number - 1) - res.back().end > storage.settings.min_rows_for_seek)
|
if (res.empty() || (current_mark_number - 1) - res.back().end > storage.min_marks_for_seek)
|
||||||
{
|
{
|
||||||
res.push_back(MarkRange(current_mark_number - 1, current_mark_number));
|
res.push_back(MarkRange(current_mark_number - 1, current_mark_number));
|
||||||
}
|
}
|
||||||
@ -741,6 +741,9 @@ StorageMergeTree::StorageMergeTree(
|
|||||||
settings(settings_),
|
settings(settings_),
|
||||||
increment(full_path + "increment.txt"), log(&Logger::get("StorageMergeTree: " + name))
|
increment(full_path + "increment.txt"), log(&Logger::get("StorageMergeTree: " + name))
|
||||||
{
|
{
|
||||||
|
min_marks_for_seek = (settings.min_rows_for_seek + index_granularity - 1) / index_granularity;
|
||||||
|
min_marks_for_concurrent_read = (settings.min_rows_for_concurrent_read + index_granularity - 1) / index_granularity;
|
||||||
|
|
||||||
/// создаём директорию, если её нет
|
/// создаём директорию, если её нет
|
||||||
Poco::File(full_path).createDirectories();
|
Poco::File(full_path).createDirectories();
|
||||||
|
|
||||||
@ -874,13 +877,13 @@ BlockInputStreams StorageMergeTree::spreadMarkRangesAmongThreads(RangesInDataPar
|
|||||||
size_t & marks_in_part = sum_marks_in_parts.back();
|
size_t & marks_in_part = sum_marks_in_parts.back();
|
||||||
|
|
||||||
/// Не будем брать из куска слишком мало строк.
|
/// Не будем брать из куска слишком мало строк.
|
||||||
if (marks_in_part >= settings.min_rows_for_concurrent_read &&
|
if (marks_in_part >= min_marks_for_concurrent_read &&
|
||||||
need_marks < settings.min_rows_for_concurrent_read)
|
need_marks < min_marks_for_concurrent_read)
|
||||||
need_marks = settings.min_rows_for_concurrent_read;
|
need_marks = min_marks_for_concurrent_read;
|
||||||
|
|
||||||
/// Не будем оставлять в куске слишком мало строк.
|
/// Не будем оставлять в куске слишком мало строк.
|
||||||
if (marks_in_part > need_marks &&
|
if (marks_in_part > need_marks &&
|
||||||
marks_in_part - need_marks < settings.min_rows_for_concurrent_read)
|
marks_in_part - need_marks < min_marks_for_concurrent_read)
|
||||||
need_marks = marks_in_part;
|
need_marks = marks_in_part;
|
||||||
|
|
||||||
/// Возьмем весь кусок, если он достаточно мал.
|
/// Возьмем весь кусок, если он достаточно мал.
|
||||||
|
Loading…
Reference in New Issue
Block a user