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à 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.