Commit Graph

34 Commits

Author SHA1 Message Date
Amos Bird
264cff6415
Projections
TODO (suggested by Nikolai)

1. Build query plan fro current query (inside storage::read) up to WithMergableState
2. Check, that plan is simple enough: Aggregating - Expression - Filter - ReadFromStorage (or simplier)
3. Check, that filter is the same as filter in projection, and also expression calculates the same aggregation keys as in projection
4. Return WithMergableState if projection applies

3 will be easier to do with ActionsDAG, cause it sees all functions, and dependencies are direct (but it is possible with ExpressionActions also)

Also need to figure out how prewhere works for projections, and
row_filter_policies.

wip
2021-05-11 18:12:23 +08:00
Azat Khuzhin
19e0439629 Add ability to flush buffer only in background for StorageBuffer
Add 3 new engine arguments:
- flush_time
- flush_rows
- flush_bytes

That will be checked only for background flush, this maybe useful if
INSERT latency is "crucial".
2021-04-15 21:22:13 +03:00
Azat Khuzhin
c4a7e81287 Add metric to track how much time is spend during waiting for Buffer layer lock
It uses very fast CLOCK_MONOTONIC_COARSE, so this should not be a
problem.
Also note that there is no sense in using microseconds/nanoseconds since
accuracy of CLOCK_MONOTONIC_COARSE usually milliseconds.
2021-04-06 21:13:24 +03:00
Alexey Milovidov
2a8ac01cdb Rename as suggested by Kita 2021-03-28 22:24:28 +03:00
Alexey Milovidov
bcdf3dce36 Add cache for mmapped files 2021-03-27 02:22:51 +03:00
Pavel Kruglov
d380454044 Change read_data_timeout from sec to ms, add profile event for hedged requests and better process receiving packets 2021-03-18 20:16:17 +03:00
Azat Khuzhin
6965ac26c3 Distributed: Add ability to delay/throttle INSERT until pending data will be reduced
Add two new settings for the Distributed engine:
- bytes_to_delay_insert
- max_delay_to_insert

If at the beginning of INSERT there will be too much pending data, more
then bytes_to_delay_insert, then the INSERT will wait until it will be
shrinked, and not more then max_delay_to_insert seconds.

If after this there will be still too much pending, it will throw an
exception.

Also new profile events were added (by analogy to the MergeTree):
- DistributedDelayedInserts (although you can use system.errors instead
  of this, but still)
- DistributedRejectedInserts
- DistributedDelayedInsertsMilliseconds
2021-03-03 23:30:23 +03:00
Alexey Milovidov
6eb5a5f4d9 Remove useless code 2021-01-10 03:28:59 +03:00
Alexey Milovidov
828d27d801 Remove unused ProfileEvents 2020-11-24 20:45:24 +03:00
alexey-milovidov
453914b6b8
Update ProfileEvents.cpp 2020-09-09 21:02:53 +03:00
Peng Jian
9fa04cf48b Add QueryMemoryLimitExceeded event 2020-09-10 00:59:38 +08:00
Anton Ivashkin
327090b7ea Add QueryTimeMicroseconds, SelectQueryTimeMicroseconds and InsertQueryTimeMicroseconds to system.events, second attempt 2020-08-04 19:38:13 +03:00
alexey-milovidov
65c755190e
Revert "Add QueryTimeMicroseconds, SelectQueryTimeMicroseconds and InsertQuer…" 2020-08-04 01:18:59 +03:00
Alexander Kuzmenkov
c4a33430b1
Merge pull request #13028 from ianton-ru/select_insert_time
Add QueryTimeMicroseconds, SelectQueryTimeMicroseconds and InsertQuer…
2020-08-03 17:07:34 +03:00
Anton Ivashkin
f4efe3c2fd Add QueryTimeMicroseconds, SelectQueryTimeMicroseconds and InsertQueryTimeMicroseconds to system.events 2020-07-29 13:32:18 +03:00
Anton Ivashkin
742793be54 Add SelectedRows and SelectedBytes events 2020-07-21 17:50:02 +03:00
alexey-milovidov
504783fe2b
Update ProfileEvents.cpp 2020-07-19 03:20:45 +03:00
Alexander Kuzmenkov
5a662ca48c Add perf metric for NUMA-local memory access 2020-07-17 20:10:59 +03:00
Anton Ivashkin
26fca949bd add profiling events from S3 request to system.events and system.query_log 2020-07-13 11:27:11 +03:00
Alexander Kuzmenkov
af8d62bbcb Add TLB misses perf counters. 2020-06-29 15:48:18 +03:00
Alexander Kuzmenkov
a8db0b40d0 add page fault perf events 2020-06-25 23:42:31 +03:00
Alexey Milovidov
5211a42c04 Remove leader election, step 3 2020-06-19 17:18:58 +03:00
Alexey Milovidov
21897f2abd Instrument 2020-06-13 04:35:49 +03:00
Alexander Kuzmenkov
3c18344b06 account for counter multiplexing 2020-05-28 13:48:34 +03:00
Alexander Kuzmenkov
db84f0e892 Merge remote-tracking branch 'origin/master' into HEAD 2020-05-27 16:30:13 +03:00
Nikita Orlov
dffd15f643
issue-7224 Add failed Insert and Select query counters to ProfileEvents 2020-05-23 01:00:15 +03:00
Andrey Skobtsov
93d8e8c404 Removed perf page faults as they already exist in rusage 2020-05-22 14:09:14 +03:00
Andrey Skobtsov
e3b756e65f Added cpu-clock to the list of supported events as it is included in perf and can be disabled if needed 2020-05-21 23:40:47 +03:00
Andrey Skobtsov
1edd29b3f8 Removed custom events as they don't work in an "increment" manner 2020-05-18 15:23:47 +03:00
Andrey Skobtsov
e7bea6e03a Renamed events 2020-05-18 14:44:40 +03:00
Andrey Skobtsov
182e4f2c0b Added running and enabled time for perf metrics 2020-05-18 13:40:01 +03:00
Alexander Kuzmenkov
9ed9475e46
boop the CI 2020-04-23 03:55:03 +03:00
Andrey Skobtsov
afaa7eca51 Merge branch 'master' into perf_events_metrics
# Conflicts:
#	dbms/src/Common/ProfileEvents.cpp
2020-04-13 23:59:48 +03:00
Ivan Lezhankin
06446b4f08 dbms/ → src/ 2020-04-03 18:14:31 +03:00