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


ALTER MATERIALIZED VIEW

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

Módosítja a nézethez társított metaadatokat.

Lehetővé teszi az alábbi műveletek bármelyikének végrehajtását:

  • Adjon ütemezést a meglévő materializált nézet frissítéséhez.
  • Egy materializált nézet meglévő frissítési ütemezésének módosítása.
  • A materializált nézet frissítési ütemezésének elvetése. Ha az ütemezés el lett vetve, az objektumot manuálisan kell frissíteni, hogy tükrözze a legújabb adatokat.

Ha egy materializált nézethez megjegyzést szeretne hozzáadni vagy módosítani, használja a következőt COMMENT ON: .

Feljegyzés

A folyamat által létrehozott adatkészletek olyan módon történő módosítása, amely ellentmond a definiált SQL-nek, bizonyos módosítások visszaállítását okozhatja. Lásd: Parancsok használata ALTER a Lakeflow Spark deklaratív csővezetékeivel.

Szintaxis

ALTER MATERIALIZED VIEW view_name
  {
    { ADD | ALTER } schedule |
    DROP SCHEDULE |
    ALTER COLUMN column_clause |
    SET ROW FILTER clause |
    DROP ROW FILTER |
    SET TAGS clause |
    UNSET TAGS clause }

  schedule
    { SCHEDULE [ REFRESH ] schedule_clause |
      TRIGGER ON UPDATE [ AT MOST EVERY trigger_interval ] }

  schedule_clause
    { EVERY number { HOUR | HOURS | DAY | DAYS | WEEK | WEEKS } |
      CRON cron_string [ AT TIME ZONE timezone_id ] }

  column_clause
    column_identifier
    { COMMENT clause |
      SET MASK clause |
      DROP MASK |
      SET TAGS clause |
      UNSET TAGS clause }

Paraméterek

  • view_name

    A materializált nézet neve a definíció módosításához. A név nem tartalmazhat időbeli specifikációt.

  • menetrend

    Adjon hozzá vagy módosítson egy vagy SCHEDULE több TRIGGER utasítást a materializált nézetben.

    Feljegyzés

    Ezzel a paranccsal nem módosíthatja a Lakeflow Spark Deklaratív folyamatokkal létrehozott materializált nézet ütemezését. Használja a folyamatszerkesztőt.

    • SCHEDULE [ REFRESH ] schedule_clause

      • EVERY number { HOUR | HOURS | DAY | DAYS | WEEK | WEEKS }

        A rendszeres frissítés ütemezéséhez használja EVERY szintaxist. Ha EVERY szintaxis van megadva, a streamelési táblázat vagy a materializált nézet rendszeres időközönként frissül a megadott érték alapján, például HOUR, HOURS, DAY, DAYS, WEEKvagy WEEKS. Az alábbi táblázat a numberelfogadott egész számértékeket sorolja fel.

        Időegység Egész számérték
        HOUR or HOURS 1 <= H <= 72
        DAY or DAYS 1 <= D <= 31
        WEEK or WEEKS 1 <= W <= 8

        Feljegyzés

        A belefoglalt időegység egyes és többes formái szemantikailag egyenértékűek.

      • CRON cron_string [ AT TIME ZONE timezone_id ]

        Frissítés ütemezése a quartz cron érték használatával. Az érvényes time_zone_values elfogadásra kerülnek. AT TIME ZONE LOCAL nem támogatott.

        Ha AT TIME ZONE hiányzik, a munkamenet időzónája lesz használatban. Ha AT TIME ZONE hiányzik, és a munkamenet időzónája nincs beállítva, hibaüzenet jelenik meg. SCHEDULE szemantikailag egyenértékű a SCHEDULE REFRESH.

    • TRIGGER ON UPDATE [ AT MOST EVERY trigger_interval ]

      Fontos

      A TRIGGER ON UPDATE funkció bétaverzióban érhető el.

      Beállítja a materializált nézet frissítését egy felsőbb rétegbeli adatforrás frissítésekor, legfeljebb percenként egyszer. Állítson be egy értéket AT MOST EVERY , amely legalább egy minimális időt igényel a frissítések között.

      A felsőbb rétegbeli adatforrásoknak külső vagy felügyelt Delta-tábláknak kell lenniük (beleértve a materializált nézeteket vagy streamelő táblákat), vagy felügyelt nézeteknek, amelyek függőségei a támogatott táblatípusokra korlátozódnak.

      A fájlesemények engedélyezésével az eseményindítók teljesítményesebbek lehetnek, és növelik a triggerfrissítések korlátait.

      Az trigger_intervalINTERVALLUM utasítás legalább 1 perc.

      TRIGGER ON UPDATE az alábbi korlátozásokkal rendelkezik:

      • A TRIGGER ON UPDATEhasználatakor nem lehet több, mint 10 felsőbb rétegbeli adatforrás materializált nézetenként.
      • A TRIGGER ON UPDATEhasználatával legfeljebb 1000 streamelési táblázat vagy materializált nézet adható meg.
      • A AT MOST EVERY záradék alapértelmezés szerint 1 perc, és nem lehet kevesebb, mint 1 perc.
  • DROP SCHEDULE

    Eltávolít egy ütemezést a materializált nézetből.

  • ALTER COLUMN clause

    Lásd ALTER COLUMN utasítás.

  • SET ROW FILTER záradék

    Fontos

    Ez a funkció nyilvános előzetes verzióban van.

    Sorszűrő függvényt ad hozzá a materializált nézethez. A materializált nézetben az összes későbbi lekérdezés megkapja azoknak a soroknak a részhalmazát, ahol a függvény logikai TRUE értékre értékelődik. Ez hasznos lehet részletes hozzáférés-vezérlési célokra, ahol a függvény megvizsgálhatja a meghívást hívó felhasználó identitását vagy csoporttagságát annak megállapításához, hogy szűrjön-e bizonyos sorokat.

    A létrehozás után hozzáadott sorszűrők csak a következő frissítés után propagálnak az alsóbb rétegbeli táblákba. Folyamatos folyamatok esetén ez folyamat újraindítást igényel.

  • DROP ROW FILTER

    Fontos

    Ez a funkció nyilvános előzetes verzióban van.

    Ha van ilyen, eltávolítja a sorszűrőt a materializált nézetből. A jövőbeli lekérdezések automatikus szűrés nélkül visszaadják a tábla összes sorát.

  • SET TAGS ( { tag_name = tag_value } [, ...] )

    Fontos

    Ez a funkció nyilvános előzetes verzióban van.

    Címkék alkalmazása a materializált nézetre. Rendelkeznie kell APPLY TAG engedéllyel ahhoz, hogy címkéket adjon hozzá a materializált nézethez.

    • tag_name

      Egy szó szerinti STRING. A tag_name materializált nézetben vagy oszlopban egyedinek kell lennie.

    • tag_value

      Egy szó szerinti STRING.

  • UNSET TAGS ( tag_name [, ...] )

    Fontos

    Ez a funkció nyilvános előzetes verzióban van.

    Címkék eltávolítása a materializált nézetből. Rendelkeznie APPLY TAG kell engedéllyel ahhoz, hogy eltávolítsa a címkéket a materializált nézetből.

    • tag_name

      Egy szó szerinti STRING. A tag_name materializált nézetben vagy oszlopban egyedinek kell lennie.

ALTER COLUMN záradék

Fontos

Ez a funkció nyilvános előzetes verzióban van.

Módosít egy tulajdonságot vagy egy oszlop helyét.

Szintaxis

  ALTER COLUMN
    column_identifier
    { COMMENT comment |
      SET MASK mask_clause |
      DROP MASK |
      SET TAGS clause |
      UNSET TAGS clause }

Paraméterek

  • column_identifier

    A módosítani kívánt oszlop neve.

  • COMMENT comment

    Módosítja a column_name oszlop leírását. comment egy literál kell, hogy legyen STRING.

  • SET MASZK záradék

    Olyan oszlopmaszk funkciót ad hozzá, amely lehetővé teszi a bizalmas adatok anonimizálását. Az oszlop minden további lekérdezése megkapja a függvény kiértékelésének eredményét az oszlopon az oszlop eredeti értéke helyett. Ez hasznos lehet részletes hozzáférés-vezérlési célokra, ahol a függvény megvizsgálhatja az invokáló felhasználó identitását vagy csoporttagságát annak megállapításához, hogy az értéket újra kívánja-e használni.

    A létrehozás után hozzáadott oszlopmaszkok csak a következő frissítés után terjednek át a lefelé irányuló táblákra. Folyamatos folyamatok esetén ez folyamat újraindítást igényel.

  • DROP MASK

    Eltávolítja az oszlophoz tartozó oszlopmaszkot, ha van ilyen. Az oszlop jövőbeli lekérdezései megkapják az oszlop eredeti értékeit.

  • SET TAGS ( { tag_name = tag_value } [, ...] )

    Címkék alkalmazása az oszlopra. Az oszlophoz címkék hozzáadásához APPLY TAG engedéllyel kell rendelkeznie.

    • tag_name

      Egy szó szerinti STRING. A tag_name egyedinek kell lennie a táblában vagy oszlopban.

    • tag_value

      Egy szó szerinti STRING.

  • UNSET TAGS ( tag_name [, ...] )

    Távolítsa el a megadott címkéket az oszlopból. Az oszlop címkéinek eltávolításához APPLY TAG engedéllyel kell rendelkeznie.

    • tag_name

      Egy szó szerinti STRING. A tag_name egyedinek kell lennie a táblában vagy oszlopban.

Példák

-- Adds a schedule to refresh the materialized view whenever its upstream data gets updated.
> ALTER MATERIALIZED VIEW my_mv
    ADD TRIGGER ON UPDATE;

-- Alters the schedule to refresh the materialized view when its upstream data
-- gets updated, and make sure the update frequency is no more than 1 update
-- per hour.
> ALTER MATERIALIZED VIEW my_mv
    ALTER TRIGGER ON UPDATE AT MOST EVERY INTERVAL 1 hour;

-- Alters the schedule to run every two hours for a materialized view
> ALTER MATERIALIZED VIEW my_mv
    ALTER SCHEDULE EVERY 2 HOURS;

-- Alters the schedule to refresh a materialized view once a day
-- at midnight in Los Angeles
> ALTER MATERIALIZED VIEW my_mv
    ALTER SCHEDULE CRON '0 0 0 * * ? *' AT TIME ZONE 'America/Los_Angeles';

-- Drops the schedule for a materialized view
> ALTER MATERIALIZED VIEW my_mv
    DROP SCHEDULE;

-- Adds a column comment
> ALTER MATERIALIZED VIEW my_mv
    ALTER COLUMN my_column_name COMMENT 'test'