High Availability Using Raima Database Manager Server



Similar documents
Pervasive PSQL Meets Critical Business Requirements

VERITAS Business Solutions. for DB2

High Availability Solutions for the MariaDB and MySQL Database

Creating A Highly Available Database Solution

Application Brief: Using Titan for MS SQL

High Availability Database Solutions. for PostgreSQL & Postgres Plus

TABLE OF CONTENTS THE SHAREPOINT MVP GUIDE TO ACHIEVING HIGH AVAILABILITY FOR SHAREPOINT DATA. Introduction. Examining Third-Party Replication Models

EMC Backup and Recovery for Microsoft SQL Server 2008 Enabled by EMC Celerra Unified Storage

Availability Digest. Raima s High-Availability Embedded Database December 2011

Snapshot Technology: Improving Data Availability and Redundancy

Informix Dynamic Server May Availability Solutions with Informix Dynamic Server 11

Foreign and Primary Keys in RDM Embedded SQL: Efficiently Implemented Using the Network Model

Disaster Recovery for Oracle Database

Comparing Microsoft SQL Server 2005 Replication and DataXtend Remote Edition for Mobile and Distributed Applications

High Availability and Disaster Recovery Solutions for Perforce

Availability Digest. MySQL Clusters Go Active/Active. December 2006

A SURVEY OF POPULAR CLUSTERING TECHNOLOGIES

Clustering and Queue Replication:

High Availability with Postgres Plus Advanced Server. An EnterpriseDB White Paper

Perforce Backup Strategy & Disaster Recovery at National Instruments

SQL Server Database Administrator s Guide

Module 14: Scalability and High Availability

Oracle Database 10g: Backup and Recovery 1-2

High Availability for Citrix XenApp

Non-Stop Hadoop Paul Scott-Murphy VP Field Techincal Service, APJ. Cloudera World Japan November 2014

Top 10 Reasons why MySQL Experts Switch to SchoonerSQL - Solving the common problems users face with MySQL

Microsoft SQL Server 2008 R2 Enterprise Edition and Microsoft SharePoint Server 2010

Introduction. Setup of Exchange in a VM. VMware Infrastructure

Appendix A Core Concepts in SQL Server High Availability and Replication

Symantec and VMware: Virtualizing Business Critical Applications with Confidence WHITE PAPER

In Memory Accelerator for MongoDB

Westek Technology Snapshot and HA iscsi Replication Suite

Backup and Recovery. What Backup, Recovery, and Disaster Recovery Mean to Your SQL Anywhere Databases

Best Practices RAID Implementations for Snap Servers and JBOD Expansion

Backups and Maintenance

be architected pool of servers reliability and

Cloud Based Application Architectures using Smart Computing

Eloquence Training What s new in Eloquence B.08.00

CASE STUDY: Oracle TimesTen In-Memory Database and Shared Disk HA Implementation at Instance level. -ORACLE TIMESTEN 11gR1

Software-Defined Storage: What it Means for the IT Practitioner WHITE PAPER

How Using V3 Appliances Virtual Desktop Total Cost of Ownership (TCO) is Reduced: A Superior Desktop Experience For Less Money

DeltaV Virtualization High Availability and Disaster Recovery

How To Manage The Sas Metadata Server With Ibm Director Multiplatform

Blackboard Managed Hosting SM Disaster Recovery Planning Document

SQL-BackTrack the Smart DBA s Power Tool for Backup and Recovery

Microsoft SharePoint 2010 on VMware Availability and Recovery Options. Microsoft SharePoint 2010 on VMware Availability and Recovery Options

Business Continuity: Choosing the Right Technology Solution

Fault Tolerant Servers: The Choice for Continuous Availability on Microsoft Windows Server Platform

Contents. SnapComms Data Protection Recommendations

Cognos8 Deployment Best Practices for Performance/Scalability. Barnaby Cole Practice Lead, Technical Services

Achieving Zero Downtime and Accelerating Performance for WordPress

Comparing MySQL and Postgres 9.0 Replication

Fault Tolerant Servers: The Choice for Continuous Availability

Red Hat Cluster Suite

Availability Digest. SAP on VMware High Availability Analysis. A Mathematical Approach. December 2012

1. Management Application (or Console), including Deferred Processor & Encryption Key 2. Database 3. Website

Practical Cassandra. Vitalii

Securing Data in the Virtual Data Center and Cloud: Requirements for Effective Encryption

Administering and Managing Log Shipping

Postgres Plus xdb Replication Server with Multi-Master User s Guide

AppSense Environment Manager. Enterprise Design Guide

Solution Overview VMWARE PROTECTION WITH EMC NETWORKER 8.2. White Paper

Windows Geo-Clustering: SQL Server

The Benefits of Continuous Data Protection (CDP) for IBM i and AIX Environments

White Paper. Prepared by: Neil Shah Director, Product Management March, 2014 Version: 1. Copyright 2014, ezdi, LLC.

Distributed File System. MCSN N. Tonellotto Complements of Distributed Enabling Platforms

Be Very Afraid. Christophe Pettus PostgreSQL Experts Logical Decoding & Backup Conference Europe 2014

Accelerate SQL Server 2014 AlwaysOn Availability Groups with Seagate. Nytro Flash Accelerator Cards

Nimble Storage Best Practices for Microsoft SQL Server

WhitePaper. Private Cloud Computing Essentials

SteelFusion with AWS Hybrid Cloud Storage

How To Recover From A Trading System Failure

Technical Overview Simple, Scalable, Object Storage Software

UNINETT Sigma2 AS: architecture and functionality of the future national data infrastructure

The End of Services for Mac (SFM): Evaluating Your Replacement Options A Technical Best Practices Whitepaper

The Benefits of Virtualizing

The objective of this document is to present the high level plan for implementation, migration and Upgradation of SQL Server Database.

June Blade.org 2009 ALL RIGHTS RESERVED

Cisco Active Network Abstraction Gateway High Availability Solution

HP Smart Array 5i Plus Controller and Battery Backed Write Cache (BBWC) Enabler

Backup, Restore, High Availability, and Disaster Recovery for Microsoft SharePoint Technologies

Disaster Recovery Solutions for Oracle Database Standard Edition RAC. A Dbvisit White Paper

MAKING YOUR VIRTUAL INFRASTUCTURE NON-STOP Making availability efficient with Veritas products

White Paper. Optimizing the Performance Of MySQL Cluster

MySQL and Virtualization Guide

Shadowbase Data Replication Solutions. William Holenstein Senior Manager of Product Delivery Shadowbase Products Group

Exchange DAG backup and design best practices

SCALABLE DATA SERVICES

White Paper The simpro Cloud

IBM TSM DISASTER RECOVERY BEST PRACTICES WITH EMC DATA DOMAIN DEDUPLICATION STORAGE

Transcription:

BUSINESS WHITE PAPER High Availability Using Raima Database Manager Server A Raima Inc. Business Whitepaper Published: January, 2008 Author: Paul Johnson Director of Marketing Copyright: Raima Inc. Abstract High Availability (HA) is a broad term that can mean many things to just as many people. For the most part however people agree that it should describe the overall accessibility of data to the user. This paper highlights how Raima Database Managers provide developers with the ability to obtain high availability. This article is relative to the following versions of RDM: RDM Server: All

Contents Abstract...1 Introduction...3 High Availability with RDM Server...3 Zero Database Administration...3 Administration Tools...4 Client Recovery...4 Replication...5 Scalability through Replication...5 Fault Tolerance through Replication...6 Security through Replication...7 Mobile Snapshots through Replication...8 Hot Online Backup...9 Implementation...9 Conclusion... 10 Contact Information... 10 Page 2

Introduction High Availability (HA) is a broad term that can mean many things to just as many people. For the most part however people agree that it should describe the overall accessibility of data to the user. With this in mind, HA can encompass the ability of your system to be always up in a 24 x 7 manner; in the telecom industry, HA is measured in percentage availability (five nines or better). HA can also include how your system reacts to internal component failure (fault tolerance). And finally, it can describe the level of responsiveness of your system. A system that is always up, but not very responsive (a query takes hours to complete) cannot truly be described as Highly Available. Why is high availability important? In today s Always Up business environment, where customers demand instant response, and expect your services at their convenience, the cost of downtime can conservatively run into the thousands of dollars per minute. In addition, access to data can be a company s lifeline; data is the primary ingredient of business intelligence and many of the activities that surround the business. Consequently, the moment access is lost, the business suffers and expensive resources become inefficient or unavailable. In the following pages we will take a high level look at how Raima Database Server can help embedded application developers achieve high availability. High Availability with RDM Server High availability has always been a driving force in the development of the RDM products. The three primary product components that stand out as directly relevant to high availability are: 1. Zero Database Administration in addition to providing high availability is also a key factor in the defining an embedded database. 2. Replication including in-memory, on-disk, RDM Embedded to RDM Embedded, RDM Server to RDM Server, and coming in the next release RDM Embedded to RDM Server. 3. Hot Online Backup provides high availability by providing the ability to back up data while at the same time providing active read/write accessibility to the same data. Zero Database Administration One of the high value characteristics of RDM products that makes them unique among database solutions is its ability to be embedded within an application, with database configuration and administration completely controlled by the application, so that end-users of RDM-based applications are presented with virtually no administrative or maintenance requirements. This considerably lowers the end-user s total cost of ownership (TCO), which is often an important consideration when purchasing software applications. The RDM Server Admin API is a collection powerful and useful database administration utilities and functions. The Admin API is exposed to developers, allowing them to programmatically configure and run these database utilities and/or include them within their database application. The RDM Server API offers a rich set of administrative functions to support application level administration of the server, allowing the database system to perform the administrative tasks automatically, without having to launch special administration utilities. Page 3

Administration Tools RDM Server also supports ad hoc administrative activities by the end-user via an integrated administration utility for managing one or more server installations. The utility s graphical user interface makes it easy for the system administrator to: Create, modify, delete, and query server objects, including users, databases, Server Extensions, and database devices Start and shut down the server and perform backups Change all server and client configuration parameters and default settings Display server performance statistics Perform file management, including copying files to and from the server, deleting files on the server, and copying or moving files on the server Client Recovery In a networked environment, failure can occur if a user disconnects from the network or turns off a PC during a database transaction. RDM Server monitors client activities and performs client recovery when a client process abnormally terminates. When a client process terminates unexpectedly the server will detect its absence. The server will then automatically abort any active transactions, release locks, close the database files, and logs the client out. Page 4

Replication Raima Inc. recognizes the importance of high availability, and is proud to have introduced a state of the art replication engine, guaranteeing out of the box 99.999% uptime. Included is support for multi-slave architectures, allowing for complex replication models, increasing server uptime, data redundancy and data availability. RDM Server 8.0 introduced native support for asynchronous and active-passive replication. The solution is simple and yet very effective: one server can act as the Master Server, receiving updates to the Master database, while one or more servers can take on the role of the Slave Servers, providing read-only access to the Slave databases. Scalability through Replication Replication Master Server Slave Server #1 Slave 2 Server #2 Master Server No Index Heavily Indexed Heavily Indexed Write Locks Read Locks Using RDM Server, developers can utilize replication to scale out your solution to increase the availability and performance of your database. One way to achieve higher write access on the Master server the system can be devoted to only handling write operations leaving the Slave servers to handle the more frequent read access. By distributing read and write locks in such a manner, developers can prevent users who only require read access from being locked out due to a existing write lock. Another technique to improve performance on the Master server is to define the Master schema without any indices; this will result in fewer writes against the disk because there is no need to update index files. In addition, this will also result in a noticeably smaller overall footprint of the Master database. Page 5

Further performance improvement can be achieved on the Slave server by heavily indexing the Slave schema. One caveat with this option is when used in conjunction with the above mentioned method of not indexing the Master, developers will need to be aware that if the Slave machine fails, and ActOnFail is set to 1, the replication will simply do a file copy of the Master database to Slave database and not go through the process of applying each of the individual transactions to the Slave. As a result of the Master database not having any defined indices, no index files will be transferred from the Master to the Slave. To counter this problem developers have two options. They can either rebuild the Slave indices using the s_keybuild API or they can choose to set the ActOnFail parameter to 3 within the rdmserver.ini file. Fault Tolerance through Replication With RDM Server, it is possible to implement highly effective fault tolerance solution. There are two general possible failure scenarios that RDM replication addresses; the first is where a Slave server fails; and the other is when the Master server fails. The first scenario, when a Slave server has failed, is the easiest to solve. A failed Slave can easily be detected when a client receives a failed query against a read only database. The application can be easily be architected in such a way that it will simply query an alternate Slave server database. Because the current release of RDM Server does not allow for Slaves to be dynamically added, this configuration needs to be defined beforehand. Replication Master Server Primary Slave Server Secondary Slave Server Tertiary Slave Server Failover Detection In the event that the Master server fails, the situation becomes slightly more difficult because it means that one of the Slaves servers needs to become the Master server. The first step is to identify which of the Slave servers will assume the role of Master server. Using the s_iniset API, developers can simply reconfigure the chosen Slave server s rdmserver.ini file setting the role parameter from Slave to Master. Depending on the Page 6

application and situation, other parameters such as the cache size may also need to be reset as well. The next thing to update using the s_iniset is the new identity of the Master server within each of the Slave Server s rdmserver.ini files. Now that the roles of the Master and Slaves has been reset, all the machines next need to be gracefully brought down using the s_shutdown API and subsequently brought back up. Security through Replication With RDM Server it s possible to replicate specific databases on the Master server to targeted Slave servers. The use for such architecture could be security driven, where the requirement may be for specific databases to reside on certain servers. Or it could address performance issues, where an application expect certain databases to be access more often than others, and therefore wanting to located that database on a more powerful machine. Developers can easily define what Slave servers replicate what databases by setting the options in RDMs_Slave parameter within the rdmserver.ini file Master Server A B C Database A Database B Database C Slave Server #1 Slave Server #2 Slave Server #3 A B C Page 7

Mobile Snapshots through Replication With RDM Server s asynchronous replication solution, replicated databases don t need to be permanently connected to receive updates from the master. Through replication, developers can take a snap shot of your Master database and distribute it to devices in the field. As long as developers gracefully terminated the replication process, using by using the s_repkill API, your Slave database will be logically consistent and usable for read-only access. Once connected again the Master server and update your Slave database. Master Server Page 8

Hot Online Backup High availability can also be implemented through Hot Online Backup. In today s dynamic business environment, where the expectation is that data should be accessible 24 x 7, Hot Online Backup offers the ability to back up one s database while still providing active read/write accessibility. Hot Online Backup is a superior solution to traditional Cold Backup in that it does not require any downtime of the system. RDM Server supports hot on-line backup, or backing up the database server while reads, writes, and other database activities continue. While in hot backup mode, the RDM Server database files are kept in a static, transaction consistent state, allowing any backup utility to back up the files. Alternatively, a developer can incorporate backup capabilities into an application, using the new hot backup administration functions. While in hot backup mode, RDM Server stores all changed database pages in a separate "hot" file. When hot backup mode has ended, the pages from the hot file are gradually migrated back to the database files as they are referenced. Implementation RDM Server implementation of Hot Online Backup is fairly simple; anyone with Administrator privilege can initiate backup either from RDSADMIN utility or programmatically using the s_ API s. When your system is in hot backup mode, you can expect the following conditions to apply: 1. Database Files are opened as shareable. 2. All updates to the database are written to a hot file. 3. No updates are made to the database files that will affect the logical consistency of the database. 4. You can expect to experience some performance degradation. Application Change Logs RDM Server RDM Server Cache Database Hot File Checkpoint Image File Page 9

It is important to understand that RDM Server does not provide a utility to write the database file contents to a backup media device such as a tape drive. This is intentional in that it provides developers the ability to utilize any backup solution they want. Once hot backup mode begins, the actual backup can be performed manually or by using third-party backup software. When hot backup is terminated, the contents of the hot file are gradually migrated in to the database on a need-to basis. If developers wish to move all the changes from the hot file to the database immediately, they can do so by using the s_backupflush API function. The API s for Hot Online Backup are simple: s_backupbegin starts the backup; s_backupend terminates the backup process and s_backupkill that will unconditionally kill the backup process. Conclusion High availability is critical in today s environment and most applications are striving to achieve even the minimum requirements of five nines. RDM was designed from the ground up to always be on and if it went down it has always been able to get back on its feet. We called this from the beginning, in 1984 Zero Database Administration and it remains one of the key components of high availability within the RDM products. But as time has changed the requirements of within the database market so has RDM. Hot online backup was added to the product to increase HA functionality. More recently replication has been added to the RDM products providing even more HA functionality and flexibility. Developers looking to achieve high availability from a proven high quality embedded database at a reasonable cost need to consider Raima Database Managers. Free Product Software Developer Kits Available at: /downloads/ Contact Information Website: WORLDWIDE EUROPE Raima Inc. Raima Inc. 720 Third Avenue, Suite 1100 Stubbings House, Henley Road Seattle, WA 98104 Maidenhead SL6 6QL, United Kingdom Telephone: +1 206 748 5300 Telephone: +44 1628 826 800 Fax: +1 206 748 5200 Fax: +44 1628 825 343 E-mail: sales@raima.com E-mail: sales@raima.com Page 10