Clusterpoint
Encyclopedia
Clusterpoint is a high-performance, schema-free, document-oriented database
server written in the C++
programming language. It manages collections of XML
documents that are stored in native XML data format. It allows many applications to store data in a natural human-readable way that matches their native data types and structures. All database content is indexed automatically and completely for fast structured, unstructured and semi-structured search. Clusterpoint is a hybrid DBMS system, combining into a single cohesive software platform several widely used but isolated database software
technologies: database management software platform, fast full text search
engine functionality and native clustering software.
Development of Clusterpoint DBMS began in August 2006 by Clusterpoint Ltd. The first public release was in January 2008.
More features:
of extending Clusterpoint Server functionality and can be used in most Clusterpoint query or database update transactions. For example, LUA can be used to implement customer specific data aggregation functions, alerting or programming asynchronous triggers. LUA scripts can be executed server-side, right before or just after Clusterpoint API transactions of interest.
Any custom LUA scripts can be stored in Clusterpoint Server to work as "stored procedures".
Clusterpoint Server has native client API Libraries using faster TCP/IP transport protocol for the following popular programming environments:
Clusterpoint sample use cases of the client source code are available for the following popular programming languages:
There are several commercial Clusterpoint DBMS software licenses available, starting from a 2-server cluster for Clusterpoint DBMS licensing.
Clusterpoint DBMS is commercially supported software with free basic support over email and paid premium technical support services for customers using the software in production environments.
Document-oriented database
A document-oriented database is a computer program designed for storing, retrieving, and managing document-oriented, or semi structured data, information...
server written in the C++
C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...
programming language. It manages collections of XML
XML
Extensible Markup Language is a set of rules for encoding documents in machine-readable form. It is defined in the XML 1.0 Specification produced by the W3C, and several other related specifications, all gratis open standards....
documents that are stored in native XML data format. It allows many applications to store data in a natural human-readable way that matches their native data types and structures. All database content is indexed automatically and completely for fast structured, unstructured and semi-structured search. Clusterpoint is a hybrid DBMS system, combining into a single cohesive software platform several widely used but isolated database software
Database Software
Database Software was a software publisher based in Cheshire, England. Software published by the company includes the Red Arrows game for the ZX Spectrum and the office suite Mini Office II, as well as games and educational software for children....
technologies: database management software platform, fast full text search
Full text search
In text retrieval, full text search refers to techniques for searching a single computer-stored document or a collection in a full text database...
engine functionality and native clustering software.
Development of Clusterpoint DBMS began in August 2006 by Clusterpoint Ltd. The first public release was in January 2008.
Features
Among the features are:- Open, cross-platform, industry standard XMLXMLExtensible Markup Language is a set of rules for encoding documents in machine-readable form. It is defined in the XML 1.0 Specification produced by the W3C, and several other related specifications, all gratis open standards....
data format, used at database storage level, API and in all client-server transactions - Data structure agnostic database, handles custom schema-less free format XML documents as database objects
- Consistent UTF-8UTF-8UTF-8 is a multibyte character encoding for Unicode. Like UTF-16 and UTF-32, UTF-8 can represent every character in the Unicode character set. Unlike them, it is backward-compatible with ASCII and avoids the complications of endianness and byte order marks...
encoding. Non-UTF-8 data can be saved, queried, and retrieved with a special binary data type. - Cross-platform support: binaries are available for LinuxLinuxLinux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...
, FreeBSDFreeBSDFreeBSD is a free Unix-like operating system descended from AT&T UNIX via BSD UNIX. Although for legal reasons FreeBSD cannot be called “UNIX”, as the direct descendant of BSD UNIX , FreeBSD’s internals and system APIs are UNIX-compliant...
and OS X. Clusterpoint can be compiled on almost any operating systemOperating systemAn operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...
. - Type-rich: supports unstructured data, dates, numbers, meta-data, binary data, and more (all XMLXMLExtensible Markup Language is a set of rules for encoding documents in machine-readable form. It is defined in the XML 1.0 Specification produced by the W3C, and several other related specifications, all gratis open standards....
types) - XML objects for query results: enable direct integration in programming languages supporting XML parsing, no client software required
- Includes rich enterprise search functionality: eliminates the need to integrate database application software with 3rd party search software
- Flexible data ranking at search: a customizable mechanism for programming database content ranking for the best search relevance
- Transparent cluster software architecture: no single point of failure, any cluster node can serve as master
- Horizontal scalability: scales out from a single server to hundreds of servers per database in clusters
- Security partitioning: users, administrators and access rights are based on groups and roles, granular to specific storages and API commands
- Centralized web GUI based database administration, including clustered and replicated databases
More features:
Indexing
Clusterpoint software automatically builds entire database content index for any types of fast searches. It builds its index for full text search, XML structure search, for numeric and dates interval search, geospatial search and faceted search.Information ranking
To achieve scalability and performance goals in a distributed cluster database architecture, Clusterpoint DBMS uses a mechanism for customizable ranking of database content for the best search relevance. Clusterpoint Index scales linearly in cluster architecture: it can maintain the same sub second search times for a distributed database, spanning tens and hundreds of servers and containing billions of XML data objects..Results grouping, data sorting and exact positioning
For ad hoc queries and structured queries the Clusterpoint database supports grouping and ordering functionality that is similar to SQL's GROUP BY and ORDER BY. At high performance this is achieved through the same Information Ranking mechanism, a set of rules established and fine tuned at database configuration level.Server-side LUA execution
LUA is the lingua francaLingua franca
A lingua franca is a language systematically used to make communication possible between people not sharing a mother tongue, in particular when it is a third language, distinct from both mother tongues.-Characteristics:"Lingua franca" is a functionally defined term, independent of the linguistic...
of extending Clusterpoint Server functionality and can be used in most Clusterpoint query or database update transactions. For example, LUA can be used to implement customer specific data aggregation functions, alerting or programming asynchronous triggers. LUA scripts can be executed server-side, right before or just after Clusterpoint API transactions of interest.
Any custom LUA scripts can be stored in Clusterpoint Server to work as "stored procedures".
Language support
By default Clusterpoint DBMS uses REST principles and HTTP/HTTPS messaging for client-server communications between customer applications and Clusterpoint Server. Any client programming language or development environment, supporting HTTP POST/GET messaging, can directly "talk" to Clusterpoint Server, including reading, writing, updating and searching their XML documents.Clusterpoint Server has native client API Libraries using faster TCP/IP transport protocol for the following popular programming environments:
- JavaJava (programming language)Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...
- PHPPHPPHP is a general-purpose server-side scripting language originally designed for web development to produce dynamic web pages. For this purpose, PHP code is embedded into the HTML source document and interpreted by a web server with a PHP processor module, which generates the web page document...
- .NET
Clusterpoint sample use cases of the client source code are available for the following popular programming languages:
- JavaJava (programming language)Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...
- PHPPHPPHP is a general-purpose server-side scripting language originally designed for web development to produce dynamic web pages. For this purpose, PHP code is embedded into the HTML source document and interpreted by a web server with a PHP processor module, which generates the web page document...
- CC (programming language)C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....
- PerlPerlPerl is a high-level, general-purpose, interpreted, dynamic programming language. Perl was originally developed by Larry Wall in 1987 as a general-purpose Unix scripting language to make report processing easier. Since then, it has undergone many changes and revisions and become widely popular...
- ASP
Licensing and support
Clusterpoint DBMS is available for free under the Clusterpoint DBMS Free Community License for use on a single hardware server or a virtual machine.There are several commercial Clusterpoint DBMS software licenses available, starting from a 2-server cluster for Clusterpoint DBMS licensing.
Clusterpoint DBMS is commercially supported software with free basic support over email and paid premium technical support services for customers using the software in production environments.
See also
- MongoDBMongoDBMongoDB is an open source, high-performance, schema-free, document-oriented database written in the C++ programming language...
- CouchDBCouchDBApache CouchDB, commonly referred to as CouchDB, is an open source document-oriented database written mostly in the Erlang programming language. It is part of the NoSQL group of data stores and is designed for local replication and to scale horizontally across a wide range of devices...
- NoSQLNosqlIn computing, NoSQL is a broad class of database management systems that differ from the classic model of the relational database management system in some significant ways. These data stores may not require fixed table schemas, usually avoid join operations, and typically scale horizontally...
- Structured storageStructured storageCOM Structured Storage is a technology developed by Microsoft as part of its Windows operating system for storing hierarchical data within a single file...
- XMLXMLExtensible Markup Language is a set of rules for encoding documents in machine-readable form. It is defined in the XML 1.0 Specification produced by the W3C, and several other related specifications, all gratis open standards....