Apache Druid: a high performance real-time analytics database.
Go to file
Goh Wei Xiang 26fd2b3a8e Priority on loading for primary replica (#4757)
* Priority on loading for primary replica

* Simplicity fixes

* Fix on skipping drop for quick return.

* change to debug logging for no replicants.

* Fix on filter logic

* swapping if-else

* Fix on wrong "hasTier" logic

* Refactoring of LoadRule

* Rename createPredicate to createLoadQueueSizeLimitingPredicate

* Rename getHolderList to getFilteredHolders

* remove varargs

* extract out currentReplicantsInTier

* rename holders to holdersInTier

* don't do temporary removal of tier.

* rename primaryTier to tierToSkip

* change LinkedList to ArrayList

* Change MinMaxPriorityQueue in DruidCluster to TreeSet.

* Adding some comments.

* Modify log messages in light of predicates.

* Add in-method comments

* Don't create new Object2IntOpenHashMap for each run() call.

* Cache result from strategy call in the primary assignment to be reused during the same run.

* Spelling mistake

* Cleaning up javadoc.

* refactor out loading in progress check.

* Removed redundant comment.

* Removed forbidden API

* Correct non-forbidden API.

* Precision in variable type for NavigableSet.

* Obsolete comment.

* Clarity in method call and moving retrieval of ServerHolder into method call.

* Comment on mutability of CoordinatoorStats.

* Added auxiliary fixture for dropping.
2017-09-28 13:02:05 -07:00
.idea Prohibit for loops which could be foreach with IntelliJ (#4653) 2017-08-08 18:05:33 -07:00
api Add org.joda.time.DateTime.parse() to forbidden APIs (#4857) 2017-09-27 17:46:44 -05:00
aws-common Make AWSCredentialsConfig use PasswordProvider for the string matter (#4613) 2017-07-29 15:48:49 -07:00
benchmarks Add flattenSpec support to the Avro parser. (#4832) 2017-09-26 09:26:06 -07:00
bytebuffer-collections Enforce correct spacing with Checkstyle (#4651) 2017-08-05 10:18:25 -07:00
ci Run integration tests on travis (#4344) 2017-05-31 18:27:34 -07:00
codestyle Add org.joda.time.DateTime.parse() to forbidden APIs (#4857) 2017-09-27 17:46:44 -05:00
common Add org.joda.time.DateTime.parse() to forbidden APIs (#4857) 2017-09-27 17:46:44 -05:00
distribution Move caffeine out of extension and make it the default cache implementation. (#4810) 2017-09-22 10:46:55 -07:00
docs remove ServerConfig from DruidNode as all information needs to be present in DruidNode serialized form (#4858) 2017-09-28 10:40:59 -05:00
examples Fix issue https://github.com/druid-io/druid/issues/4690 (#4691) 2017-08-17 09:45:33 -05:00
extendedset Enforce correct spacing with Checkstyle (#4651) 2017-08-05 10:18:25 -07:00
extensions-contrib Add org.joda.time.DateTime.parse() to forbidden APIs (#4857) 2017-09-27 17:46:44 -05:00
extensions-core remove ServerConfig from DruidNode as all information needs to be present in DruidNode serialized form (#4858) 2017-09-28 10:40:59 -05:00
hll Add "round" option to cardinality and hyperUnique aggregators. (#4720) 2017-08-28 14:52:11 -07:00
indexing-hadoop remove ServerConfig from DruidNode as all information needs to be present in DruidNode serialized form (#4858) 2017-09-28 10:40:59 -05:00
indexing-service remove ServerConfig from DruidNode as all information needs to be present in DruidNode serialized form (#4858) 2017-09-28 10:40:59 -05:00
integration-tests remove ServerConfig from DruidNode as all information needs to be present in DruidNode serialized form (#4858) 2017-09-28 10:40:59 -05:00
java-util Add org.joda.time.DateTime.parse() to forbidden APIs (#4857) 2017-09-27 17:46:44 -05:00
processing Add identity to query metrics, logs. (#4862) 2017-09-28 11:45:23 -07:00
publications Changes to lambda architecture paper required for HICSS (#3382) 2016-09-06 21:32:21 -07:00
server Priority on loading for primary replica (#4757) 2017-09-28 13:02:05 -07:00
services remove ServerConfig from DruidNode as all information needs to be present in DruidNode serialized form (#4858) 2017-09-28 10:40:59 -05:00
sql SQL: Delay query translation until the end of planning. (#4846) 2017-09-28 11:43:20 -07:00
.gitignore git ignore dependency-reduced-pom.xml (#4711) 2017-08-23 10:10:50 -07:00
.travis.yml Try to improve CI reliability. (#4787) 2017-09-12 22:24:45 -05:00
CONTRIBUTING.md Update git workflow (#4418) 2017-06-16 19:27:46 -07:00
DruidCorporateCLA.pdf fix CLA email / mailing address 2014-04-17 15:26:28 -07:00
DruidIndividualCLA.pdf fix CLA email / mailing address 2014-04-17 15:26:28 -07:00
INTELLIJ_SETUP.md Add INTELLIJ_SETUP.md (#4261) 2017-05-17 01:26:16 +09:00
LICENSE Clean up README and license 2015-02-18 23:09:28 -08:00
NOTICE Extension points for authentication/authorization (#4271) 2017-09-15 23:45:48 -07:00
README.md Add TeamCity inspections badge (#4351) 2017-06-06 20:53:25 -04:00
druid_intellij_formatting.xml Make formatting IntelliJ 2016 friendly (#2978) 2016-05-18 12:42:21 -07:00
eclipse.importorder Merge pull request #2905 from javasoze/eclipse_formatting 2016-04-29 18:42:03 -07:00
eclipse_formatting.xml Merge pull request #2905 from javasoze/eclipse_formatting 2016-04-29 18:42:03 -07:00
pom.xml Add org.joda.time.DateTime.parse() to forbidden APIs (#4857) 2017-09-27 17:46:44 -05:00
upload.sh upload.sh: Use awscli if s3cmd is not available. (#3114) 2016-06-08 17:01:46 -07:00

README.md

Build Status Inspections Status Coverage Status

Druid

Druid is a distributed, column-oriented, real-time analytics data store that is commonly used to power exploratory dashboards in multi-tenant environments.

Druid excels as a data warehousing solution for fast aggregate queries on petabyte sized data sets. Druid supports a variety of flexible filters, exact calculations, approximate algorithms, and other useful calculations.

Druid can load both streaming and batch data and integrates with Samza, Kafka, Storm, Spark, and Hadoop.

License

Apache License, Version 2.0

More Information

More information about Druid can be found on http://www.druid.io.

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/content in this repository and submit a pull request.

Getting Started

You can get started with Druid with our quickstart.

Reporting Issues

If you find any bugs, please file a GitHub issue.

Community

Community support is available on the druid-user mailing list(druid-user@googlegroups.com).

Development discussions occur on the druid-development list(druid-development@googlegroups.com).

We also have a couple people hanging out on IRC in #druid-dev on irc.freenode.net.

Contributing

Please follow the guidelines listed here.