Megosztás a következőn keresztül:


Partíciók

A következőkre vonatkozik: jelölje be az igennel jelölt jelölőnégyzetet Databricks SQL jelölje be az igennel jelölt jelölőnégyzetet Databricks Runtime

A partíciók egy tábla sorainak egy részhalmazából állnak, amelyek ugyanazt az értéket használják a particionálási oszlopok nevű előre definiált oszlophalmazhoz. A partíciók használata felgyorsíthatja a lekérdezéseket a táblán, valamint az adatmanipulációt is.

Partíciók használatához meg kell határoznia a particionálási oszlopkészletet a tábla létrehozásakor a PARTITIONED BY záradékkal.

Sorok táblázatba való beszúrásakor vagy módosításakor az Azure Databricks automatikusan sorokat küld a megfelelő partíciókba.

A partíciót közvetlenül is megadhatja egy PARTITION záradékkal.

Ez a szintaxis olyan táblák esetében is elérhető, amelyek nem Delta Lake-formátumot használnak, az ALTER TABLE utasítással gyorsan drop, ADD vagy RENAME partíciókat hozhatnak létre.

PARTICIONÁLT

A PARTITIONED BY záradék azoknak az oszlopoknak a listáját adta meg, amelyek mentén az új tábla particionálása történik.

Syntax

PARTITIONED BY ( { partition_column [ column_type ] } [, ...] )

Paraméterek

  • partition_column

    Egy azonosító hivatkozhat egy column_identifier táblára. Ha egynél több oszlopot ad meg, nem lehetnek ismétlődések. Ha a tábla összes oszlopára column_specification hivatkozik, hiba jelenik meg.

  • column_type

    Hacsak a partition_column tábla egyikére column_identifier nem hivatkozik, column_type a tábla column_specificationadattípusát partition_columnhatározza meg.

    A Databricks SQL által támogatott adattípusokat nem minden adatforrás támogatja.

Jegyzetek

Ha nem határoz meg delta lake-tábla particionálási oszlopokat, amelyek az oszlopspecifikáció oszlopaira hivatkoznak, a rendszer mindig a tábla végére helyezi át az oszlopokat.

PARTÍCIÓ

A PARTITION záradék segítségével azonosíthatja a lekérdezni vagy manipulálni kívánt partíciókat.

A partíciók az összes oszlop elnevezésével és egy értékkel való társításával azonosíthatók. Ezeket nem kell megadott sorrendben megadnia.

Ha nem ad hozzá új partíciót egy meglévő táblához, kihagyhat oszlopokat vagy értékeket, amelyek jelzik, hogy a művelet az oszlopok részhalmazának megfelelő összes egyező partícióra vonatkozik.

PARTITION ( { partition_column  [ = partition_value | LIKE pattern ] } [ , ... ] )

Paraméterek

  • partition_column

    A tábla partícióoszlopaként elnevezett oszlop. Előfordulhat, hogy kétszer nem adja meg ugyanazt az oszlopot.

  • = partition_value

    A partícióoszlop típusának megfelelő adattípus literálja. Ha kihagy egy partícióértéket, a specifikáció megegyezik a partícióoszlop összes értékével.

  • LIKE pattern

    Ez az űrlap csak az ALTER SHARE ADD TABLE alkalmazásban engedélyezett.

    Megegyezik a következő karakterlánc-ábrázolásával partition_column pattern: . patternA LIKE-ban használt sztringkonstansnak kell lennie.

Példák

-- Use the PARTTIONED BY clause in a table definition
> CREATE TABLE student(university STRING,
                       major      STRING,
                       name       STRING)
         PARTITIONED BY(university, major)

> CREATE TABLE professor(name STRING)
         PARTITIONED BY(university STRING,
                        department STRING);

-- Use the PARTITION specification to INSERT into a table
> INSERT INTO student
         PARTITION(university= 'TU Kaiserslautern') (major, name)
         SELECT major, name FROM freshmen;

-- Use the partition specification to add and drop a partition
> CREATE TABLE log(date DATE, id INT, event STRING)
     USING CSV
     PARTITIONED BY (date);

> ALTER TABLE log ADD PARTITION(date = DATE'2021-09-10');

> ALTER TABLE log DROP PARTITION(date = DATE'2021-09-10');

-- Drop all partitions from the named university, independent of the major.
> ALTER TABLE student DROP PARTITION(university = 'TU Kaiserslautern');