Hvad er en Skemafil i DataStage?

SCHEMA-FILES-IN-DATASTAGE

som udvikler definerer du altid kolonnerne og deres datatyper i fanen ‘kolonne’ i hvert trin.

ved du, du har en anden måde at definere andre kolonner end fanen kolonner?

skemaer er en alternativ måde at specificere kolonnedefinitioner for de data, der bruges af parallelle job.

som du ved, tager de fleste parallelle jobfaser som standard deres metadata fra fanen kolonner, som indeholder tabeldefinitioner, suppleret, om nødvendigt med formatoplysninger fra fanen Format.

i nogle faser kan du angive en egenskab, der får scenen til at tage sine metadata fra den angivne skemafil i stedet.

Læs også: forskel mellem link sortering og sorteringsfase

nogle trin giver os også mulighed for at specificere et delvis skema. Dette giver dig mulighed for kun at definere de kolonner, som et bestemt trin behandler, og ignorere resten af kolonnerne.

skemafilen er en almindelig tekstfil. Og det er at foretrække at gemme det med ‘.schema ‘ udvidelse, så du nemt kan identificere dem i filsystemet.

Skema filformat:

et skema indeholder en post (eller række) definition. Dette beskriver hver kolonne (eller felt), der vil blive stødt på i posten, med kolonnenavn og datatype. Følgende er et eksempel record skema:

record (
navn: string;
adresse:nullable string;
value1: int32;
value2: int32;
dateofbirth: date)

linjeskiftene er der for at lette læsningen, hvis du vil, kan du udelade disse, hvis du definerede et delvis skema, for eksempel

record(navn:string;value1:int32; dateofbirth: date)

er et gyldigt skema.

formatet for hver linje, der beskriver en kolonne, er:

column_name:datatype;

kolonnenavn: dette er navnet, der identificerer kolonnen. Navne skal starte med et bogstav eller en understregning ( _ ) og kan kun indeholde alfanumeriske eller understregningstegn. Navnet er ikke store og små bogstaver.

nullability: du kan eventuelt angive, om en kolonne har lov til at indeholde en null-værdi, eller om dette vil blive betragtet som ugyldigt. Hvis kolonnen kan være null, skal du indsætte ordet ‘nullable’. Kolonner kan som standard ikke annulleres.

du kan også inkludere ‘nullable’ på rekordniveau for at angive, at alle kolonner er nullable, og derefter tilsidesætte indstillingen for individuelle kolonner ved at angive ‘not nullable’. For eksempel:

Optag nullable (
navn:ikke nullable string;
value1: int32;
datoafbirth: date)

datatype: Dette er datatypen for kolonnen. Dette bruger de interne datatyper, men ikke datatyper, som bruges på Kolonnefaner i sceneditorer.

du kan medtage kommentarer i skemadefinitionsfiler. En kommentar startes af en dobbelt skråstreg / / og afsluttes med en ny linje.

du skal altid sikre dig, at runtime Column formering er slået til, hvis du vil bruge skemafiler til at definere kolonne metadata.

Læs også: hvordan fungerer FELTFUNKTIONEN i DataStage?

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.