Georgi Pashev

Programmer, Software Engineer, Scientist, Entrepreneur

  • Increase font size
  • Default font size
  • Decrease font size


E-mail Print PDF




Type of publication:  Conference paper

Conference: ICTTE 2013


Georgi Pashev, Dilyana Budakova

Dextro Research Ltd.

Pr. Kozma Str. 4000, Plovdiv, Bulgaria, +035(9) 895/662140, e-mail: This e-mail address is being protected from spambots. You need JavaScript enabled to view it

Technical University Sofia, Plovdiv Branch

25 Tsanko Diustabanov St., Plovdiv, 4000 Bulgaria, +035(9) 32/659 727, e-mail: This e-mail address is being protected from spambots. You need JavaScript enabled to view it


Main characteristics of the software platform are: 1. Fully transactional; 2. Supports formalism called labelled directed attributed hypergraph; 3. Users management, sessions, transactions are separated by the transport system, so that different transport system can be used in future; 4. Its own procedural language for definition of triggers and user scripts; 5. Type definition subsystem, which supports class object-like hierarchy structures, arrays definitions, simple types aliases definitions.

GDBMS is designed and implemented to support Graph Database formalism called Directed, labelled hyper-graph, which increases the power of the set of applicable tasks which can be solved by such a system. In mathematics, a hypergraph is a generalization of a graph in which an edge can connect any number of vertices.[4] More efficient disk usage is also achieved by using the formalism: 2 or more edges can be represented as 1 hyper-edge.[6] User types can be user defined structures, arrays or simple type aliases for integers or strings.

Scripting language for direct execution GDBMS has been created. It has suitable built-in API for accessing to the functionality of our pройects' own Graph Database Management System. Definition of user-defined macros is enabled. The implemented user language is procedural. The language syntax has operators for trigger definition. Supported triggers are after insert/delete/update on edges/nodes; before/after creation/destruction of user session/ user transaction. New method for data addressing through flow identifier has been developed.

The transactional subsystem is quite sophisticated unlike the transactional subsystems of other lookalike graph database systems. It insures that only those edges or nodes, which have been added or altered by the transaction are in the transactional folder and/or locked by the transaction. Information about the transaction history is maintained, and when transaction close command is received, some edge/node operations dependencies are resolved and handled: Insert after update, update after insert, update after update, for example.

Keywords: graph, database, hyper-graph, transactional, procedural, language.

Линк към публикацията: