Uploaded image for project: 'IMPALA'
  1. IMPALA
  2. IMPALA-3531 Implement deferrable and optionally enforced PK/FK constraints
  3. IMPALA-2112

Support primary key/foreign key constraint as part of create table in Impala

    XMLWordPrintableJSON

    Details

    • Type: Sub-task
    • Status: Resolved
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: Impala 2.2
    • Fix Version/s: None
    • Component/s: Catalog, Frontend
    • Labels:

      Description

      These would be advisory, ie, Impala would not attempt to enforce them. However, they could be used for cardinality estimation during query planning.

      To be compatible with Hive:

      • We neither enforce or validate integrity constraints. Hence, DISABLE and NOVALIDATE options are mandatory.
      • RELY/NORELY is optional. The CBO is expected to use this information when a user specifies “RELY”. The default is NORELY.
      • Since we do not yet have UNIQUE in Hive, the FK mentioned must be Primary Key column in parent table.

      Support create table syntax like hive does:

      • create table pk(id1 integer, id2 integer, primary key(id1, id2) DISABLE NOVALIDATE);
      • create table fk(id1 integer, id2 integer, foreign key(id1, id2) references pk(id2, id1) DISABLE NOVALIDATE);
      • create table T1(id integer, name string, primary key(id) DISABLE NOVALIDATE RELY

        Attachments

          Activity

            People

            • Assignee:
              anuragmantri Anurag Mantripragada
              Reporter:
              marcelk Marcel Kinard
            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: