Performance comparison of CommunityDNS DB with Oracle's Berkley Database

CommunityDNS' DB is 11.447 times faster than Oracle Berkley DB at 11 million transactions per second.

The purpose of the tests was to compare the performance of two distinct database platforms, the CommunityDNS' proprietary database with that of Oracle's Berkeley DB software. For this set of tests, we used commodity hardware and disk technology that is, slow disks with average subsystems.

The Oracle system was run using:

Linux SuSE Linux 9.1 running on an AMD Athlon 64 processor 3200+ at 1GHz system with 1GB of RAM. Western Digital Caviar SE 120GB EIDE (7200RPM) with 8MB cache RAM was connected via an SIS 5513 controller formatted with the EXT3 file system with journaling enabled. The compiler was GCC 3.3.3. The system reported 4046.84 AMD BogoMIPS.

The ComunityDNS system was run on an "off-the-shelf" slower machine using:

Linux Slackware 11.0 on an Intel Xeon Processor 3.200 at 633GHz system with 1GB RAM. Western Digital Caviar SE 120GB EIDE (7200RPM) with 8MB cache RAM was connected via an Adaptec controller formatted with the ReiserFS file system file system with journaling enabled. The compiler was GCC 3.4.6. The system reported 6405.8 Intel BogoMIPS

The test code may be downloaded from:
http://www.oracle.com/technology/products/berkeley-db/files/perf.zip

Throughput records read or written in a fixed time interval is the most common measure of database performance. Each test in this benchmark uses fixed-size records containing keys that are eight bytes long and a data portion of thirty-two bytes. The set-ups were similar and the source code for the benchmark is roughly 350 lines of C code and may be downloaded from the URL above.

Both CommunityDNS DB and Berkeley DB supports concurrent database access. On multi-processor systems, multi-threaded or multi-process both CommunityDNS DB and Berkeley DB applications can take advantage of additional CPUs. Many application workloads will benefit from such concurrency, even on single-processor systems. Regardless of the system tested, the effects of concurrency are not measured in the following tests. The tests are single-threaded and single-process. On a multi-processor system, they will use no more than one of the CPUs at a time.

This first test measures throughput as operations per second using CommunityDB and Berkeley DB Data Store (DS). Since this is a non-transactional, in-memory test, performance is dependent on the operating system, memory, and CPU, and not the underlying I/O or disk system for the read tests. When writing using DS, the data is cached in memory and flushed when buffers are filled or when the application explicitly calls for data to be flushed to disk. These tests are written such that writes occur in memory and are not flushed to disk.

On the 6th February 2008 the above test code was run on the above platform by CommunityDNS using a server located at the Computer Science department of the University of Bath in England. The performance test was independently monitored and assessed by Professor James Davenport, Head of Computer Science, University of Bath in the United Kingdom.

The following results were obtained:

DS (Ops/Sec) CommunityDNS DB Oracle Berkley DB
Single-record read 11,473,060 1,002,200
Single record write 2,984,394 766,034

Conclusion

CommunityDNS is 11.447 times faster than Oracle Berkley DB on read and 3.895 times faster on write.

A DNS cluster test with a zone size of 300 million names will be conducted early March 2008 to simulate real world DNS traffic designed to reduce the impact of a DDoS Cyber-attack on DNS infrastructure.

About Professor James Harold Davenport

Professor Davenport (born 1953), Director of Studies, Bath University, is a UK authority on Domain Name System having taught the subject for the last 10 years and is a British compute scientist who works in computer algebra. He is the Hebron and Medlock Professor of Information Technology at the University of Bath in Bath, England. Professor Davenport is an author of a textbook about computer algebra and many papers. He has been Project Chair of the European OpenMath Project and its successor thematic Network, with responsibilities for aligning OpenMath and MathML, producing Content Dictionaries and supervised a Reduce-based OpenMath/MathML translator, and was Treasurer of the European Mathematical Trust. He was Founding Editor-in-Chief of the London Mathematical Society's Journal of Computation and Mathematics.

About CommunityDNS

With offices in the US, the UK and Japan, CommunityDNS is the global Anycast provider whose network was engineered for security, optimized for speed and designed for resiliency. Successfully supporting over 120 million domain names from over 97 TLDs, CommunityDNS processes 25 billion queries per day. With security integral in the network's initial design, CommunityDNS was chosen to work in a study commissioned by the EU Commission's office of the Directorate General for Justice, Freedom and Security regarding Internet resiliency for the European Union. Fully supporting IPv6, DNSSEC and IDNs, CommunityDNS provides global DNS Anycast services, fully managed DNS platform services and DNS white-labeling.

More information regarding CommunityDNS may be found at http://www.cdns.net/facts.html

http://www.cdns.net/