Trafodion is an open-source webscale SQL-on-Hadoop DBMS solution that extends and builds on Apache Hadoop. Its name is the Welsh word for "transactions" (pronounced "Tra-vod-eee-on") because the developers wanted to emphasize the fact that one specific way it extended Hadoop was through guaranteed transactional integrity. By doing so, it targets big data transactional and operational workloads rather than analytic workloads. It is ACID-compliant and has fully-functional ANSI SQL support[05][06][07]
- Source Code
- https://github.com/apache/trafodion[02]
- @trafodion
- Developer
- Governance
- Apache Software Foundation
- Country of Origin
- US
- Start Year
- 2014
- End Year
- 2021
- Project Type
- Open Source
- Supported Languages
- SQL
- Derived From
- HBase
- Operating System
- Linux
- License
- Apache v2
Trafodion is an open-source webscale SQL-on-Hadoop DBMS solution that extends and builds on Apache Hadoop. Its name is the Welsh word for "transactions" (pronounced "Tra-vod-eee-on") because the developers wanted to emphasize the fact that one specific way it extended Hadoop was through guaranteed transactional integrity. By doing so, it targets big data transactional and operational workloads rather than analytic workloads. It is ACID-compliant and has fully-functional ANSI SQL support[05][06][07]
History[08][06]
Hewlett-Packard Company launched Trafodion as an open-source project in 2014, and a version was released in early 2015 before it became a part of the Apache Incubator in May 2015. In January of 2018, it was established as an Apache Top-Level Project.
The project was marked as abandoned and deprecated to the Apache Foundation "attic" in 2021.
Concurrency Control[09][10]
Apache Trafodion utilizes the HBase-Trx implementation of Multi-version Concurrency Control (MVCC). This implementation guarantees row-level ACID semantics and only requires row locks for write operations, not read operations.
Data Model[11]
Since Trafodion is built on top of HBase, it shares HBase's column family data model using key-value pairs.
Joins
Trafodion supports hash joins. It is recommended that the number of tables in a join is limited to 64, otherwise the query may not compile.
Query Execution[09]
Trafodion dynamically spawns a set of Executor Server Processes, which each execute a part of a query plan if intra-query parallelism is desired.
Storage Architecture[14]
Trafodion is built on top of HBase, which means it shares its disk-oriented storage architecture model from HDFS.
Stored Procedures[15]
Trafodion allows for stored procedures written in Java and typically compiles with SQL and JRT (Java Routines and Types). The stored procedure itself is a Java method in a JAR file.
Views
Unlike HBase, Trafodion does support views.
Citations
15 sources- Apache Trafodion apache.org
- GitHub - apache/trafodion: Apache Trafodion · GitHub github.com
- Apache Trafodion Documentation Library apache.org
- List of Apache Software Foundation projects - Wikipedia wikipedia.org
- Apache Trafodion Frequently Asked Questions apache.org
- Apache Trafodion becomes Top-Level Project - SD Times sdtimes.com
- Apache Trafodion apache.org
- Trafodion | The Apache Attic apache.org
- Apache Trafodion Architecture Overview apache.org
- Apache HBase Internals: Locking and Multiversion Concurrency Control | Blogs Archive apache.org
- SQL Reference Manual apache.org
- SQL Reference Manual apache.org
- Color apache.org
- https://esgyn.com/wp-content/uploads/Trafodion-Technical-White-Paper.pdf esgyn.com
- Stored Procedures in Java (SPJs) Guide apache.org