Introduction to the Netezza Matrix Engine

The Netezza Matrix Engine (nzMatrix) is a parallelized linear algebra package. It provides a wide range of computations and manipulations that can be run on very large matrices. Using fully distributed and parallelize memory, processing, and database storage, nzMatrix performs computations comparable in size to the available aggregate RAM of the Netezza appliance. It scales to hundreds of gigabytes of RAM, hundreds of processing cores, and hundreds of terabytes of data storage. The Netezza Matrix Engine provides access to highly scalable matrix operations.

With nzMatrix, matrices are transparently stored in IBM Netezza Analytics, allowing matrix data transfer directly to and from the database and the distributed matrix engine.

Netezza Matrix Engine Functions

The Netezza Matrix Engine Provides a wide variety of functions:
  • Linear algebra functions
    • Matrix multiplication
    • Linear equations solving
    • Linear least squares
    • Matrix inversion
    • Eigenvalues and eigenvectors
    • Singular value decomposition
  • Matrix element-wise, pair-wise, and reduction functions
  • Inquiry and housekeeping functions
  • Random number generators (RNGs)

Applications for nzMatrix

The Netezza Matrix Engine has many areas of application in business and research:
  • Principal Component Analysis (PCA)
  • Clustering and prediction
  • Dimension reduction for data mining
  • Customer segmentation, behavioral targeting, customer loyalty
  • Social network analysis, such as marketing and counter-terrorism
  • Unsupervised leaning, latent semantic indexing
  • Signal processing, image processing, data compression
  • Recommender systems, such as Netflix Prize
  • Microarray Data Analysis, such as bioinformatics and genomics
  • Mathematical finance