What is AGE?
AGE™ (The Advanced Grid Environment, known also as "Artificial Grid Environment") is computational and data grid, especially designed and developed for multi-platform, embedded, and mobile applications. Its programming model secures the creation of strong collaborative environment, which can integrate native grid services, external software modules and existing legacy applications.
With AGE™ you can deploy a cloud infrastructure with customized SOA (service oriented architecture), to develop distributed applications for parallel computations, and to establish data management scattered at different geographical locations. Ultimately, AGE™ will bring all these heterogeneous resources to work together as a complete scalable and redundant enterprise solution.
QUICK TECHNOLOGICAL OVERVIEW
Quotation from the Dissertation Work of Dr. Andrew Andreev, 2009, Sofia, Bulgarian Academy of Science
The concept of grid often is associated only with distribution of computational tasks and this is confirmed in the most of the articles on the subject. Furthermore, due to misunderstanding of the technology, grids are equalized with distributed middle-wares, cloud or cluster computing. However, the grid technology and the methodology of information sharing, information collaborating and information managing, has common meaning, and the nodes in the parallel environments have to ensure the necessary independence so that the data and the functions to work together with unlimited scalability and overall redundancy. These data and functions have generic meaning of grid resources, and could be internal or external, and completely heterogeneous (for example legacy applications, middle-ware or web services). The following evaluation criteria could be used for grid classification:
- Types of systems according to their functional capabilities;
- Nod's organization in the systems;
- Models for description of the resources;
- Architectural categories for resources management;
- Tools for data storing in the systems.
Based on these criteria, detailed research and comparison of Grid systems could be shaped as:
- Classification by structure (Operating system, Expandable model, Cellular model, Programming model, Execution of code with dynamic change of the priorities, Quality control, Means for resource storage);
- Classification by manner of resource management (Expandable and Ad-Hoc management; Parallel resource requesting; Periodical, Decentralized and Hierarchic distribution and management of tasks).
The expandable model for resource management is preferred by the most of the grid systems. However, grids with programming models have additional flexibility. This model is especially useful for implementation of more complex algorithmic tasks in parallel environment. Because of its complexity, the model is not very common encountered amongst the grid systems.
The preferred organizational management model is the hierarchical, and the planning of the tasks usually is decentralized. The quality control and the dynamic change of the priorities under parallel tasks execution not always indicate good results. Because of this reason, most of the grid systems do not use them. The resource storage is organized according to the specific appliance of the parallel environment. To ensure flexibility of the simultaneous data management and computational tasks, usually object-oriented approaches for resource access are implemented.
AGE IN A NUTSHELL
AGE™ can be characterized as a programmable, computational, and data grid. Compared to other grid systems, the architecture of AGE™ covers all modern criteria for efficient functionality:
- The control system layers are well protected and functionally independent;
- The system separately is managing and executing the parallel programs and their modules; Constructive AGE™ elements are programmable and flexible and are described simply in unified way;
- AGE™ possesses unique mechanism for adaptive resources management, by inheritance and polymorphism; the resources are hierarchically organized in object-oriented decisions trees; AGE™ allows automatic control over the node versions installed in its processors;
- The system owns powerful mechanism for balancing and automation of the management, which can be adjusted only by the module connections and their attributes; the management of the parallel connection grid is conducted by the assistance of Petri Nets;
- AGE™ has high heterogenic character for the points of resource access and for the support of the different types of resources; the embedded subsystem for processing of remote data provides a transparent, flexible and standardized access to a number of popular SQL servers;
- The system has advanced mechanism for multiplication of instances and modules;
- The modules have underlined autonomy in the parallel programs, as they are constructing own independent modules execution context;
- Embedded system for authority protection and copyright control.
The Advanced Grid Environment is not only platform for parallel calculations, but it has all the qualities for professional tool for description, testing and executing of machine algorithms. Using the technology Adaptive Polymorphism, a fully functioning morphing is achieved - one atypical characteristic, even for grid systems of new generation. The strongly developed mechanism for nodes multiplication puts the system amongst the best developed scaling abilities in system architectures. AGE™ is one of the fewest heterogeneous grids, which allows custom and external user resource to be produced and integrated.
AGE™ can be characterized as computational system that has the ability to develop and extend itself.
Embedded Technologies
Adaptive Polymorphism™
ATTENTION: The Adaptive Polymorphism is proprietary technology of BINETIX LLC in the field of grid computing and object-oriented software development, firstly introduced in November 2008 and later published within the Dissertation of Dr. Andrew Andreev in 2009.
In its hierarchical organization, AGE™ is building decisions trees, which is an integral part of system processes functionality. In the Graph theory terminology, it means that every node in the Grid can be root that starts one or several inheritor (tree leafs). Adaptive Polymorphism allows grid modules (AGE™ in particular) to be inherited, by specifying possible parent. Nodes polymorphic behaviour appear in their ability as parents to be functionally and dynamically replaced by their inheritors in the Grid. This replacement is possible in each hierarchy level on every node, starting from the root towards leafs.
Transitions with Petri Nets
The bonds between the instances in AGE™ are realized by choosing one or several active parameters. The bond is one-way directional and it has beginning and end. The beginning is connecting with the outgoing parameter of source instance, and its end is connecting with incoming parameter of target instance. The bonds are creating passive transitions between two instances. The conditions for ignition (in terms of Petri Nets) of the transition between two instances are coded in the preconditions and sub-conditions of already connected parameters. Every parameter in AGE™ is describing different transition ignition conditions by two Boolean expressions, conventionally called incoming constraint and outgoing constraint.
Autonomy of Nodes and Resources
The resources in AGE™ are divided in two categories - calculations and data. Both can have incoming and outgoing parameters. The values of the parameters can be loaded dynamically, or to be statically initiated. The difference stands only in the manner of data processing. The data in AGE™ is delivered from outside system sources and the calculations are result of algorithm execution. To ensure operations co-equality on applications level, AGE™ manages these two categories of resources by using mutual structure - the nodes in the grid system.
The independence of resource management in AGE™ is achieved by the described system module characteristics in the following four techniques:
- Unique resource naming and classification;
- Mandatory resource grouping and classification in categories;
- Inheritance of the common resource characteristics and organization of its access in tree hierarchy;
- Polymorphic verification of the requests for resource utilization.
Grid Public-Key Infrastructure
The public-key infrastructure (PKI) is a security and cryptographic system for the creation, storage, distribution, and management of digital certificates which are used to verify that a particular public key belongs to a certain entity. The PKI in AGE™ maintains these certificates with the registered entities, and securely stores them into multiple repositories per cluster of nodes.
PKI over AGE™ consists of:
- Certificate Authority agents for issuing and verifying digital certificates;
- Registration authority services to verify the identity of users requesting information from the CA;
- Secured cluster directory for holding and managing the certification key pairs;
- Distributed certification policy.