Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op:
Databricks SQL
Hiermee kunt u een van de volgende acties uitvoeren:
- Voeg een schema of trigger toe voor het vernieuwen van een bestaande streamingtabel.
- Een bestaand vernieuwingsschema of een bestaande trigger voor een streamingtabel wijzigen.
- Verwijder het vernieuwingsschema of de trigger voor een streamingtabel. Als er geen planning of trigger is, moet het object handmatig worden vernieuwd om de meest recente gegevens weer te geven.
Als u een opmerking aan een streamingtabel wilt toevoegen of wijzigen, gebruikt u COMMENT ON.
Notitie
Als u een door een pijplijn gemaakte gegevensset wijzigt op een manier die in strijd is met de definitie van SQL, kunnen sommige wijzigingen worden teruggedraaid. Zie Opdrachten gebruiken ALTER met Lakeflow Spark-declaratieve pijplijnen.
Syntaxis
ALTER STREAMING TABLE table_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 }
Parameterwaarden
-
De naam van de streamingtabel waarvan de definitie moet worden gewijzigd. De naam mag geen tijdelijke specificatie bevatten.
planning
Een of-instructie
SCHEDULEaan de tabel toevoegen of wijzigenTRIGGER.Notitie
U kunt het schema van een streamingtabel die is gemaakt met Lakeflow Spark-declaratieve pijplijnen niet wijzigen met deze opdracht. Gebruik de pijplijneditor.
SCHEDULE [ REFRESH ] schedule_clauseEVERY number { HOUR | HOURS | DAY | DAYS | WEEK | WEEKS }Als u een vernieuwing wilt plannen die periodiek plaatsvindt, gebruikt u
EVERYsyntaxis. Als deEVERYsyntaxis is opgegeven, wordt de streamingtabel of gematerialiseerde weergave periodiek vernieuwd op het vastgestelde tijdsinterval aan de hand van de opgegeven waarde, zoalsHOUR,HOURS,DAY,DAYS,WEEKofWEEKS. De volgende tabel bevat geaccepteerde gehele getallen voornumber.Tijdeenheid Integerwaarde HOUR or HOURS1 <= H <= 72 DAY or DAYS1 <= D <= 31 WEEK or WEEKS1 <= W <= 8 Notitie
De enkelvoudige en meervoudvormen van de opgenomen tijdseenheid zijn semantisch gelijkwaardig.
CRON cron_string [ AT TIME ZONE timezone_id ]Een vernieuwing plannen met behulp van een Quartz cron waarde. Geldige time_zone_values worden geaccepteerd.
AT TIME ZONE LOCALwordt niet ondersteund.Als
AT TIME ZONEdeze afwezig is, wordt de sessietijdzone gebruikt. AlsAT TIME ZONEafwezig is en de sessietijdzone niet is ingesteld, wordt er een fout gegenereerd.SCHEDULEis semantisch gelijk aanSCHEDULE REFRESH.
TRIGGER ON UPDATE [ AT MOST EVERY trigger_interval ]Belangrijk
De
TRIGGER ON UPDATEfunctie bevindt zich in de bètaversie.Hiermee stelt u in dat de tabel wordt vernieuwd wanneer een upstream-gegevensbron wordt bijgewerkt, maximaal één keer per minuut. Stel een waarde in om
AT MOST EVERYminimaal een minimale tijd tussen vernieuwingen te vereisen.De upstream-gegevensbronnen moeten externe of beheerde Delta-tabellen zijn (inclusief gerealiseerde weergaven of streamingtabellen) of beheerde weergaven waarvan afhankelijkheden zijn beperkt tot ondersteunde tabeltypen.
Door bestandsevenementen in te schakelen, kunnen triggers beter presteren en worden enkele van de limieten voor triggerupdates verhoogd.
Dit
trigger_intervalis een INTERVAL-instructie die ten minste 1 minuut is.TRIGGER ON UPDATEheeft de volgende beperkingen- Niet meer dan 10 upstream-gegevensbronnen per streamingtabel wanneer u TRIGGER ON UPDATEgebruikt.
- Maximaal 1000 streamingtabellen of gerealiseerde weergaven kunnen worden opgegeven met TRIGGER ON UPDATE.
- De
AT MOST EVERYcomponent is standaard ingesteld op 1 minuut en mag niet kleiner zijn dan 1 minuut.
DROP SCHEDULEHiermee verwijdert u een schema uit de streamingtabel.
ALTER COLUMN clauseZie ALTER-clausuleCOLUMN.
-
Belangrijk
Deze functie bevindt zich in openbare preview-versie.
Hiermee voegt u een rijfilterfunctie toe aan de streamingtabel. Alle daaropvolgende query's naar de streamingtabel ontvangen een subset van de rijen waarin de functie evalueert naar een booleaanse
TRUEwaarde. Dit kan handig zijn voor verfijnde toegangsbeheerdoeleinden, waarbij de functie de identiteit of groepslidmaatschappen van de aanroepende gebruiker kan inspecteren om te bepalen of bepaalde rijen moeten worden gefilterd.Rijfilters die zijn toegevoegd nadat deze zijn gemaakt, worden na de volgende update alleen doorgegeven aan downstreamtabellen. Voor continue pijplijnen is hiervoor opnieuw opstarten van de pijplijn vereist.
DROP ROW FILTERBelangrijk
Deze functie bevindt zich in openbare preview-versie.
Verwijdert het rijfilter uit de streamingtabel, indien van toepassing. Toekomstige query's retourneren alle rijen uit de tabel zonder automatisch filteren.
SET TAGS ( { tag_name = tag_value } [, ...] )Belangrijk
Deze functie bevindt zich in openbare preview-versie.
Tags toepassen op de streamingtabel. U hebt
APPLY TAGtoestemming nodig om tags toe te voegen aan de streamingtabel.tag_nameEen letterlijke
STRING. Detag_namemoet uniek zijn binnen de streaming tabel.tag_valueEen letterlijke
STRING.
UNSET TAGS ( tag_name [, ...] )Belangrijk
Deze functie bevindt zich in openbare preview-versie.
Verwijder tags uit de streamingtabel. U moet gemachtigd zijn
APPLY TAGom tags uit de streamingtabel te verwijderen.tag_nameEen letterlijke
STRING. Detag_namemoet uniek zijn binnen de streaming tabel.
ALTER-clausule COLUMN
Belangrijk
Deze functie bevindt zich in openbare preview-versie.
Hiermee wijzigt u een eigenschap of de locatie van een kolom.
Syntaxis
ALTER COLUMN
column_identifier
{ COMMENT comment |
SET MASK mask_clause |
DROP MASK |
SET TAGS clause |
UNSET TAGS clause }
Parameterwaarden
-
De naam van de kolom die gewijzigd moet worden.
COMMENT commentHiermee wijzigt u de beschrijving van de
column_namekolom.commentmoet eenSTRINGletterlijke waarde zijn.SETMASK-clausuleVoegt een kolommaskerfunctie toe om gevoelige gegevens anoniem te maken. Alle volgende query's van die kolom ontvangen het resultaat van het evalueren van die functie ten opzichte van de kolom in plaats van de oorspronkelijke waarde van de kolom. Dit kan handig zijn voor verfijnde toegangsbeheerdoeleinden, waarbij de functie de identiteit of groepslidmaatschappen van de aanroepende gebruiker kan inspecteren om te bepalen of de waarde moet worden bewerkt.
Kolommaskers die na het maken zijn toegevoegd, worden pas na de volgende update doorgegeven aan downstream tabellen. Voor continue pijplijnen is hiervoor opnieuw opstarten van de pijplijn vereist.
DROP MASKHiermee verwijdert u het kolommasker voor deze kolom, indien van toepassing. Toekomstige query's van deze kolom ontvangen de oorspronkelijke waarden van de kolom.
SET TAGS ( { tag_name = tag_value } [, ...] )Tags toepassen op de kolom. U moet gemachtigd zijn
APPLY TAGom tags toe te voegen aan de kolom.tag_name
Een letterlijke
STRING. Detag_namenaam moet uniek zijn binnen de tabel of kolom.tag_value
Een letterlijke
STRING.
UNSET TAGS ( tag_name [, ...] )Verwijder de opgegeven tags uit de kolom. U moet gemachtigd zijn
APPLY TAGom tags uit de kolom te verwijderen.tag_name
Een letterlijke
STRING. Detag_namenaam moet uniek zijn binnen de tabel of kolom.
Voorbeelden
-- Adds a schedule to refresh the streaming table whenever its upstream data gets updated.
> ALTER STREAMING TABLE my_st
ADD TRIGGER ON UPDATE;
-- Alters the schedule to refresh the streaming table when its upstream data
-- gets updated, with no more than one update per hour.
> ALTER STREAMING TABLE my_st
ALTER TRIGGER ON UPDATE AT MOST EVERY INTERVAL 1 hour;
-- Alters the schedule to run every one hour.
> ALTER STREAMING TABLE my_st
ALTER SCHEDULE EVERY 1 HOUR;
-- Alters the schedule to refresh the streaming table once a day
-- at midnight in Los Angeles
> ALTER STREAMING TABLE my_st
ALTER SCHEDULE CRON '0 0 0 * * ? *' AT TIME ZONE 'America/Los_Angeles';
-- Drops the schedule for a streaming table
> ALTER STREAMING TABLE my_st
DROP SCHEDULE;
-- Adds a column comment
> ALTER STREAMING TABLE my_st
ALTER COLUMN column_name COMMENT 'test'