Apache Druid: a high performance real-time analytics database.
Go to file
Chi Cao Minh 0d2b16c1d0
Speed up joins on indexed tables with string keys (#9278)
* Speed up joins on indexed tables with string keys

When joining on index tables with string keys, caching the computation
of row id to row numbers improves performance on the
JoinAndLookupBenchmark.joinIndexTableStringKey* benchmarks by about 10%
if the column cache is enabled an by about 100% if the column cache is
disabled.

* Faster cache impl and handle unknown cardinality

* Remove unused dependency

* Hoist cardinality check outside of hot loop

* Fix dummy DimensionSelector for tests
2020-02-04 17:34:55 -08:00
.github De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
.idea intelliJ inspections cleanup (#9260) 2020-01-29 11:50:52 -08:00
benchmarks Guicify druid sql module (#9279) 2020-02-04 11:33:48 -08:00
cloud De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
codestyle De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
core LimitedSequence: Improve suppression comment. (#9298) 2020-01-31 16:21:08 -08:00
dev De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
distribution Fix DRUID_CONFIG to DRUID_CONFIG_COMMON (#9193) 2020-01-27 02:52:01 -08:00
docs GREATEST/LEAST post-aggregators in SQL (#8719) 2020-02-04 17:08:53 -08:00
examples Minor doc updates (#9217) 2020-01-20 11:34:37 -08:00
extendedset intelliJ inspections cleanup (#9260) 2020-01-29 11:50:52 -08:00
extensions-contrib Guicify druid sql module (#9279) 2020-02-04 11:33:48 -08:00
extensions-core Get larger batch of input files when using native batch with google cloud (#9307) 2020-02-04 12:03:32 -08:00
hll Set version to 0.18.0-SNAPSHOT (#9109) 2020-01-02 17:55:10 -05:00
indexing-hadoop intelliJ inspections cleanup (#9260) 2020-01-29 11:50:52 -08:00
indexing-service intelliJ inspections cleanup (#9260) 2020-01-29 11:50:52 -08:00
integration-tests Add LookupJoinableFactory. (#9281) 2020-01-30 14:46:21 -08:00
licenses De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
processing Speed up joins on indexed tables with string keys (#9278) 2020-02-04 17:34:55 -08:00
publications De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
server SQL join support for lookups. (#9294) 2020-01-31 23:51:16 -08:00
services intelliJ inspections cleanup (#9260) 2020-01-29 11:50:52 -08:00
sql GREATEST/LEAST post-aggregators in SQL (#8719) 2020-02-04 17:08:53 -08:00
web-console Web console: make supervisor reset really scary in the UI (#9253) 2020-02-04 15:33:52 -08:00
website Add MostAvailableSizeStorageLocationSelectorStrategy (#8879) 2020-01-23 13:42:03 -08:00
.asf.yaml Add .asf.yaml. (#9083) 2019-12-20 16:45:38 -08:00
.backportrc.json Graduation update for ASF release process guide and download links (#9126) 2020-01-06 15:00:33 -06:00
.codecov.yml Use Codecov (#8388) 2019-08-28 08:49:30 -07:00
.dockerignore Add docker container for druid (#6896) 2019-02-08 12:12:28 +00:00
.gitignore autogenerate NOTICE.BINARY from NOTICE and licenses.yaml (#8306) 2019-08-21 12:46:27 -07:00
.lgtm.yml Add license header for LGTM yaml config file (#8902) 2019-11-18 18:26:45 -08:00
.travis.yml Parallel indexing single dim partitions (#8925) 2019-12-09 23:05:49 -08:00
CONTRIBUTING.md De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
LABELS Add plain text README.txt, use relative link from README.md to build.md (#7611) 2019-05-09 21:29:26 -07:00
LICENSE De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
NOTICE De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
README.md Update README.md 2019-12-20 20:56:53 -08:00
README.template De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
licenses.yaml Guicify druid sql module (#9279) 2020-02-04 11:33:48 -08:00
owasp-dependency-check-suppressions.xml Fix / suppress netty CVEs CVE-2019-20445 and CVE-2019-20444 (#9300) 2020-01-31 14:51:54 -08:00
pom.xml Guicify druid sql module (#9279) 2020-02-04 11:33:48 -08:00
upload.sh Adding licenses and enable apache-rat-plugin. (#6215) 2018-09-18 08:39:26 -07:00

README.md

Slack Build Status Language grade: Java Coverage Status Docker


Website | Documentation | Developer Mailing List | User Mailing List | Slack | Twitter | Download


Apache Druid

Druid is a high performance real-time analytics database. Druid's main value add is to reduce time to insight and action.

Druid is designed for workflows where fast queries and ingest really matter. Druid excels at powering UIs, running operational (ad-hoc) queries, or handling high concurrency. Consider Druid as an open source alternative to data warehouses for a variety of use cases.

Getting started

You can get started with Druid with our quickstart.

Druid provides a rich set of APIs (via HTTP and JDBC) for loading, managing, and querying your data. You can also interact with Druid via the built-in console (shown below).

Load data

data loader Kafka

Load streaming and batch data using a point-and-click wizard to guide you through ingestion setup. Monitor one off tasks and ingestion supervisors.

Manage the cluster

management

Manage your cluster with ease. Get a view of your datasources, segments, ingestion tasks, and services from one convenient location. All powered by SQL systems tables, allowing you to see the underlying query for each view.

Issue queries

query view combo

Use the built-in query workbench to prototype DruidSQL and native queries or connect one of the many tools that help you make the most out of Druid.

Documentation

You can find the documentation for the latest Druid release on the project website.

If you would like to contribute documentation, please do so under /docs in this repository and submit a pull request.

Community

Community support is available on the druid-user mailing list, which is hosted at Google Groups.

Development discussions occur on dev@druid.apache.org, which you can subscribe to by emailing dev-subscribe@druid.apache.org.

Chat with Druid committers and users in real-time on the #druid channel in the Apache Slack team. Please use this invitation link to join the ASF Slack, and once joined, go into the #druid channel.

Building from source

Please note that JDK 8 is required to build Druid.

For instructions on building Druid from source, see docs/development/build.md

Contributing

Please follow the community guidelines for contributing.

For instructions on setting up IntelliJ dev/intellij-setup.md

License

Apache License, Version 2.0