# Actian Vector

Actian Vector (formerly known as VectorWise) is an SQL relational database management system designed for high performance in analytical database applications. It published record breaking results on the Transaction Processing Performance Council's TPC-H benchmark for database sizes of 100 GB, 300 GB, 1 TB and 3 TB on non-clustered hardware.
Vectorwise originated from the X100 research project carried out within the Centrum Wiskunde & Informatica (CWI, the Dutch National Research Institute for Mathematics and Computer Science) between 2003 and 2008. It was spun off as a start-up company in 2008, and acquired by Ingres Corporation in 2011. It was released as a commercial product in June, 2010, initially for 64-bit Linux platform, and later also for Windows. Starting from 3.5 release in April 2014, the product name was shortened to "Vector". In June 2014, Actian Vortex was announced as a clustered massive parallel processing version of Vector, in Hadoop with storage in HDFS. Actian Vortex was later renamed to Actian Vector in Hadoop.

## Technology

The basic architecture and design principles of the X100 engine of the VectorWise database were well described in two Phd theses of VectorWise founders Marcin Żukowski: "Balancing Vectorized Query Execution with Bandwidth-Optimized Storage" and Sandor Héman: "Updating Compressed Column Stores", under supervision of another founder, professor Peter Boncz. The X100 engine was integrated with Ingres SQL front-end, allowing the database to use the Ingres SQL syntax, and Ingres set of client and database administration tools.
The query execution architecture makes use of "Vectorized Query Execution" — processing in chunks of cache-fitting vectors of data. This allows to involve the principles of vector processing and single instruction, multiple data (SIMD)— to perform the same operation on multiple data simultaneously and exploit data level parallelism on modern hardware. It also reduces overheads found in traditional "row-at-a-time processing" found in most RDBMSes.
The database storage is in a compressed column-oriented format, with scan-optimised buffer manager. In Actian Vortex in HDFS the same proprietary format is used.
Loading big amounts of data is supported through direct appends to stable storage, while small transactional updates are supported through patent-pending Positional Delta Trees (PDTs) — specialized B-tree-like structures of indexed differences on top of stable storage, which are seamlessly patched during scans, and which are transparently propagated to stable storage in a background process. The method of storing differences in patch-like structures and rewriting the stable storage in bulk made it possible to work in a filesystem like HDFS, in which files are append-only.

## History

A comparative Transaction Processing Performance Council TPC-H performance test of MonetDB carried out by its original creator at Centrum Wiskunde & Informatica (CWI) in 2003 showed room for improvement in its performance as an analytical database. As a result, CWI researchers proposed a new architecture using pipelined query processing ("vectorised processing") to improve the performance of analytical queries. This led to the creation of the "X100" project, with the intention of designing a new kernel for MonetDB, to be called "MonetDB/X100".
The X100 project team won the 2007 DaMoN Best Paper Award for the paper "Vectorized Data Processing on the Cell Broadband Engine" as well as the 2008 DaMoN Best Paper Award for the paper "DSM vs. NSM: CPU Performance Tradeoffs in Block-Oriented Query Processing".
In August 2009 the originators for the X100 project won the "Ten Year Best Paper Award" at the 35th International Conference on Very Large Data Bases (VLDB) for their 1999 paper "Database architecture Optimized for the new bottleneck: Memory access". It was recognised by the VLDB that the project team had made great progress in implementing the ideas contained in the paper over the previous 10 years. The central premise of the paper is that traditional relational database systems were designed in the late 1970s and early 1980s during a time when database performance was dictated by the time required to read from and write data to hard disk. At that time available CPU was relatively slow and main memory was relatively small, so that very little data could be loaded into memory at a time. Over time hardware improved, with CPU speed and memory size doubling roughly every two years in accordance with Moore’s law, but that the design of traditional relational database systems had not adapted. The CWI research team described improvements in database code and data structures to make best use of modern hardware.
In 2008 the X100 project was spun off from MonetDB as a separate project, with its own company, and renamed "VectorWise". Co-founders included Peter A. Boncz and Marcin Żukowski.
In June 2010, the VectorWise technology was officially announced by Ingres Corporation, with the release of Ingres VectorWise 1.0.
In March 2011, VectorWise 1.5 was released, publishing a record breaking result on TPC-H 100 GB benchmark. New features included parallel query execution (single query executed on multiple CPU cores), improved bulk loading and enhanced SQL support. In June 2011, VectorWise 1.6 was released, publishing record breaking results on TPC-H 100 GB, 300 GB and 1 TB non-clustered benchmark.
In December 2011, VectorWise 2.0 was released with new SQL support for analytical functions such as rank and percentile and enhanced date, time and timestamp datatypes, and support for disk spilling in hash joins and aggregation.
In June 2012, VectorWise 2.5 was released. In this release storage format was reorganized to allow storing the database in multiple location, the background update propagation mechanism from PDTs to stable storage was enhanced to allow rewriting only the changed blocks instead of full rewrites, and a new patented Predictive Buffer Manager (PBM) was introduced.
In March 2013, VectorWise 3.0 was released. New features included more efficient storage engine, support for more data types and analytical SQL functions, enhanced DDL features, and improved monitoring and profiling accessibility.
In March 2014, Actian Vector 3.5 was released, with a new rebranded and shortened name. New features included support for partitioned tables, improved disk spilling, online backup capabilities and improved SQL support - e.g. MERGE/UPSERT DML operations and FIRST_VALUE and LAST_VALUE window aggregation functions.
In June 2014, at Hadoop Summit 2014 in San Jose, Actian announced Actian Vortex — clustered MPP version of Vector, with same level of SQL support working in Hadoop with storage directly in HDFS. Actian Vortex was later renamed to Actian Vector in Hadoop, and non-clustered Actian Vector releases are also updated to match. In March 2015 Actian Vector 4 was released, and Actian Vector in Hadoop 4 was released in December 2015.
In March 2019, Actian Avalanche was released as a cloud data platform, with Vector as the core engine for the Warehouse offering. In November 2023, Actian rebranded and relaunched Avalanche as Actian Data Platform, including new capabilities for Data Quality.

## Release history
### Actian Vector

| Release | General availability | End of Enterprise Support | End of Extended Support | End of Obsolescence Support | Marquee Features |
| Current stable version: 7.0 (Linux) | October 22, 2024 | October 31, 2027 | October 31, 2029 | October 31, 2031 | Auto Partitioning, Developer SDK, Table Cloning, Advanced External Tables, Spark UDFs, REGEX Pattern Matching, ML Inference using TensorFlow |
| Old version, yet still maintained: 6.3 | December, 2022 | December 31, 2025 | December 31, 2027 | December 31, 2029 | Automatic Log Rotation, Add UDF Engine Startup to Ingstart Utility, Exception Handling in Database Procedures, Extend Pattern-Matching Capabilities, Extend UDF visibility, Query Result Caching - Spill to Disk, Remote File System Support for Vector Non-MPP, Smart MinMax Index, Warm Standby |
| Old version, yet still maintained: 6.2 | November, 2021 | November 30, 2024 | November 30, 2026 | November 30, 2028 | Automatic Partitioning, Query Result Caching, Spark Vector Connector 3.0, UUID support for the ODBC driver, Workload Management Enhancements, Scalar User-defined Functions Enhancements, Encryption Key Management |
| Old version, yet still maintained: 6.0 | June, 2020 | June 30, 2023 | June 30, 2025 | June 30, 2027 | JSON Support, Scalar UDFs, Workload Management, Reverse Strings, Data at Rest Encryption Enhancements, Wildcards in File Names for COPY VWLOAD, Pivot Tables, External Table Enhancement |
| Old version, yet still maintained: 5.1 (Windows - extended) | May, 2018 | September 30, 2021 | September 30, 2023 | September 30, 2025 | Function-based encryption, Column masking, External tables, MEDIAN and PERCENTILE_CONT aggregate functions, Support for Vector tables in database procedures, Alterable min-max index, Nullable unique keys |
| Old version, yet still maintained: 5.1 (Linux) | May, 2018 | June 30, 2021 | June 30, 2023 | June 30, 2025 | Vector 5.1 was made available in the Amazon AWS Marketplace and the Microsoft Azure Marketplace for deployment in the cloud |
| Old version, no longer maintained: 5.0 | June, 2016 | June 30, 2020 | June 30, 2022 | June 30, 2024 | UUID data type and functions, Clonedb utility, SQL syntax for parallel vwload and CSV export, Spark-Vector Connector enhancements, Distributed Write Ahead Log, Automatic histogram generation for statistics, SET SERVER_TRACE and SET SESSION_TRACE statements |
| Old version, no longer maintained: 4.x | March, 2015 | December 31, 2018 | December 31, 2020 | December 31, 2022 | Query level auditing (C2 security), Data at rest encryption, Statements MODIFY…TO COMBINE and MODIFY…TO RECONSTRUCT, CREATE/DROP STATISTICS statements, INTERSECT/EXCEPT set operators, CREATE TABLE IF NOT EXISTS statement, Aggregate Window Functions additions, Spark-Vector Connector and Loader, min-max indexes on a subset of columns |
| Old version, no longer maintained: 3.5.x | March, 2014 | March 31, 2017 | March 31, 2019 | March 31, 2021 | Partitioned tables, Parallel vwload, I/O performance improvements, Secondary Indexes, Incremental Backup, MERGE statement, FIRST_VALUE and LAST_VALUE functions, Declaration-only constraints |
| Old version, no longer maintained: 3.0.x | April, 2013 | April 15, 2016 | April 30, 2017 | Not Available | New Analytical Functions and SQL extensions (e.g. LAG, LEAD, ROLLUP, CUBE, etc.), New Data Types and Functions, Time zone support, Performance and Connectivity enhancements. In SP1, key updates include: IPV4 and IPV6 data types, New SQL functions, Disaster Recovery and High Availability improvements. |
| Old version, no longer maintained: 2.5.x | June, 2012 | June 1, 2015 | April 30, 2017 | Not Available | |
| Old version, no longer maintained: 2.0.x | November, 2011 | November, 2011 | April 30, 2017 | Not Available | |

### Actian Vector in Hadoop

| Release | General availability | End of Enterprise Support | End of Extended Support | End of Obsolescence Support | Marquee Features |
| Old version, yet still maintained: 6.0 | April 24, 2020 | April 30, 2023 | April 30, 2026 | Not Available | Same list of improvements made available in Vector 6.0 |
| Old version, no longer maintained: 5.1 | November, 2018 | November 30, 2021 | November 30, 2023 | Not Available | Support for HDFS Federation, Support for ADL Storage (Gen 1 and 2), Data Import/Export enhancements, Database Administration and Performance improvements, External Tables enhancement |
| Old version, no longer maintained: 5.0 | October, 2018 | October 31, 2020 | October 31, 2022 | Not Available | Detection of Hadoop YARN resources at install time, Support for Apache Knox and Apache Ranger, Data Import/Export enhancements, Database Administration and Performance improvements, External Tables |
| Old version, no longer maintained: 4.x | December, 2015 | December 31, 2018 | December 31, 2020 | December 31, 2022 | Hadoop YARN integration, Data at rest encryption, Query level auditing (C2 security), Performance optimizations, Installer improvements, Support for 2048 columns, CSVEXPORT system command, Aggregate window functions additions |
In 2024, Actian decided to withdraw End of Obsolescence Support for Actian Vector in Hadoop, after discontinuing the marketing of this product line, thus making 6.0 its last release and Actian Data Platform's Cloud Data Warehouse service the only MPP implementation of Vector available.