Symfoware Server Reliable and Scalable Data Management



Similar documents
Integration of PRIMECLUSTER and Mission- Critical IA Server PRIMEQUEST

Disaster Recovery Feature of Symfoware DBMS

Integrated Application and Data Protection. NEC ExpressCluster White Paper

Provisioning Technology for Automation

Operating System for the K computer

On-Demand Virtual System Service

HiRDB 9 HiRDB is an evolving database for continuing business services.

StreamStorage: High-throughput and Scalable Storage Technology for Streaming Data

System Management and Operation for Cloud Computing Systems

Overview of Next-Generation Green Data Center

Online Failure Prediction in Cloud Datacenters

Middleware for Creating Private Clouds

Fujitsu s Approach to Hybrid Cloud Systems

VERITAS Business Solutions. for DB2

The functionality and advantages of a high-availability file server system

Fault Tolerant Servers: The Choice for Continuous Availability

PARALLELS CLOUD STORAGE

High Availability Essentials

Fujitsu s Approach to Platform as a Service (PaaS)

BackupEnabler: Virtually effortless backups for VMware Environments

IT Infrastructure of Data Center Services Based on ITIL

Fujitsu s Approach to Cloud Computing

Remote Copy Technology of ETERNUS6000 and ETERNUS3000 Disk Arrays

Private Cloud Using Service Catalog

PSAM, NEC PCIe SSD Appliance for Microsoft SQL Server (Reference Architecture) September 11 th, 2014 NEC Corporation

Solution Concept for Public Libraries: One Library

Solution Brief Availability and Recovery Options: Microsoft Exchange Solutions on VMware

OPTIMIZING SERVER VIRTUALIZATION

Engineering Cloud: Flexible and Integrated Development Environment

An Oracle White Paper January A Technical Overview of New Features for Automatic Storage Management in Oracle Database 12c

Mechanical Design Platform on Engineering Cloud

Affordable, Scalable, Reliable OLTP in a Cloud and Big Data World: IBM DB2 purescale

How To Build A Clustered Storage Area Network (Csan) From Power All Networks

Hitachi Essential NAS Platform, NAS Gateway with High Cost Performance

Express5800 Scalable Enterprise Server Reference Architecture. For NEC PCIe SSD Appliance for Microsoft SQL Server

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

Disaster Recovery Strategies

Cloud Server. Parallels. Key Features and Benefits. White Paper.

Virtualizing Microsoft Exchange Server 2010 with NetApp and VMware

SPARC64 VIIIfx: CPU for the K computer

NEC Corporation of America Intro to High Availability / Fault Tolerant Solutions

IBM System Storage DS5020 Express

Neverfail Solutions for VMware: Continuous Availability for Mission-Critical Applications throughout the Virtual Lifecycle

FUJITSU Transformational Application Managed Services

A SWOT ANALYSIS ON CISCO HIGH AVAILABILITY VIRTUALIZATION CLUSTERS DISASTER RECOVERY PLAN

DEPLOYING IBM DB2 FOR LINUX, UNIX, AND WINDOWS DATA WAREHOUSES ON EMC STORAGE ARRAYS

An Oracle White Paper November Oracle Real Application Clusters One Node: The Always On Single-Instance Database

technology brief RAID Levels March 1997 Introduction Characteristics of RAID Levels

Module 14: Scalability and High Availability

Synology High Availability (SHA)

Radware ADC-VX Solution. The Agility of Virtual; The Predictability of Physical

Business-centric Storage FUJITSU Hyperscale Storage System ETERNUS CD10000

Achieving High Availability & Rapid Disaster Recovery in a Microsoft Exchange IP SAN April 2006

Network Solution for Achieving Large-Scale, High-Availability VoIP Services

MAS 200. MAS 200 for SQL Server Introduction and Overview

Solbox Cloud Storage Acceleration

Blackboard Collaborate Web Conferencing Hosted Environment Technical Infrastructure and Security

Development and Runtime Platform and High-speed Processing Technology for Data Utilization

Application Brief: Using Titan for MS SQL

The Cloud Hosting Revolution: Learn How to Cut Costs and Eliminate Downtime with GlowHost's Cloud Hosting Services

OVERVIEW. CEP Cluster Server is Ideal For: First-time users who want to make applications highly available

Load Testing and Monitoring Web Applications in a Windows Environment

Getting Started with Endurance FTvirtual Server

IT Platforms for Utilization of Big Data

A powerful duo. PRIMEQUEST and SQL Server

Radware ADC-VX Solution. The Agility of Virtual; The Predictability of Physical

Fujitsu Big Data Software Use Cases

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

RAID technology and IBM TotalStorage NAS products

Server Consolidation with SQL Server 2008

System Infrastructure Non-Functional Requirements Related Item List

Eloquence Training What s new in Eloquence B.08.00

Maximizing Data Center Uptime with Business Continuity Planning Next to ensuring the safety of your employees, the most important business continuity

Red Hat Enterprise linux 5 Continuous Availability

EMC VPLEX FAMILY. Transparent information mobility within, across, and between data centers ESSENTIALS A STORAGE PLATFORM FOR THE PRIVATE CLOUD

High Availability Guide for Distributed Systems

Scala Storage Scale-Out Clustered Storage White Paper

Inside Track Research Note. In association with. Enterprise Storage Architectures. Is it only about scale up or scale out?

Transcription:

Symfoware Server Reliable and Scalable Data Management Kazunori Takata Masaki Nishigaki Katsumi Matsumoto In recent years, the scale of corporate information systems has continued to expand and the amount of data and transactions to be processed has been drastically increasing. Nevertheless, these systems still need to ensure a high level of processing performance, reliability and scalability. To achieve this, Fujitsu has developed a database server fallback function and application-connection shifting function. These functions are used not only to handle potential faults but also to accommodate business growth, and are offered through Fujitsu s Symfoware Server high-reliability high-performance database software. These approaches have propelled the development of parallel-processing and cluster technologies. This paper describes Fujitsu s approach to steady database operation with the focus on a database server fallback function to achieve high performance, high reliability and good scalability in mega-scale load-sharing systems using multiple database servers. 1. Introduction Because current ICT systems are closely related to corporate and social activities, they need to operate in a reliable way. Unexpected system shutdowns are having a greater impact than ever before. This may affect not only corporate business processes but also social infrastructure services such as financial, community, medical, logistics and communication services. Therefore, the majority of these companies consider it essential to be able to continue their business without suspending services even in the event of a fault in their systems such as a server fault. Against this background, in developing Symfoware Server (hereafter, Symfoware), a highreliability, high-performance database, Fujitsu has placed emphasis on the ability to continue business through steady system operations. In mission-critical systems in particular, there are needs for high-quality, continued operations and stable performance of a system. To meet these requirements, we have made substantial progress in various mission-critical systems by applying our technologies nurtured since the age of mainframes to open systems in an improved form. As a high-reliability, high-performance database for mission-critical systems, the functions of Symfoware have been enhanced. Based on its proven performance, Symfoware has been adopted in arrowhead, the latest stock trading system of the world s highest level used by the Tokyo Stock Exchange. In this paper, first we will describe our approaches to date to secure stable operations. Then, we will introduce the database server fallback function which is used to address increasing transactions in mega-scale systems, high-speed access from application programs and scalability of systems. At the end, we will further describe how the aforementioned approaches are deployed in small and medium-scale systems as well. FUJITSU Sci. Tech. J., Vol. 47, No. 3, pp. 277 284 (July 2011) 277

Active B Stand-by A Stand-by B Active B (a) N vs. 1 stand-by type: Operation mode comprised of one stand-by node versus multiple active nodes Active Stand-by 1 Stand-by 2 ctive Stand-by 1 (b) Cascade type: Operation mode comprised of multiple stand-by nodes versus one active node Stand-by B Stand-by A1 Stand-by B2 Stand-by A2 Stand-by B1 Active B Stand-by A1 Stand-by B1 (c) N vs. M stand-by type: Operation mode comprised of multiple stand-by nodes versus multiple active nodes Figure 1 Operation modes supported by Symfoware. 2. Approaches to stable operations to date Within the Symfoware project, we have tried to reduce the duration from fault occurrence to the resumption of business process to ensure steady system operations even if various types of faults occur. In our approaches so far, we have sought to develop high-speed switch technologies to address unexpected system shutdowns. These technologies such as the prior start-up of a standby server (hot stand-by) and prior database opening function accelerate the switching process using additional stand-by server. Furthermore, we offer varied operation modes as indicated in Figure 1 that satisfy various system requirements and budgets of customers. On the other hand, there are requirements to ensure performance and expandability in systems that are increasingly becoming large. To address these requirements, the SharedNothing method note 1) is used to achieve both high performance and expandability, because it allows note 1) An access method where database access control is matched with the node and only the node concerned can access the database under control. Performance proportional to the increase of node unit can be achieved. parallel processing without generating conflicts for database server resources (Figure 2). Further, by combining this method with hot stand-by operation to enhance availability, the performance, scalability and reliability of largescale systems can be ensured. Because the rate of database updates will drastically increase as system scale expands, the rate of write access to the logs that guarantee the transactions will increase. As a consequence, log write-access performance tends to become a bottleneck that adversely affects the performance of an application server. To address this issue, logs are divided into multiple groups based on each business application program to ensure good performance. These units of divided logs are called log groups and operations based on multiple log groups are called scalable log operations. Further, by combining scalable log operations and load-sharing operations, it is possible to limit the impact of a fault to only within the concerned log group unit. Thus, Symfoware has evolved under the concept of thoroughly protecting customers business processes by protecting the entire system. In recent years, the importance of 278 FUJITSU Sci. Tech. J., Vol. 47, No. 3 (July 2011)

Increase in data access Load-sharing function CPU CPU Memory Memory CPU Memory Server addition CPU Memory <Relationship between number of servers and processing performance> Shared Nothing Processing performance Shared Everything 2 3 4 Number of servers Figure 2 SharedNothing removes trade-offs between high-performance and scalability. simultaneous processing for large-volume transactions has been increasing. Such processing is one way to make positive use of data including log information from algorithmic trading note 2) and data from RFID tags and various sensors. This has resulted in the further expansion of systems. To address this situation, the technologies so far developed need to be further improved. 3. Increase of transactions in mega-scale systems A great many transactions are generated with the expansion of systems. Once a server fault occurs, a large amount of transactions will remain queued during the task interruption. This means that the cost spent for recovery after task resumption is extremely high. Therefore, it is becoming increasingly important to reduce the processing time to recover the system from failure. In conventional load-sharing database systems, system availability has been ensured by adopting a failover function based on each database server. This method has advantages in terms of its high clarity and reliability, based note 2) One type of stock trading. Trading based on a computer system where buy and sell orders are repeated based on predetermined rules. FUJITSU Sci. Tech. J., Vol. 47, No. 3 (July 2011) on the fact that the switch is carried out by the database server unit. While maintaining this characteristic, the performance at switching has been enhanced. This has been achieved by distributing logs for database processing by Symfoware into multiple log groups and conducting simultaneous switch controls. This improvement has helped reduce the time needed for restarting the tasks. Nevertheless, the drastic increase in the amount of data to be handled by Symfoware gave rise to the significant increase in transactions. So, the two challenges mentioned below have been focused on: 1) Challenge 1: Prolonged time for switching caused by increase in number of disks If a large amount of data is to be handled by Symfoware, the number of disks necessary to accommodate that data in a database server will also increase. In such a situation, it is essential to distribute logs that limit the writing performance into a database in order to maximize the server performance. As a consequence, a single database server needs to have a large number of disks for log groups. On the other hand, when switching takes place from one server to another, a large amount of processing time will concentrate on a single database server or a single Symfoware instance (DBMS execution unit). Such time includes the time needed for identifying many disks, 279

completing I/O processing on them, and for controlling these disks from the CPU and the time for synchronization. This poses a barrier to further reducing the time necessary for task resumption. 2) Challenge 2: Equipment cost accrued from preparation of stand-by servers When adopting a switching method by each database server, it is necessary to prepare standby servers that take over the original. In the case of a load-sharing system comprised of multiple database servers, it is necessary to have stand-by servers of a number proportional to the number of the database server units. However, with the increase in unit number, the CPU usage ratio of the entire system will drop. Further, equipment cost increases due to the need for additional space for server installation and for a reinforced power supply and cooling systems. To address these challenges, in the latest development project we reinforced the following two points. We focused on the ability of business continuity in a load-sharing system that carries out a large amount of transaction processing. Function to switch data access role to a sound database server (fallback function of database server) Function to keep optimum connections from application servers to database servers all the time (application-connection shifting function) 4. Solution based on fallback function of database server A new function is integrated Symfoware that shifts an access to log groups from the faulty database server in charge to the remaining sound database servers. We call it a fallback function of database servers. This method can overcome the performance barrier caused by serialization in the switching process adopted in the conventional approaches that were employed for database server and Symfoware instance. We have a lot of work to succeed the log groups from the faulty server to other sound servers. By distributing the load to multiple servers and conducting them in parallel processing, the time necessary for task resumption can be reduced (Figure 3). By adopting this approach, there is no need to have a stand-by server, because the remaining sound database servers succeed the processing managed by the faulty server. This enables efficient use of the CPU as an entire system. Active 1 Active 2 Active 3 Active 4 Active 5 Stand-by Active 1 Active 2 Active 3 Active 4 Active 5 Stand-by server is not necessary Data A Data E Data I Data M Data Q Data B Data F Data J Data N Data R Data C Data G Data K Data O Data S Data D Data H Data L Data P Data T Data A Data E Data I Data M Data Q Data B Data F Data J Data N Data R Data C Data G Data K Data O Data S Data D Data H Data L Data P Data T Data A Data B Data C Data D Stand-by server is necessary to be prepared for fault. High introduction cost! (a) Conventional load-sharing function Possible to continue task by using other servers in the event of fault. Both high reliability and low cost can be achieved! (b) Configuration of load-sharing function after improvement Figure 3 Effi cient fallback mode of DB servers. 280 FUJITSU Sci. Tech. J., Vol. 47, No. 3 (July 2011)

Based on the above, it became possible to both reduce the time until task resumption and minimize the amount of equipment needed to secure availability while maintaining the highspeed feature of the SharedNothing method. 5. Application-connection shifting function With regard to application servers connecting to database servers, database access is possible even if they connect to any database server in a system based on the load-sharing configuration. Thanks to the concept of one large database server comprised of many servers, details of its inner structure are concealed from application servers. This makes the connection design easy. On the other hand, there was a requirement for significant speed with regard to application server performance in this development project that focused on a large amount of transactions. In this case, it is advantageous to use the direct access method in terms of performance. this method, the connection path is proactively controlled so that an application server should be directly connected to the database server that In controls the data to be accessed (Figure 4). In the conventional load-sharing system, direct access to log groups is naturally maintained even if database servers are switched. This is because the stand-by server to be taken over is fixed. We implemented an application-connection shifting function to reinforce the fallback function of database servers. In the event of fallback, this new function shifts application connections from the faulty database servers to the new servers that will succeed the direct-access to the log groups in question (Figure 5). By ensuring direct accessibility of application servers to the data to be accessed (log groups), communication costs among database servers are minimized. In this way, approaches to reinforce system performance are made even after the fallback of database servers. 6. System scalability To realize stable operations on a continuous basis, a database should grow along with the growth of customers businesses. To be specific, it is necessary to address the increase in the number of transactions and data volume due to Access to log group A APP Connection Manager Connection to database server in charge of log groups SYS-C SYS-S1 SYS-S2 SYS-S3 A Symfoware B C D High efficiency without communication among database servers APP: Application program Figure 4 Connection to DB server with direct access. FUJITSU Sci. Tech. J., Vol. 47, No. 3 (July 2011) 281

Access to log group A APP Access to log group A APP Connection Manager Connection Manager Connection from application servers follows the shift of log groups SYS-C SYS-S1 SYS-S2 SYS-S3 SYS-S1 SYS-S2 SYS-S3 Symfoware Symfoware A B C D A B C D (a) Before improvement (b) After improvement Figure 5 Reconnecting application servers to DB servers with direct access. the integration of new businesses and day-by-day data accumulation. Our load-sharing system can keep pace with these changes by being scaled out. In this load-sharing system, an increase in the entire processing amount can be effectively handled by adding database servers and distributing workloads. In the SharedNothing method adopted by Symfoware, a considerable amount of data had to be reallocated to the added database servers. Because of this, it was necessary to reexamine the database configuration used in the conventional load-sharing system. In such a case, data once arranged on a disk should be extracted, the storage for the concerned tables should be reallocated to a different database server, and the data should be restored there. This procedure requires a significant amount of time and labor, leading to high risks due to potential human errors. In our approach to developing a fallback function for database servers, the solution shown below was developed to address this issue. In this fallback function, the administrator adds new database servers to the system configuration file and changes some of the names of database servers in the file to the names of new servers. In accordance with this new configuration file, the log groups to be migrated will be succeeded by the new servers. Then, just by rebooting the system, the shift of database configuration will be completed automatically (Figure 6). Important functions of corporate database products are functions for business continuity that can handle not only potential faults but also accommodate the business growth of our customers. Even when it is hard to predict the amount of data and the rate of access after system inauguration, our method allows stable system operation for a long period, because it is easy to add storage and servers if necessary. With these features, it is easy to reconfigure databases. 7. Example of introducing megascale system Excellent scalability has been secured by making the aforementioned fallback function of database servers and the application-connection shifting function. Consequently, Symfoware has been adopted in arrowhead, the latest 282 FUJITSU Sci. Tech. J., Vol. 47, No. 3 (July 2011)

Active 1 Active 2 Active 3 Active 4 Active 5 Active 1 Active 2 Active 3 Active 4 Active 5 Data A Data D Data G Data I Data A Data D Data G Data I Data B Data E Data H Data J Data C Data B Data E Data H Data J Data C Data C Data F Data F Data C Data F Data F Reconstruction of data for shifting is necessary Takes long time to address load distribution after starting operation Difficult to change configuration after starting operation (a) Configuration of conventional load-sharing function Transfer data to another server without manual reconstruction Possible to rearrange data just by definition file change! Flexible to change configuration even after starting operations (b) Configuration of load-sharing function after improvement Figure 6 Expansion of DB system without data reconstruction. stock trading system used by the Tokyo Stock Exchange, since January 2010. 1) arrowhead is a mega-scale load-sharing system that works by dividing its storage exceeding 1 TB into several dozens of log groups. It performs distributed processing using a group of database servers comprised of multiple PRIMEQUEST units for each disk. It is a mission-critical system that must not be stopped by any means. It is a gigantic system that truly represents Japan s technological prowess. Symfoware ensures the availability of database functions through its fallback function and application-connection shifting function, while processing SQL commands more than 14 million times per minute, as requested by arrowhead. It also ensures a switching-over performance in the order of seconds. Achieving both good performance and availability in such a mega-scale system could be achieved only with Symfoware that integrates the fruits of longtime commitments to these objectives. 8. Approaches to diversifying system requirements The request for uninterrupted systems was previously only for large-scale systems owned by a limited number of large companies. But nowadays, demands for uninterrupted systems have come also from small and medium-size companies. For instance, it has become possible not only for large companies but also for those small and medium-size companies to deal directly with overseas companies. Accordingly, there are demands to have systems operate for longer or operate non-stop when working with such overseas counterparts in different time zones. Such a situation is attributable to the increasing dependency of business processes on ICT systems, regardless of the corporate scale. This is because of the adoption of the Internet and other technologies. Therefore, there are needs to have not only the above-mentioned functions for mega-scale systems but also an affordable uninterrupted system that allows simple operations. To address these requirements, we offer a mirroring function that allows the entire database to be easily and completely duplicated. With this technology, high-reliability operations at an affordable budget are possible for customers to whom it has been difficult to introduce clusters and recovery operations. FUJITSU Sci. Tech. J., Vol. 47, No. 3 (July 2011) 283

The features of the mirroring function are as follows: 1) Simple business continuity There is no need to cut out points of fault and select a recovery method when there is an abnormality. It is possible to continue business processes using a sound database whatever the type of the fault may be. Besides, there is no need to conduct a complicated recovery design before inauguration. 2) Low cost It is not necessary to purchase expensive equipment, because ordinary hardware components can be used. Further, this solution is feasible with the minimum amount of resources, because mirroring is achieved by using the minimum number of logs. In addition, the initial introductory costs can be reduced because the system is simple to set up. 9. Conclusion Based on Fujitsu s core technologies nurtured for many years, new technologies for load-sharing operations were developed with Symfoware. Application-connection shifting functions were reinforced in the load-sharing operation. In this way, both excellent performance and high reliability could be achieved in the system based on close interconnection of application servers and database servers. Further, to address diversifying requirements, we are committed to improving various types of systems in terms of scale and requirements, including mega-scale systems, in order to realize stable operations. As we described above, Symfoware has evolved with the growth of its customers. We have made our best efforts to realize stable operations in customers systems based on reinforcing technologies and improving operability. As a result of these efforts, Symfoware was evaluated as the number one system in the open-type RDB software division of the 15 th customers satisfaction study sponsored by Nikkei Computer. Particularly, its proven performance in arrowhead confirmed its world-class level reliability and scalability. Furthermore, it was highly evaluated for the continuous efforts to improve it from the users standpoint, for its ease of system development, and for its enhanced operations management. We will continue working to offer more sophisticated products that ensure our customers systems operate stably. Reference 1) Tokyo Stock Exchange: TSE Equity Market Summary after arrowhead Launch. Feb. 25, 2011. http://www.tse.or.jp/news/47/ b7gje6000001cjo1-att/20110225_b.pdf Kazunori Takata Fujitsu Ltd. Mr. Takata is currently engaged in the development of Symfoware. Katsumi Matsumoto Fujitsu Ltd. Mr. Matsumoto is currently engaged in the development of Symfoware. Masaki Nishigaki Fujitsu Ltd. Mr. Nishigaki is currently engaged in the development of Symfoware. 284 FUJITSU Sci. Tech. J., Vol. 47, No. 3 (July 2011)