Verwendung von Map/Reduce-AEs in SQL-Abfragen

Das Map/Reduce-Framework Netezza Analytics bietet die Möglichkeit, Mapper und Reducer direkt aus nzsql aufzurufen. Es gibt drei allgemeine Analytic Executables (AEs), die mit der mapreduce-Cartridge in der inza-Datenbank registriert sind. Diese können in einer SQL-Abfrage verwendet werden, um einen bestimmten Mapper, Reducer oder Combiner aus einer Java-Klasse auszuführen. Die AEs werden als benutzerdefinierte Tabellenfunktionen (UDTF) mit den folgenden Namen registriert:
  • MapperAE
  • ReducerAE
  • CombinerAE

Diese SARs haben eine gemeinsame Signatur:

<Aufgabe>AEK1, ... , Kn, V1, ... , Vm,NZAE_PARAMETER2=<conf.xml>')

Dabei gilt:
K1, ... , Kn
Die Schlüsselspalten.
V1, ... ,Vm
Die Wertespalten,
<conf.xml>
Der Pfad zu einer Konfigurationsdatei, die alle für die Ausführung der Aufgabe erforderlichen Eigenschaften enthält.

Eigenschaften

In der folgenden Tabelle sind die für jede AE verfügbaren Eigenschaften aufgeführt.
Tabelle 1.
Eigenschaft Zuordnungsfunktion Mähdrescher Reduzierstück
mapreduce.job.run.dir ERFORDERLICH JA JA
mapreduce.job.jar ERFORDERLICH, wenn Job's jar verfügbar ist ERFORDERLICH, wenn Job's jar verfügbar ist ERFORDERLICH, wenn Job's jar verfügbar ist
mapreduce.job.map.class ERFORDERLICH    
mapreduce.map.input.key.class ERFORDERLICH    
mapreduce.map.input.value.class ERFORDERLICH    
mapreduce.map.output.key.class ERFORDERLICH ERFORDERLICH JA
mapreduce.map.output.key.columns.sizes ERFORDERLICH    
mapreduce.map.output.value.class ERFORDERLICH ERFORDERLICH JA
mapreduce.map.output.value.columns.sizes ERFORDERLICH    
mapreduce.job.combine.class ERFORDERLICH ERFORDERLICH  
mapreduce.combine.output.key.class ERFORDERLICH ERFORDERLICH ERFORDERLICH, wenn mapreduce.job.combine.class definiert ist
mapreduce.combine.output.key.columns.sizes ERFORDERLICH ERFORDERLICH  
mapreduce.combine.output.value.class ERFORDERLICH ERFORDERLICH ERFORDERLICH, wenn mapreduce.job.combine.class definiert ist
mapreduce.combine.output.value.columns.sizes   ERFORDERLICH  
mapreduce.job.reduce.class     ERFORDERLICH
mapreduce.reduce.output.key.class     ERFORDERLICH
mapreduce.reduce.output.key.columns.sizes     ERFORDERLICH
mapreduce.reduce.output.value.class     ERFORDERLICH
mapreduce.reduce.output.value.columns.sizes     ERFORDERLICH