druid/docs/querying
Gian Merlino 54c9325256
SQL support for joins on subqueries. (#9545)
* SQL support for joins on subqueries.

Changes to SQL module:

- DruidJoinRule: Allow joins on subqueries (left/right are no longer
  required to be scans or mappings).
- DruidJoinRel: Add cost estimation code for joins on subqueries.
- DruidSemiJoinRule, DruidSemiJoinRel: Removed, since DruidJoinRule can
  handle this case now.
- DruidRel: Remove Nullable annotation from toDruidQuery, because
  it is no longer needed (it was used by DruidSemiJoinRel).
- Update Rules constants to reflect new rules available in our current
  version of Calcite. Some of these are useful for optimizing joins on
  subqueries.
- Rework cost estimation to be in terms of cost per row, and place all
  relevant constants in CostEstimates.

Other changes:

- RowBasedColumnSelectorFactory: Don't set hasMultipleValues. The lack
  of isComplete is enough to let callers know that columns might have
  multiple values, and explicitly setting it to true causes
  ExpressionSelectors to think it definitely has multiple values, and
  treat the inputs as arrays. This behavior interfered with some of the
  new tests that involved queries on lookups.
- QueryContexts: Add maxSubqueryRows parameter, and use it in druid-sql
  tests.

* Fixes for tests.

* Adjustments.
2020-03-22 16:43:55 -07:00
..
aggregations.md ANY Aggregator should not skip null values implementation (#9317) 2020-02-12 14:01:41 -08:00
caching.md De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
datasource.md De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
datasourcemetadataquery.md De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
dimensionspecs.md De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
filters.md Convert array_contains() and array_overlaps() into native filters if possible (#9487) 2020-03-09 22:50:38 -07:00
granularities.md De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
groupbyquery.md Remove the deprecated interval-chunking stuff. (#9216) 2020-01-19 17:14:23 -08:00
having.md De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
hll-old.md De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
joins.md De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
limitspec.md Docusaurus build framework + ingestion doc refresh. (#8311) 2019-08-20 21:48:59 -07:00
lookups.md remove old unused zookeeper dependent lookups code (#9480) 2020-03-10 12:12:48 -07:00
multi-value-dimensions.md De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
multitenancy.md De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
post-aggregations.md De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
query-context.md query laning and load shedding (#9407) 2020-03-10 02:57:16 -07:00
querying.md query laning and load shedding (#9407) 2020-03-10 02:57:16 -07:00
scan-query.md De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
searchquery.md De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
searchqueryspec.md Docusaurus build framework + ingestion doc refresh. (#8311) 2019-08-20 21:48:59 -07:00
segmentmetadataquery.md De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
select-query.md De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
sorting-orders.md Spellcheck docs (#8548) 2019-09-17 12:47:30 -07:00
sql.md SQL support for joins on subqueries. (#9545) 2020-03-22 16:43:55 -07:00
timeboundaryquery.md De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
timeseriesquery.md De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
topnmetricspec.md De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
topnquery.md De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00
virtual-columns.md De-incubation cleanup in code, docs, packaging (#9108) 2020-01-03 12:33:19 -05:00