Skip to main content

Join

  • Chapter
  • First Online:
  • 1511 Accesses

Abstract

This chapter is about joins and their execution in in-memory database systems. In general, joins are a way to combine tuples of two or more tables. There are two general categories of joins which can be than further specialized

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   74.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   99.00
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Hasso Plattner .

Self Test Questions

Self Test Questions

 

  1. 1.

    Hash-Join Complexity

    What is the complexity of the Hash-Join?

    1. (a)

      O(n+m)

    2. (b)

      O(n\(^2\)/m\(^2\))

    3. (c)

      O(n \(\cdot \) m)

    4. (d)

      O(n \(\cdot \) log(n)+m+log(m))

  2. 2.

    Sort-Merge Join Complexity

    What is the complexity of the Sort-Merge Join?

    1. (a)

      O(n+m)

    2. (b)

      O(n\(^2\)/m\(^2\))

    3. (c)

      O(n \(\cdot \) m)

    4. (d)

      O(n \(\cdot \) log(n)+m \(\cdot \) log(m))

  3. 3.

    Join Algorithm Small Data Set

    Given is an extremely small data set. Which join algorithm would you choose in order to get the best performance?

    1. (a)

      All join algorithms have the same performance

    2. (b)

      Nested-Loop Join

    3. (c)

      Sort-Merge Join

    4. (d)

      Hash-Join

  4. 4.

    Join Algorithm Large Data Set

    Imagine a large data set with an index. Which join algorithm would you choose in order to get the best performance?

    1. (a)

      Nested-Loop Join

    2. (b)

      Sort-Merge Join

    3. (c)

      All join algorithms have the same performance

    4. (d)

      Hash-Join

  5. 5.

    Equi-Join

    What is the Equi-Join?

    1. (a)

      If you select tuples from both relations, you use only one half of the join relations and the other half of the table is discarded

    2. (b)

      If you select tuples from both relations, you will always select those tuples, that qualify according to a given equality predicate

    3. (c)

      It is a join algorithm that ensures that the result consists of equal amounts from both joined relations

    4. (d)

      It is a join algorithm to fetch information, that is probably not there. So if you select a tuple from one relation and this tuple has no matching tuple on the other relation, you would insert their NULL values there.

  6. 6.

    One-to-One-Relation

    What is a one-to-one relation?

    1. (a)

      A one-to-one relation between two objects means that for each object on the left side, there are one or more objects on the right side of the joined table and each object of the right side has exactly one join partner on the left

    2. (b)

      A one-to-one relation between two objects means that for exactly one object on the left side of the join exists exactly one object on the right side and vice versa

    3. (c)

      A one-to-one relation between two objects means that each object on the left side is joined to one or more objects on the right side of the table and vice versa each object on the right side has one or more join partners on the left side of the table

    4. (d)

      Each query which has exactly one join between exactly two tables is called a one-to-one relation, because one table is joined to exactly one other table.

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Plattner, H. (2013). Join. In: A Course in In-Memory Data Management. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-36524-9_19

Download citation

Publish with us

Policies and ethics