0 / 0

Partizionamento e raccolta dei dati in DataStage

Ultimo aggiornamento: 12 mar 2025
Partizionamento e raccolta di dati in DataStage

Utilizzare la sezione Partizionamento in DataStage® stage o connettori che dispongono di schede di input per specificare i dettagli relativi al modo in cui lo stage o il connettore esegue la raccolta dei dati sul link corrente prima di elaborare i dati o di scrivere i dati su una destinazione dati.

Il partizionamento dei dati è un approccio al parallelismo che implica la suddivisione della serie di record in partizioni o sottoserie di record. Se non esistono vincoli di risorsa o altri problemi di disallineamento dei dati, il partizionamento dei dati può fornire incrementi lineari nelle prestazioni dell'applicazione. DataStage partiziona automaticamente i dati in base ai tipi di partizione richiesti dallo stage.

È inoltre possibile utilizzare la sezione Partizionamento per ordinare i dati che arrivano sul link di input prima che i dati vengano elaborati o scritti nella destinazione dati. La disponibilità dell'ordinamento dipende dal metodo di partizionamento o di raccolta scelto. Non è disponibile con i metodi Auto. La sezione Partizionamento fornisce funzioni di ordinamento di base. Per un'operazione di ordinamento più complessa, utilizzare lo stage Sort.

La sezione Partizionamento contiene i seguenti controlli e campi:
Partizionamento
Scegliere il tipo di partizionamento dall'elenco.
L'elenco Tipo di partizione è disponibile se la Modalità di esecuzione è impostata su parallelo nella scheda Stage. Se si seleziona un metodo dall'elenco, il metodo sovrascrive qualsiasi metodo di partizionamento corrente.
Sono disponibili i seguenti tipi di partizionamento:
(Automatico)
In fase di esecuzione, il motore tenta di elaborare il miglior metodo di partizionamento, a seconda di:
  • Se gli stage corrente e precedente sono impostati per essere eseguiti in modalità sequenziale o in modalità parallela.
  • Se gli stage precedenti nel job hanno l'opzione Preserva partizionamento impostata.
  • Quanti nodi sono specificati nel file di configurazione.
Auto è il metodo predefinito per la maggior parte degli stage, ma Auto non è disponibile per lo stage Lookup File Set o lo stage Db2 Enterprise.
DB2 Connector
Questo tipo di partizione è disponibile solo per il connettore IBM Db2 for DataStage . Quando viene specificato questo metodo, il connettore determina il numero di partizioni nella tabella specificata nella proprietà Metodo di lettura partizionato > Nome tabella e configura dinamicamente il numero di nodi in modo che corrisponda al numero di partizioni. Per le tabelle Db2® per LUW (Linux, UNIX e Windows), questo numero è il numero di partizioni DPF (Database Partitioning Feature) presenti nella tabella. Per tabelle Db2 for z/OS® , questo numero è il numero di partizioni di tabella nella tabella. Il connettore associa ciascun nodo ad una partizione. Per ciascun nodo, il connettore legge le righe che appartengono alla partizione associata a tale nodo.
Intero
Ogni nodo di elaborazione riceve l'intero dataset.
Casuale
Le righe sono suddivise in partizioni casuali, in base all'output di un generatore di numeri casuali.
Round robin
Le righe vengono suddivise in partizioni su base round - robin man mano che entrano nello stage.
Uguale
Questo metodo conserva le partizioni dati correnti.
Modulo
Le righe vengono partizionate utilizzando una funzione modulo sulla colonna chiave.
Hash
Le righe vengono hash in partizioni in base al valore di una o più colonne chiave.
Range
Questo metodo divide un dataset in partizioni di dimensioni approssimativamente uguali basate su una o più chiavi di partizionamento. Il partizionamento dell'intervallo viene spesso utilizzato come fase preparatoria per l'esecuzione di un ordinamento totale su un dataset.
Raccolta
Scegliere il tipo di raccolta dall'elenco.

L'elenco Tipo di raccolta è disponibile se lo stage è impostato per l'esecuzione in modalità sequenziale e lo stage precedente è impostato per l'esecuzione in modalità parallela. Se si seleziona un metodo dall'elenco, il metodo sovrascrive il metodo di raccolta predefinito Auto.

Sono disponibili i seguenti tipi di raccolta:
(Automatico)
Il metodo Auto di solito fa sì che lo stage legga qualsiasi riga da qualsiasi partizione di input man mano che la riga diventa disponibile ed è il metodo di raccolta più veloce. Tuttavia, lo stage può utilizzare un metodo di raccolta diverso quando Auto è impostato in alcune circostanze. Ad esempio, se lo stage richiede che i dati vengano ordinati prima di poter funzionare, lo stage ordina i dati.
Ordinato
Questo metodo legge tutte le righe dalla prima partizione, quindi tutte le righe dalla seconda partizione e così via.
Round robin
Questo metodo legge una riga dalla prima partizione di input, una riga dalla seconda partizione e così via. Dopo aver raggiunto l'ultima partizione, lo stage inizia di nuovo dalla prima partizione.
Unione con ordinamento
Questo metodo legge le righe in un ordine basato su una o più colonne della riga.
Ordinamento
Utilizzare questi controlli per specificare come ordinare i dati. I dati vengono sempre ordinati all'interno delle partizioni di dati. Se lo stage sta partizionando i dati in entrata, i dati vengono ordinati dopo il partizionamento. Se lo stage sta raccogliendo dati in ingresso, i dati vengono ordinati prima della raccolta.
Ordinamento
Selezionare Esegui ordinamento per ordinare i dati che arrivano sul link.
Stabile
Selezionare Stabile se si desidera conservare i dataset ordinati in precedenza. Stabile è impostato per default.
Univoco
Selezionare Univoco se si desidera conservare solo un record per valore chiave di ordinamento. Se più record hanno valori chiave di ordinamento identici, tutti tranne uno vengono eliminati. Se è impostato anche l'ordinamento stabile, il primo record con il valore della chiave di ordinamento è il record che viene conservato.

File di configurazione generati dinamicamente in DataStage

DataStage non supporta i file di configurazione generati dall'utente. È possibile fornire il numero di partizioni per i file di configurazione generati dinamicamente impostando il numero di partizioni nell'ambiente di runtime o impostando la variabile d'ambiente " APT_WLM_PARTITION_COUNT per il numero di partizioni.