McObject’s New eXtremeDB 5.0 Embedded DBMSDelivers Improvements in Clustering, Speed and Efficiency

Embeded

April 22, 2013 — Responding to strong demand for itsclustering database technology, McObject® has released eXtremeDB® 5.0, the latest upgrade of its embedded database system, with newfeatures that make eXtremeDB’s clustering faster and more flexible, and further simplify itsadministration. Additional improvements in version 5.0 accelerate performanceacross the eXtremeDB product family – including in its high availability, in-memorydatabase system (IMDS), 64-bit and other editions – and provide new tools tomake application development faster and easier.


“McObject is pleased to see many customersmoving forward with projects incorporating eXtremeDB Cluster, in fields ranging from aerospace/defense to smart gridmanagement and financial systems. IneXtremeDB 5.0, McObject refines its clustering database technology, deliveringseveral key improvements that enable it to address an even wider range ofreal-time computing challenges,” McObject CEO Steve Graves said. New featuresin eXtremeDB Cluster 5.0 include:

  • A local tables option that exempts specified eXtremeDB tables from cluster-wide replication, to accelerate processing at the local node. Local tables are shareable, when desired, through a scatter/gather mechanism
  • Dynamic clustering, which enables nodes to join and leave clusters without interrupting processing. This further simplifies administration for a clustering database technology that counts minimal run-time maintenance as a defining characteristic
  • Support for Infiniband switched fabric interconnect. Infiniband reduces communication latency between eXtremeDB Cluster nodes and improve throughput and scalability
  • Support for the Message Passing Interface (MPI) standard, which increases messaging efficiency for parallel processing on distributed-memory systems (i.e. clusters) to deliver higher speed and scalability. Open and widely-used, MPI provides the additional benefits of developer familiarity and more portable code

Other new features in version 5.0 reduce DBMSlatency, and improve developer efficiency, in all eX tremeDB editions. Newly supported NUMERIC and DECIMAL data types provide moreprecise calculations than alternative FLOAT and DOUBLE types. By permittinginteger operations, NUMERIC and DECIMAL data types enable faster performancewhile also allowing the database designer to specify the exact scale andprecision required.

eX tremeDB 5.0 also adds support for nullable data types, or the abilityto set data types to the special value NULL. This provides greater flexibilityin representing missing or inapplicable information in query results.eXtremeDB’s NULL value support extends to both its SQL and native C/C++, Javaand .NET application programming interfaces (APIs).

For the growing community of developers using  eX tremeDB with the Java and .NET languages, version 5.0 adds features thatincrease flexibility, programming efficiency and performance. These include:

Other new features in version 5.0 reduce DBMSlatency, and improve developer efficiency, in all eX tremeDB editions. Newly supported NUMERIC and DECIMAL data types provide moreprecise calculations than alternative FLOAT and DOUBLE types. By permittinginteger operations, NUMERIC and DECIMAL data types enable faster performancewhile also allowing the database designer to specify the exact scale andprecision required.
eX tremeDB 5.0 also adds support for nullable data types, or the abilityto set data types to the special value NULL. This provides greater flexibilityin representing missing or inapplicable information in query results.eXtremeDB’s NULL value support extends to both its SQL and native C/C++, Javaand .NET application programming interfaces (APIs).

For the growing community of developers using  eX tremeDB with the Java and .NET languages, version 5.0 adds features thatincrease flexibility, programming efficiency and performance. These include:

eX tremeDB 5.0 also adds support for nullable data types, or the abilityto set data types to the special value NULL. This provides greater flexibilityin representing missing or inapplicable information in query results.eXtremeDB’s NULL value support extends to both its SQL and native C/C++, Javaand .NET application programming interfaces (APIs).
For the growing community of developers using  eX tremeDB with the Java and .NET languages, version 5.0 adds features thatincrease flexibility, programming efficiency and performance. These include:

For the growing community of developers using  eX tremeDB with the Java and .NET languages, version 5.0 adds features thatincrease flexibility, programming efficiency and performance. These include:
  • .NET and Java class generators. eXtremeDB’s database schema compiler, mcocomp, can now process database definition language (DDL) files (database schemas) written in the DBMS’s native language, and output code defining the equivalent .java and .cs classes. This is a boon when adding Java or .NET front-ends to existing eXtremeDB databases that are defined in the native DDL
  • Confirmed interoperability with JamaicaVM, a hard real-time Java run-time environment provided by aicas GmbH. JamaicaVM offers fully deterministic garbage collection and is optimized for critical systems such as controls and visualization
  • Compatibility of eXtremeDB’s Java Database Connectivity (JDBC) API with JDK 7

Version 5.0 also improves  eX tremeDB High Availability, McObject’s DBMS edition that implements master-replicadatabase replication and serves as the basis of many fault-tolerant systems.  eX tremeDB 5.0 adds High Availability functions that improve an application’sability to control failover to a replica, by providing greater control to thereplica over closing the communication channel to the master.

In McObject’s tests, eXtremeDB Cluster using Infiniband and MPI performed more than 7.5x faster thanthe same system implemented with “plain vanilla” gigabit networking (TCP/IP andEthernet). MPI can also be used over Ethernet-TCP, and in McObject’s tests thiscombination performed almost 1.5x faster than using TCP/IP over Ethernet. eXtremeDB Cluster’s Infiniband and MPI support is provided on Linux in thecurrent release.


Server Feature

McObjecthas released its eXtremeDB 5.0 embedded database system with new features aimedat faster clustering and application development such as the Message PassingInterface (MPI) standard, which increases messaging efficiency for parallelprocessing on distributed-memory systems.

"McObject projects incorporating eXtremeDBCluster [feature] in fields range from aerospace/defence to smart gridmanagement and financial systems," said McObject CEO Steve Graves.

Graves also points to a local tables option thatexempts specified eXtremeDB Cluster tables from cluster-wide replication, toaccelerate processing at the local node. Local tables are shareable, whendesired, through a scatter/gather mechanism.

Also here is dynamic clustering, which enables nodesto join and leave clusters without interrupting processing. Plus, support forInfiniband switched fabric interconnect reduces communication latency betweeneXtremeDB Cluster nodes and improve throughput and scalability.

In McObject's tests, eXtremeDB Cluster usingInfiniband and MPI performed more than 7.5x faster than the same systemimplemented with "plain vanilla" gigabit networking (TCP/IP andEthernet). MPI can also be used over Ethernet-TCP, and in McObject’s tests thiscombination performed almost 1.5x faster than using TCP/IP over Ethernet.eXtremeDB Cluster's Infiniband and MPI support is provided on Linux in thecurrent release.

eXtremeDB 5.0 also adds support for nullable data types,or the ability to set data types to the special value NULL. This providesflexibility in representing missing or inapplicable information in queryresults. eXtremeDB's NULL value support extends to both its SQL and nativeC/C++, Java, and .NET application programming interfaces (APIs).

For the community of developers using eXtremeDB withthe Java and .NET languages, version 5.0 adds features including .NET and Javaclass generators. eXtremeDB's database schema compiler, mcocomp, can nowprocess database definition language (DDL) files (database schemas) written inthe DBMS's native language, and output code defining the equivalent .java and.cs classes. This is described as "a boon" when adding Java or .NETfront-ends to existing eXtremeDB databases that are defined in the native DDL.

 
Additions to the eXtremeDB core 
Additions/changes to the HighAvailability API 
rplmst - first level replica connected to the master andalso is the "master" for replica
replica
replica
 - second level replica is connected to the rplmst
Additions to the Cluster API
Additions to the Transaction Logging API
Additions to the Java and NET C# APIs

1. The nullable declaration is now recognized by the mcocomp schemacompiler. It adds a “null indicator” bit to the object which when 0 indicatesthat the field’s value is null; when 1 it indicates that the field has a value.The null indicator can be read and changed with the following new APIfunctions:

2. All generated C symbols for C++applications (including dbname_get_dictionary() ) are included intothe dbname namespace so C++ applications should either specifythe namespace in a “using” statement:

 using namerspace DBNAME;

 

 (See“samples/core/20-languages/cpp” for an example.)

 

Additions to the eXtremeSQL API

The eXtremeSQLAPI now supports the RTree index type.

1.The eXtremeDB-HAAPI has been enhanced to enable network communication on multiple channels.However, the new API is not backwards compatible, so all existing HA-basedapplications will have to be modified. The following API function must becalled before after mco_HA_start() but before any other HAruntime function calls:

 

2. It is nowpossible to mix synchronous and asynchronous replication. The flag MCO_HAMODE_FORCE_SYNC has beenadded. When set, it turns on synchronous replication for a given replica. Theflag is set

3. It is now possible toimplement “cascading replication” by running the master and replica within thesame process. For example an application hacascade containsthree parts, masterrplmst and replica where:

master - masteronly, database modifications are allowed

 

Here rplmst implementsboth master and replica functionality.

 

4. For replicaapplications using the Cancel feature, the functions mco_nw_accept_cancellation_socket() was replaced by

mco_HA_accept_cancellation_socket(). However, mco_HA_accept_cancellation_socket()has beendeprecated. The

cancel_socket cannow be explicitly created and destroyed by functions

 

 

Message Passing Interface(MPI) channel support has been added the Cluster API. To use an MPI channel in a cluster application, it must belinked with the mcoclmpi library (instead of mcocltcp). The MPI standardrequires that the first MPI call in the MPI-program must be MPI_Init() orMPI_Init_thread(), and the last call must be MPI_Finalize(). Further implementation details are explained in theCluster documentation.

 

The Transaction Logging API has been enhanced with the following archivingcapabilities:

 

1.Dual Output: eXtremeDB-TL now allows writing a copy of thetransaction log to a file while the pipe mode is used as a transport forexporting transaction data. This file may be used, for instance, to restore adatabase or to store it in log form on persistent media. The stored log filemay then be processed by the API function mco_translog_apply(). Or it can be iterated byfunctions mco_translog_iterate() and mco_translog_play(). Dual outlogging  is enabled by specifying flag MCO_TRANSLOG_DUALOUT in addition to flag MCO_TRANSLOG_PIPE. Field dual_log_path ofstructure mco_TL_start_dataspecifies the destination log file.(Sample 'tlogiterdualout' demonstrates this functionality.)

 

2.Mark Last Object: Transactions in a log file or pipe stream are output intheir original order. By default while reading and iterating the log or pipethere is no simple way to understand if the object passed into the user-definediteration callback is the latest in the current transaction. For this purposethe runtime option MCO_RT_OPTION_MARK_LAST_OBJ has been added to enable the runtime

 mode which warns the user-defined callback about end of eachtransaction. Further implementation details are explained in the TransactionLogging documentation and in samples 'tlogiterpipe', 'tlogitermultipipe' and'tlogiterdualout'.

 

The Java and C#APIs have been enhanced with the following two features:

1.Aggregator class: This class isused to perform aggregation. Grouping and aggregation is done using twointerfaces: Aggregate and GroupBy.Aggregate. Some predefined implementations forstandard aggregates are provided: max, min, sum, avg, count... And it is possible to createuser-defined aggregates.

2.setCurrentTimeCallback():The Database classdefines a callback method to return the current system time. Unless a customtime method is defined, the eXtremeDB default time functionis called. A custom time callback method can implement the public interfaceGetCurrentTimeCallback. See the .Net and JNI documentation for furtherimplementation details.

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值