Matrix Architecture and Application Development

Days: 3
Version: 5.2

You will learn:

At the end of this course you will be able to:

  • Understand Matrix concepts and architecture
  • Configure your Matrix systems
  • Gain an appreciation of Statistics, including multi-column (KVM)
  • Set up Matrix Security: users, groups, types of permission by object type, superusers
  • Obtain a good knowledge of Matrix SQL
  • Use Matrix ODIs to interface with external data sources and protocols
  • Understand Query Execution Plans and resource management
  • Write basic User Defined Functions

 Course Style

The course consists of lecture, presented as slides and whiteboard, and demonstrations.  It's very interactive, and everyone is encouraged to ask questions and offer insights.

 Who Should Attend

This course is for developers and super users.  DBAs and more technical managers would benefit from the first day, where architecture and concepts are covered.


      • A good knowledge of SQL
      • Attendance at the MatrixDBM training, or equivalent experience and skill.

Key Topics

        • Matrix concepts and architecture
          • MPP, role of multiple machines
          • Raw storage
          • Key terms: block, slice, superblock
          • Columnar storage
          • Distribution keys, sort keys
          • Concurrency model
          • Vacuum
          • Compiled queries
          • Important files and directories in a Matrix cluster
        • Configuration
          • Main config file
          • Client access
        • Getting started
          • Basic database operations with cqi
          • Access the database with psql, including slash commands
          • Search path
        • Statistics, including multi-column (KVM)
        • Security: users, groups, types of permission by object type, superusers
        • SQL
          • Matrix datatypes
          • Typecasts
          • LIMIT
          • Best practices (common table expressions, OLAP functions)
          • Immediate use of aliases
        • System catalog
        • Loading and unloading data
        • ODIs
        • Query execution
          • Planner, compilation, cache
          • Execution plans
          • Query working memory, spilling to disk
          • Workload management
        • Backup and restore
        • User Defined Functions
          • Language: SQL
          • Language: PLPGSQL
          • Language: C++ (scalar, table)


Please Note

This course requires access to Amazon Web Services (AWS) or similar for practical sessions and therefore for external courses access to the internet is required and all associated AWS costs will be passed onto the customer.