ClickHouse® is a real-time analytics DBMS
Go to file
Azat Khuzhin 10b4f3b41f Optimize queries with LIMIT/LIMIT BY/ORDER BY for distributed with GROUP BY sharding_key
Previous set of QueryProcessingStage does not allow to do this.
But after WithMergeableStateAfterAggregation had been introduced the
following queries can be optimized too under
optimize_distributed_group_by_sharding_key:
- GROUP BY sharding_key LIMIT
- GROUP BY sharding_key LIMIT BY
- GROUP BY sharding_key ORDER BY

And right now it is still not supports:
- WITH TOTALS (looks like it can be supported)
- WITH ROLLUP (looks like it can be supported)
- WITH CUBE
- SETTINGS extremes=1 (looks like it can be supported)
But will be implemented separatelly.

vX: fixes
v2: fix WITH *
v3: fix extremes
v4: fix LIMIT OFFSET (and make a little bit cleaner)
v5: fix HAVING
v6: fix ORDER BY
v7: rebase against 20.7
v8: move out WithMergeableStateAfterAggregation
v9: add optimize_distributed_group_by_sharding_key into test names
2020-09-03 00:52:51 +03:00
.github Update PULL_REQUEST_TEMPLATE.md 2020-08-25 19:58:02 +03:00
base Refactoring: rename types to allow change bigint library (#14219) 2020-09-01 12:54:50 +03:00
benchmark Fix typos 2020-08-16 15:11:02 +03:00
cmake Auto version update to [20.9.1.1] [54439] 2020-08-31 23:07:41 +03:00
contrib Minor modification 2020-08-29 22:22:59 +03:00
debian Less number of threads in builder 2020-09-02 04:26:35 +03:00
docker Merge pull request #14325 from azat/suppress-wget-output 2020-09-02 14:59:28 +03:00
docs Merge pull request #14348 from ka1bi4/romanzhukov-DOCSUP-2031-pr-translation 2020-09-02 16:13:16 +03:00
programs Add new query processing stage WithMergeableStateAfterAggregation 2020-09-03 00:51:08 +03:00
src Optimize queries with LIMIT/LIMIT BY/ORDER BY for distributed with GROUP BY sharding_key 2020-09-03 00:52:51 +03:00
tests Optimize queries with LIMIT/LIMIT BY/ORDER BY for distributed with GROUP BY sharding_key 2020-09-03 00:52:51 +03:00
utils Suppress superfluous wget (-nv) output 2020-09-01 10:25:13 +03:00
website Revert "Fix bug in "Quick Start" markup on the website" 2020-08-18 14:07:52 +03:00
.arcignore Added .arcignore 2020-05-21 09:17:03 +03:00
.clang-format Fixed wrong code around Memory Profiler 2020-03-03 03:24:44 +03:00
.clang-tidy Enable clang-tidy for programs and utils 2020-05-18 04:19:50 +03:00
.editorconfig Changed tabs to spaces in editor configs and in style guide [#CLICKHOUSE-3]. 2017-04-01 11:35:09 +03:00
.gitattributes Decreased warning threshold [#MOBMET-3248] 2016-06-07 11:23:15 +03:00
.gitignore Updated gitignore-files. 2020-08-06 18:05:32 -07:00
.gitmodules Merge pull request #12771 from arenadata/ADQM-109 2020-08-20 20:13:01 +03:00
.potato.yml Update comments in .potato.yml 2019-10-20 12:50:33 +08:00
.vimrc Changed tabs to spaces in editor configs and in style guide [#CLICKHOUSE-3]. 2017-04-01 11:35:09 +03:00
AUTHORS Update AUTHORS 2020-01-23 17:36:05 +03:00
CHANGELOG.md Update CHANGELOG.md 2020-08-12 00:03:01 +03:00
CMakeLists.txt cmake: fix potential curl linking problems 2020-08-25 20:16:44 +03:00
CODE_OF_CONDUCT.md Add minimal code of conduct #9676 2020-03-16 12:44:28 +03:00
CONTRIBUTING.md Update CONTRIBUTING.md 2020-01-27 21:03:30 +03:00
docker-compose.yml Updated docker-compose.yml #1025 2017-07-26 20:05:32 +03:00
format_sources allow several <graphite> targets (#603) 2017-03-21 23:08:09 +04:00
LICENSE Update LICENSE 2020-01-23 17:38:30 +03:00
PreLoad.cmake Disable ninja for CLion 2019-09-11 10:23:20 +03:00
README.md Update README.md 2020-08-26 10:17:25 +03:00
release Added auto-generated machine-readable file with list of stable versions 2020-05-02 21:53:55 +03:00
SECURITY.md [security docs] actually, only admins can create advisories 2020-07-10 16:51:37 +03:00
uncrustify.cfg Better .clang-format and uncrustify.cfg 2018-11-29 15:45:34 +03:00
ya.make Changes required for auto-sync with Arcadia 2020-04-16 15:31:57 +03:00

ClickHouse — open source distributed column-oriented DBMS

ClickHouse is an open-source column-oriented database management system that allows generating analytical data reports in real time.

  • Official website has quick high-level overview of ClickHouse on main page.
  • Tutorial shows how to set up and query small ClickHouse cluster.
  • Documentation provides more in-depth information.
  • YouTube channel has a lot of content about ClickHouse in video format.
  • Slack and Telegram allow to chat with ClickHouse users in real-time.
  • Blog contains various ClickHouse-related articles, as well as announcements and reports about events.
  • Code Browser with syntax highlight and navigation.
  • Yandex.Messenger channel shares announcements and useful links in Russian.
  • Contacts can help to get your questions answered if there are any.
  • You can also fill this form to meet Yandex ClickHouse team in person.

Upcoming Events