TRIADB: Associative Semiotic Hypergraph Database Framework
Learn about TRIADB, an add-on middleware a closely coupled with the physical layer of a data store and a generic command line interface close to the application layer.
Join the DZone community and get the full member experience.Join For Free
TRIADB is a multi-perspective database framework based on unique and valuable, associative, semiotic, hypergraph technology and implemented on top of popular DBMSs. It is an add-on middleware with two parts: one part closely coupled with the physical layer of a data store and another more generic command line interface, closer to the application layer.
At a Glance
TRIADB is an innovative, multi-perspective database framework. It is a middleware that sits on top of suitable NoSQL/SQL data stores and enables them to easily perform integration, correlation, aggregation, and hypergraph exploration of multiple data resources. With TRIADB, you can turn a simple key-value store to a multi-model database or enhance the existing functionality of a graph database. TRIADB is founded on the principles of R3DM/S3DM associative, semiotic, and hypergraph technology pioneered by Dr. Athanassios I. Hatzis, the founder of HEALIS.
In terms of the architectural design, TRIADB is based on the R3DM/S3DM Associative Data Model. Foundational principles, theoretical formalization, and ontological dimensions of the framework and the data model date back to the year 2012. R3DM/S3DM is a multi-perspective associative data model that shares certain similarities with Qlik associative technology, AtomicDB and X10SYS associative technology, the Sentences associative data model, the Topic Maps data model, and the correlation database model. The main difference between R3DM/S3DM technology from other similar associative technologies is that it has a solid theoretical background, a unified data modeling architecture, and is distinct in its design and implementation.
Currently, there are two TRIADB prototypes implemented: one for OrientDB with Mathematica and another on top of Intersystems Cache with Python and Jupyter. TRIADB comes in two parts: the engine part that is closely coupled with the DBMS and the command-line interface that is closer to the application layer.
In the current release, there are 19 Cache ObjectScript classes that implement associative, semiotic, hypergraph operations and there are four modules in Python with a total of 13 classes that implement the database framework at a higher level. We used several open-source libraries for displaying tables (pandas), for drawing hypergraphs (networkx, pydot, graphviz, visjs) and we developed our own Cache-Python object manager. There are approximately 2,000 lines of code in Python and another 3,000 lines of code in Cache ObjectScript.
Based on the current implementation of TRIADB, we prepared a series of video screen capture recordings from a live test of our system on a small set of data. There are five videos in this playlist on the HEALIS YouTube channel. We demonstrate the Python client API; the functional, interactive user interface of the TRIADB system with commands to add models, resources, and records; queries to retrieve data; and hypergraph traversal operations. You can start watching the last video of this series to get an overall impression of TRIADB use.
Finally, the last two images display a hypergraph data model for movies and a movie instance with many participants. Again, you can switch back and forth with the left and right arrow keys.
- 11/16/2017: Connected Data London Conference
- 6/19/2017: European Wolfram Technology Conference in Amsterdam
Key Differentiating Factors
The following is a list of technical features that are present in the current design and implementation of TRIADB. This same list is what makes TRIADB a unique and valuable software product:
- Multi-perspective database framework: Tuples, domain sets, objects, hypergraph, hierarchical.
- Act both as an operational and data warehouse database with a 360-degree view.
- Automatic fixed, primary indexing schema instead of user-defined secondary indexing.
- Manage the references instead of data: a relational and reference DBMS with fixed composite indexing.
- No duplicates: A single value instance based on system defined primitive data types.
- Consolidation of multiple data resources and mapping on user-defined data models.
- Management of data resources, data models, and metadata.
- Developer-friendly and easily programmable thanks to powerful functional commands in Python.
- Functional operations with standard parameters: both declarative and imperative query mechanisms.
We create strong partnerships with database vendors to implement and fine-tune TRIADB on top of their technology stack. We offer consulting services on how to apply Associative, Semiotic, and Hypergraph technology and depending on the kind of contract with them, we may also do business as a value-added reseller. We are not selling licenses or software; we provide full-stack solutions and add-on value for our own clients or for the clients of our vendors. And speaking of scaling, availability, and performance, we scale together with our vendor, and we inherit the performance, availability, and TCO of our vendor.
Part of our business plan is to open-source our associative, semiotic, hypergraph technology. We are seeking for the developer community's consensus on the use of it and we strongly believe that TRIADB framework will be eventually adopted by major semantic and database technology players in the IT industry.
We embrace competition from full-stack BI software, from semantic technology platforms, or from other combinations of a search engine with back-end and front-end. We are not limited to the options we have. We will prove in practice with benchmark tests and with the level of complexity that we are able to provide better solutions to our customers.
We are aiming to reach TRIADB minimum viable product with one or more pilot studies that will be based on real client problems and at the same time, we will make our next release available to download and test for free. Stay tuned.
We would like to thank Intersystems Cache for providing us with a license of Caché DBMS to test TRIADB.
Published at DZone with permission of Athanassios I. Hatzis, PhD, DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.