Term | Definition |
PlinyCompute | a system for development of high-performance, data-intensive, distributed computing tools and libraries. Offering users a very high-level, declarative interface, relying on automatic, relational-database style optimization to figure out how to stage distributed computations. |
Client Code | this is C++ user code that runs on a client machine (e.g. a personal computer or laptop) and is used to supply instructions to a PlinyCompute cluster. A connection to the manager node requires the following statement PDBClient pdbClient(8108, "localhost"); , where the arguments correspond to the port and IP address of the manager node in the cluster, here is an example. |
Node | a physical machine where an instance of plinyCompute runs. There are two types of nodes: manager and workers. |
Manager | a node (machine) that runs manager services, only one manager is allowed in plinyCompute. |
Worker | a node (machine) that runs worker services. It is possible to use one ore more workers in plinyCompute. This is determined by the content of the file conf/serverlist, which contains one IP address per line (each specifying a worker node in a cluster). |
PlinyCompute Object Model | is an API for storing and manipulating objects, co-designed with PlinyCompte’s memory management system and execution engine to provide maximum performance. It is responsible for data layout and within-page memory management. All data processed by PlinyCompute are managed by the object model. Because all dynamic object allocation is in-place, directly on a page, there is no need for object serialization and de-serialization before data are transferred to/from storage or over a network. For more details, see the Object Model FAQ’s. |
TCAP | (pronounced tee-cap) is a functional, domain-specific language that serves as an intermediate representation of user-supplied computations. It can then be used for optimizing queries and pipeline executions. From a logical stand point, TCAP operates over sets of columns of PlinyCompute Objects. |
User-defined types | PlinyCompute allows users to create their own data types. Users have to defined these types in a shared library and register them in PlinyCompute using the PDBClient::registerType() function. |
Lambdas in PlinyCompute | to write computations in PlinyCompute, programmers write various C++ codes using a domain-specific lambda calculus. A major difference with other analytics systems is that a programmer is not supplying a computation over input data, but rather an expression in the lambda calculus that specifies how to construct the computation. For example, to implement a SelectionComp over PC Objects of type DataPoint, a programmer must implement the lambda term construction function getSelection (Handle ) which returns a lambda term describing how DataPoint objects should be processed. |
PlinyCompute Server Functionalities | a manager node in PlinyCompute offers the following server functionalities:
|
Page |
PlinyCompute, a system for developing high-performance, data-intensive, distributed computing codes, especially tools and libraries.