Financial transactions, internet search, and data analysis are all placing increasing demands on databases. SQL, NoSQL, and NewSQL databases have been developed to meet these demands and each offers unique benefits. SQL, NoSQL, and NewSQL databases also rely on different underlying mathematical models. Polystores seek to provide a mechanism to allow applications to transparently achieve the benefits of diverse databases while insulating applications from the details of these databases. Integrating the underlying mathematics of these diverse databases can be an important enabler for polystores as it enables effective reasoning across different databases. Associative arrays provide a common approach for the mathematics of polystores by encompassing the mathematics found in different databases: sets (SQL), graphs (NoSQL), and matrices (NewSQL). Prior work presented the SQL relational model in terms of associative arrays and identified key mathematical properties that are preserved within SQL. This work provides the rigorous mathematical definitions, lemmas, and theorems underlying these properties. Specifically, SQL Relational Algebra deals primarily with relations - multisets of tuples - and operations on and between these relations. These relations can be modeled as associative arrays by treating tuples as non-zero rows in an array. Operations in relational algebra are built as compositions of standard operations on associative arrays which mirror their matrix counterparts. These constructions provide insight into how relational algebra can be handled via array operations. As an example application, the composition of two projection operations is shown to also be a projection, and the projection of a union is shown to be equal to the union of the projections.
翻译:财务交易、互联网搜索和数据分析都对数据库提出了越来越多的要求。 SQL、 NoSQL、 NoSQL、 NewSQL 和 NewSQL 数据库已经开发了满足这些要求的通用方法,每个数据库都提供了独特的好处。 SQL、 NoSQL、 NoSQL 和 NewSQL 数据库也依赖不同的基本数学模型。 聚合存储器寻求提供一个机制,允许应用透明地实现不同数据库的惠益,同时将这些数据库的应用程序从这些数据库的细节中分离出来。 整合这些多样化数据库的基本数学,可以成为多元存储器的重要辅助器,因为它能够在不同数据库中有效推理。 组合数组数组数组数组组成提供了一种共同的数学方法, 组合数组数组数组数组数组组成可以提供这些精确的数学定义、 limmma、 以及这些属性的直径数组数组应用。 具体地说, SQL Algebra 交易主要通过不同数学数据库的数学关系- 多级关系预测, 将这些关系显示为多行数组数组数组数组数组的运行, 。 这些关系显示为直系关系, 直系的直系的运行的直系的直系为直系的直系为直系关系, 直系的直系为直系为直系为直系的直系的直系的直系, 。