Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

HAWQ Vectorized Execution Design:

Vectorized Execution(VE) is an advanced technique in database query execution stage. HAWQ is supported via vexecutor plugin.via vexecutor plugin/extension, please refer to the design doc:

HAWQ Vectorized Execution design


Installation and Activation

  1. Make sure HAWQ compilation and installation success.

  2. Check if vexecutor.so is installed into HAWQ execution directory.  If not, you can execute "make ;make install" in contrib/vexecutor directory to install it.

  3. Add library name "vexectorvexecutor" to "shared_preload_libraries" in postgresql.conf which has to copies allocated in master and segment data directories respectively. Make sure both of them is assigned. (E.g. postgresql.conf: shared_preload_libraries = 'vexectorvexecutor')

  4. Restart HAWQ cluster

  5. Execute "create_udv.sql" with psql. then some vectorized data types and vectorized aggregate functions will be add to HAWQ.

  6. How to remove Vectorized Execution: 

    • Delete metadata by executing "clean_udv.sql" in psql.
    • Remove 'vexectorvexecutor' from shared_preload_libraries in postgresql.conf
    • Restart HAWQ cluster

...