LAB Project Overview
This glossary presents often used terms in LAB Project documentation. A short definition helps in understanding the term and its acception in LAB Project terminology.
- Warning:
- This section is work in progress. New terms will be added while documenting the various parts of LAB Project.
Lab Project uses this term to define data access and update methods. Whatever could be the physical data storage and format, we use an abstract access method to retrieve and manipulate it.
Technically, this is done by the QlabApplication::QlabApplication() class which must be instanciated by all applications. This class initializes the Query translation engine as well as the internationalization engine.
The Abstract Interface, as implemented by LAB Project, provides a unified access syntax to data storage, be this some SQL backend server, Object Database, Disk directory or even flat file.
Glossary | LAB Project Overview
Back end services act as Message Passing Interface(MPI) discussion senders and receivers. We use SOAP/XML technology as discussion protocol as well as MySQL replication messaging. LAB Project server side applications (data dispatchers) act as SOAP provider widgets while client side applications act as display and edit widgets.
Most data is kept in a cache on server side until it is changed. If a data is considered static or semi static, the client is informed of such a status and does not ask again for the data till the caching time expires.
Glossary | LAB Project Overview
A data repository is a generic place holder for data. Usually, this term means database server. LAB Project has extended this definition to a system allowing data storage such as disk directory, database server, memory stick...
This allows media and format independent data access, in a transparent way. LAB Project sees all data, whatever their format, as Virtual File Systems filled with objects. Data is discriminated through its Mime Type.
In this sense, the data repository is a simple semantic abstraction for all allowable data in the system.
Glossary | LAB Project Overview
This is the name given by LAB Project initial team to reusable widget components. Think of this as intelligent widgets embedding some knowledge of what they can do and who can trigger them for a task.
The QlabSelector series ( ie QlabTaxSelector::QlabTaxSelector() ) is one of them as those embed knowledge about taxes, monetary systems, contacts and more.
Glossary | LAB Project Overview
This highly depends on backend servers and network architecture. LAB Project makes heavy use of caching mechanisms to push this aside. Usually, high load support for standard database servers is very difficult to appreciate as many factors are to be considered, such as fine tuning of server parameters, use of triggers and stored procedures as well as many other mysterious parameters. Thus, only on site and real production measurements can give a true view.
Glossary | LAB Project Overview
LAM/MPI is a widely used interface in Linux Clustering technologies. We use a MPI compliant messaging system in libraries, letting them become cluster compliant.
This allows for a unified message passing interface between stations and servers, direct transfers of information between stations and higher network availability. For more information about MPI technology, please refer to the (huge) Linux LAM/MPI documentation.
Glossary | LAB Project Overview
This means the time (measured in microseconds) for a widget to acquit a signal it responds to. Local and static widgets have a response delay under 40 and network widgets have a response time depending on the network architecture and charge.
Typically, a 100 megabit network crowded with 500 stations gets a response delay under 150. This response delay can grow up to 850 and more if he network design makes use of DHCP connectivity. This is due to DHCP verbosity and lack of directivity. This problem may be reduced using a local area balanced Dynamic DNS.
Glossary | LAB Project Overview
This extends the cluster model allowing a common transaction with not changed values to be shared between all active programs and instances in the system.
Shared transactions reduce backend load as valid data are only retrieved once and then shared by applications. This features uses the Back end services caching mechanism to reduce network conversations.
Glossary | LAB Project Overview
This expression is used when we map networks in a neural fashion. It is more or less synonym for network overload. This is the point where response delay starts growing exponentially. When we reach the transactional breakout, this means we have to extend network architecture and open a new distributed server.
One should not understand this with the transactional saturation as stated by SQL servers.
Glossary | LAB Project Overview