Table remapping for hybrid NoSQL/SQL applications
Final Release Note
When KEEPDATA
is appended to a DROP TABLE
statement, the underlying global nodes storing the table data are preserved regardless of table writability type (READONLY
or READWRITE
).
Description
Draft Release Note
The default DROP TABLE behavior for a table whose CREATE TABLE has a GLOBAL specification is to not delete the global variable nodes (trees or sub-trees) to which the table is mapped. Previously, unless the CREATE TABLE included the READONLY keyword or various keywords indicating a specific mapping behavior (with START, END, EXTRACT keywords), a DROP TABLE would delete the mapped global variable nodes. The default DROP TABLE behavior for tables that do not include a GLOBAL specification continues to be to delete the mapped global variable nodes. With the DELETEDATA keyword, a DROP TABLE statement, Octo will delete the mapped global variable nodes of tables whose CREATE TABLE includes a GLOBAL keyword.
The default behavior of a DROP TABLE for a table whose CREATE TABLE does not include a GLOBAL specifier or the READONLY keyword, is to delete the underlying global variables as well as the table definition. With the KEEPDATA keyword, a DROP TABLE will not delete the underlying global variables.
The ability to make explicit the relationship between the definition of a table and its underlying storage, with reasonable defaults, facilitates hybrid SQL/NoSQL applications, for example, allowing remapping of the underlying hierarchical key-value data to a different relational schema. [#735 (closed)]