The Ericsson Network Database (NDB) Cluster

A parallel data server for telecommunications applications

NDB Cluster
The number of services in telecommunications networks is increasing. Most of these services require the network to store information that must be made available in real time.

Such information is critical, failure to reach it often means that a service cannot be provided.

The number of information services available through the Internet is also increasing. The very essence of these services is to give users and applications access to information. Databases that support services of this kind must offer exceptional performance, very high availability, and real-time response.

Some commercial database products can support this kind of applications, but few of them do so in a scalable and cost effective manner.

That is the reason why Ericsson's engineers considered developing a new breed of Database dedicated to servicing highly demanding telecommunications applications. Their first prototypes showed that a common interconnect like Ethernet, with its heavy software protocol stack, was a bottleneck. In order to resolve the bottleneck issues they decided to test Dolphin's scalable coherent interface (SCI) interconnect - and this has successfully resolved the problem.

Definition of NDB Cluster
NDB stands for Network Database, where network in this context means telecommunications network. The term Cluster indicates that it executes on a cluster of workstations or personal computers.

A system is also called a node in the telecommunications network. The NDB Cluster is part of a system. Thus, a system generally consists of the NDB Cluster plus several application and management servers.

The NDB Cluster - whose platform is based on AXE (Ericsson Digital Switch) - contains several novel solutions to high-availability-related problems while fulfilling demanding requirements for high performance and real-time response.

NDB Cluster features
The following main features are included:

  • Automatic reconfiguration
  • Local replication
  • Network redundancy
  • Transaction support
  • Dirty read, dirty write
  • Prepare-to-commit function
  • On-line schema changes

Network databases are needed to support communication setup and services. They are also essential for operation and maintenance and for supporting applications that deliver information to users.

The NDB Cluster is targeted at storing all types of semi-permanent data for telecommunications services, including data that would otherwise be stored in application memory and in file systems. It has been engineered to fulfill current and future telecom application requirements for safe storage, high performance and short response time. It is the first distributed database designed on the assumption that distribution and the support of replication are inexpensive functions. The NDB Cluster supports main-memory and disk data; and is a general-purpose data server for telecommunications applications that can be used by applications written in different languages, provided they make use of any of the communication mechanisms that the NDB Cluster supports.

Telecommunication applications and requirements
Databases in telecommunications networks fall into three main network categories:

  • Service networks
  • Management networks
  • Information networks.

Each application must fulfill very stringent requirements for reliability - even more stringent than for telecommunications exchanges. For instance, the annual allowable downtime for a network database is less than one minute. This is because more than 10 times as many users rely on network databases than on telecommunication switches.

The use of NDB Cluster is illustrated through two applications:

  • A number-portability application
  • A Web cache-server application.

Number Portability
Number portability databases are involved at least once or twice in every call. Initially, they are called on to perform number translations. In time, however, they will also provide security as well as charging and directory services

In its first prototype application, the NDB Cluster functions as an external database to AXE.

Many different network and server configurations may provide a number-portability service. The NDB Cluster offers the greatest flexibility in meeting demands for very high reliability and high availability at low cost

Web cache server
Web cache servers require large bandwidth for query responses.

Some sets of services on the Internet require scalable access to data. These include route servers, domain name service (DNS) servers, Web servers, e-mail servers, and file servers.

Web cache servers store a large volume of frequently requested Web pages. In large networks, several Web cache servers work together. If one server fails to locate a Web page, another server might. Web cache servers should also function as replication servers; that is, they should be able to mirror the contents of Web pages at other servers. This feature is useful when Web pages contain dynamic data, since Web pages of this kind cannot be cached.

Since many users access cache servers at higher levels in the hierarchy, the storage must be scalable and quickly accessible. The NDB Cluster fulfills these requirements thanks to its automatic table-fragmenting functionality. Also, the transport of data over the very high bandwidth scalable coherent interfaces (SCI) from Dolphin Interconnect Solutions enables efficient communication between server processors.

The NDB Cluster contains a very efficient index for HTTP addresses. Thus, an index of literally millions of Web pages may be stored in main memory on one computer together with brief statistics and a reference to where the Web pages are stored. For fast access, the statistical attributes and the index reside in main memory, whereas the actual Web pages may reside on disk.

To avoid unnecessary moves within the Web cache server, the NDB Cluster will be equipped to send Web pages directly to requesting entities over a TCP/IP link.

This solution delivers scalability in the application and the database parts of the server, which is critical to the design of future Internet servers. The NDB Cluster also contains functionality for balancing the load between database servers - thanks to replication of data and the NDB Cluster's ability to reconfigure data distribution automatically.

Dolphin SCI technology allowed Ericsson engineers to fulfill their ambitious technical objectives. The resulting NDB Cluster is a scalable solution to database applications in telecommunications networks, which meets the demanding requirements for very high performance, very high reliability, and real-time performance.



  Database Management System


  Domain Name Service


  Home Location Register


  Hypertext Transfer Protocol


  Network Database


  Personal Computer


  Scalable Coherent Interface


  Transmission Control Protocol/Internet Protocol

Based on an article from "The Telecommunications Technology Journal" by Mikael Ronstrśm