Actian Vector

Actian Vector
Developer(s)Actian Corporation
Stable release
Vector 7.0 / October 22, 2024 (2024-10-22)[1]
Operating systemCross-platform
TypeRDBMS
LicenseProprietary
Websitewww.actian.com/products/analytics-platform/vector-smp-analytics-database/

Actian Vector (formerly known as VectorWise) is an SQL relational database management system designed for high performance in analytical database applications.[2] 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.[3][4][5][6]

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.[7] It was released as a commercial product in June, 2010,[8][9][10][11] 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".[12] In June 2014, Actian Vortex was announced as a clustered massive parallel processing version of Vector, in Hadoop with storage in HDFS.[13][14] Actian Vortex was later renamed to Actian Vector in Hadoop.

Technology

[edit]

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"[15] and Sandor Héman: "Updating Compressed Column Stores",[16] 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.[17]

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,[18] 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[19] Positional Delta Trees (PDTs)[16][20] — 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.[13]

History

[edit]

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".[15][21][22]

The X100 project team won the 2007 DaMoN Best Paper Award for the paper "Vectorized Data Processing on the Cell Broadband Engine"[23][24] as well as the 2008 DaMoN Best Paper Award for the paper "DSM vs. NSM: CPU Performance Tradeoffs in Block-Oriented Query Processing".[25][26]

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.[27] 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.[28]

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.[29][30]

In June 2010, the VectorWise technology was officially announced by Ingres Corporation,[9][31] with the release of Ingres VectorWise 1.0.[32]

In March 2011, VectorWise 1.5 was released,[33] publishing a record breaking result on TPC-H 100 GB benchmark.[4][34] 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,[5] publishing record breaking results on TPC-H 100 GB,[35] 300 GB[36] and 1 TB[37] non-clustered benchmark.

In December 2011, VectorWise 2.0 was released[38] 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.[39] 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[40] Predictive Buffer Manager (PBM) was introduced.[41]

In March 2013, VectorWise 3.0 was released.[42] 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.[12] 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.[13] Actian Vortex was later renamed to Actian Vector in Hadoop, and non-clustered Actian Vector releases are also updated to match.[1] In March 2015 Actian Vector 4 was released, and Actian Vector in Hadoop 4 was released in December 2015.[43]

In March 2019, Actian Avalanche was released as a cloud data platform, with Vector as the core engine for the Warehouse offering.[44] In November 2023, Actian rebranded and relaunched Avalanche as Actian Data Platform, including new capabilities for Data Quality.[45]

Release history

[edit]

Actian Vector

[edit]
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[46]
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[47]
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[48]
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[49]
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[50]
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[50]
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[51]
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[52]
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 [53]
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.[54] In SP1, key updates include: IPV4 and IPV6 data types, New SQL functions, Disaster Recovery and High Availability improvements.[55]
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
Legend:
Old version, not maintained
Old version, still maintained
Latest version
Latest preview version
Future release

Actian Vector in Hadoop

[edit]
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[56]
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[57]
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[58]
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[59]
Legend:
Old version, not maintained
Old version, still maintained
Latest version
Latest preview version
Future release

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.

See also

[edit]

References

[edit]
  1. ^ a b "Vector 6.3 Delivers Easier Administration, Greater Automation and Better Productivity for Data Analytics". 9 December 2022. Retrieved 2023-04-13.
  2. ^ "Vectorwise Enterprise". Actian Corporation. Retrieved 3 May 2012.
  3. ^ "TPC-H - Top Ten Performance Results - Non-Clustered". Transaction Processing Performance Council. Retrieved 3 May 2012.
  4. ^ a b "Vectorwise Smashes TPC-H Record at Scale Factor 100 Delivering 340% of Previous Best Record" (Press release). Actian Corporation. 15 February 2011. Retrieved 7 February 2016.
  5. ^ a b "Vectorwise Breaks 300GB and 1TB TPC-H Benchmark Records Hands Down" (Press release). Actian Corporation. 4 May 2011. Retrieved 7 February 2011.
  6. ^ "Actian Analytics Platform Outperforms All Others By 2X, Sets New Record In Latest TPC-H Benchmark". Actian Corporation. Retrieved 20 Aug 2016.
  7. ^ "CWI spin-off company VectorWise sold to Ingres Corporation".
  8. ^ Clarke, Gavin (2 February 2010). "Ingres' VectorWise rises to answer Microsoft". The Register.
  9. ^ a b Babcock, Charles (9 June 2010). "Ingres Unveils VectorWise Database Engine". InformationWeek.
  10. ^ Suleman, Khidr (8 June 2010). "Ingres launches VectorWise database engine". V3.co.uk.
  11. ^ Zukowski, Marcin; Boncz, Peter (2012). "From x100 to vectorwise". Proceedings of the 2012 international conference on Management of Data - SIGMOD '12. p. 861. doi:10.1145/2213836.2213967. ISBN 978-1-4503-1247-9. S2CID 9187072.
  12. ^ a b "Pssst: Want to Hear About Actian Vector 3.5?". 2016-05-04.
  13. ^ a b c "Vector(wise) goes Hadoop".
  14. ^ "Peter Boncz - Actian Vector on Hadoop: The First Industrial-strength DBMS to Truly Leverage Hadoop". YouTube.
  15. ^ a b Żukowski, Marcin (11 September 2009). "Balancing vectorized query execution with bandwidth-optimized storage" (PDF). Universiteit van Amsterdam. Retrieved 7 February 2016. {{cite journal}}: Cite journal requires |journal= (help)
  16. ^ a b Héman, Sandor (2015). "Updating Compressed Column Stores" (PDF). Vrije Universiteit Amsterdam. Retrieved 7 February 2016. {{cite journal}}: Cite journal requires |journal= (help)
  17. ^ Inkster, Doug; Żukowski, Marcin; Boncz, Peter (September 2011). "Integration of VectorWise with Ingres" (PDF). SIGMOD Record. 40 (3): 45–53. doi:10.1145/2070736.2070747. hdl:1871/33100. S2CID 6372175. Retrieved 7 February 2016.
  18. ^ Zukowski, Marcin; Boncz, Peter (March 2012). "Vectorwise: Beyond Column Stores" (PDF). IEEE Data Engineering Bulletin. 35 (1): 21–27. Retrieved 4 May 2012.
  19. ^ US application 20100235335, Sandor ABC Heman, Peter A. Boncz, Marcin Zukowski, Nicolaas J. Nes, "Column-store database architecture utilizing positional delta tree update system and methods", published 2010-09-16 
  20. ^ Héman, Sándor; Żukowski, Marcin; Nes, Niels; Sidirourgos, Lefteris; Boncz, Peter. "Positional update handling in column stores" (PDF). SIGMOD Conference 2010: 543–554.
  21. ^ "Homepage of Peter Boncz". Retrieved 7 February 2016.
  22. ^ "Faster database technology with MonetDB/X100". CWI Amsterdam. Retrieved 4 May 2012.
  23. ^ Héman, S.; Nes, N.J.; Zukowski, M.; Boncz, P.A. (2007). "Vectorized Data Processing on the Cell Broadband Engine". Universiteit van Amsterdam. Retrieved 4 May 2012. {{cite journal}}: Cite journal requires |journal= (help)
  24. ^ "Third International Workshop on Data Management on New Hardware (DaMoN 2007)". Carnegie Mellon’s School of Computer Science (SCS). Retrieved 4 May 2012.
  25. ^ Zukowski, Marcin; Nes, Niels; Boncz, Peter (2008). "DSM vs. NSM". Proceedings of the 4th international workshop on Data management on new hardware - DaMoN '08. p. 47. doi:10.1145/1457150.1457160. ISBN 9781605581842. S2CID 11946467.
  26. ^ "Fourth International Workshop on Data Management on New Hardware (DaMoN 2008)". Carnegie Mellon School of Computer Science. Retrieved 4 May 2012.
  27. ^ "10-year Best Paper Award – VLDB 2009". International Conference on Very Large Data Bases. Retrieved 4 May 2012.
  28. ^ Boncz, Peter; Manegold, Stefan; Kersten, Martin L. (15 June 1999). Database architecture optimized for the new bottleneck: Memory access (PDF). Universiteit van Amsterdam. pp. 54–65. ISBN 1-55860-615-7. Retrieved 11 December 2013. {{cite book}}: |work= ignored (help)
  29. ^ Curt Monash (25 April 2013). "Goodbye VectorWise, farewell ParAccel?". DBMS2. Retrieved 11 December 2013.
  30. ^ "Peter Boncz". Staff web page. CWI. Retrieved 11 December 2013.
  31. ^ Clark, Don (22 September 2011). "Database-Software Firm Tries 'Action Apps'". The Wall Street Journal.
  32. ^ "Ingres Vectorwise 1.0". Retrieved 7 February 2016.
  33. ^ "An early look at Actian VectorWise 1.5".
  34. ^ "TPC-H SF100 Vectorwise 1.5".
  35. ^ "TPC-H SF100 Vectorwise 1.6".
  36. ^ "TPC-H SF300 Vectorwise 1.6".
  37. ^ "TPC-H SF1000 Vectorwise 1.6".
  38. ^ "An even faster VectorWise".
  39. ^ "Actian Releases Vectorwise 2.5 – Record-Breaking Database Is Now Even Faster".
  40. ^ B1 US patent 8825959 B1, Michal Switakowski, Peter Boncz, Marcin Zukowski, "Method and apparatus for using data access time prediction for improving data buffering policies", published 2014-09-02 
  41. ^ Świtakowski, Michał; Boncz, Peter; Żukowski, Marcin (August 2012). "From Cooperative Scans to Predictive Buffer Management" (PDF). Proceedings of the VLDB Endowment. 5 (12). VLDB 2012: 1759–1770. arXiv:1208.4170. Bibcode:2012arXiv1208.4170S. doi:10.14778/2367502.2367515. S2CID 17184937. Retrieved 7 February 2016.
  42. ^ "Actian Announces Availability of Vectorwise 3.0 for Getting Fast Answers from Big Data".
  43. ^ "Lifecycle Dates - Actian Vector and Vector in Hadoop".
  44. ^ "Actian Avalanche Real-Time Connected Data Warehouse adds integration".
  45. ^ "Actian Data Platform Relaunches With Integration as a Service".
  46. ^ "Actian Vector - New Features in Version 7.0". Actian Documentation. Retrieved 2024-11-01.
  47. ^ "Actian Vector - New Features in Version 6.3". Actian Documentation. Retrieved 2024-11-01.
  48. ^ "Actian Vector - New Features in Version 6.2". Actian Documentation. Retrieved 2024-11-01.
  49. ^ "Actian Vector - New Features in Version 6.0". Actian Documentation. Retrieved 2024-11-01.
  50. ^ a b "Actian Vector - New Features in Version 5.1". Actian Documentation. Retrieved 2024-11-01.
  51. ^ "Actian Vector - New Features in Version 5.0". Actian Documentation. Retrieved 2024-11-01.
  52. ^ "Actian Vector - New Features in Version 4.2". Actian Documentation. Retrieved 2024-11-01.
  53. ^ "Actian Vector - New Features in Version 3.5". Actian Documentation. Retrieved 2024-11-01.
  54. ^ "Actian Vector - New Features in Version 3.0". Actian Documentation. Retrieved 2024-11-01.
  55. ^ "Actian Vector - New Features in Version 3.0 SP1". Actian Documentation. Retrieved 2024-11-01.
  56. ^ "Actian Vector in Hadoop - New Features in Version 6.0". Actian Documentation. Retrieved 2024-11-01.
  57. ^ "Actian Vector in Hadoop - New Features in Version 5.1". Actian Documentation. Retrieved 2024-11-01.
  58. ^ "Actian Vector in Hadoop - New Features in Version 5.0". Actian Documentation. Retrieved 2024-11-01.
  59. ^ "Actian Vector in Hadoop - New Features in Version 4.2". Actian Documentation. Retrieved 2024-11-01.
[edit]