EMC GREENPLUM DATA COMPUTING APPLIANCE: PERFORMANCE AND CAPACITY FOR DATA WAREHOUSING AND BUSINESS INTELLIGENCE

Similar documents
EMC GREENPLUM MANAGEMENT ENABLED BY AGINITY WORKBENCH

Virtualizing SQL Server 2008 Using EMC VNX Series and VMware vsphere 4.1. Reference Architecture

Microsoft Office SharePoint Server 2007

EMC XTREMCACHE ACCELERATES VIRTUALIZED ORACLE

Technical Note P/N REV A01 March 29, 2007

Hitachi Adaptable Modular Storage and Hitachi Workgroup Modular Storage

EMC Business Continuity for Microsoft Applications

Hitachi Adaptable Modular Storage and Workgroup Modular Storage

Mellanox InfiniBand Solutions Accelerate Oracle s Data Center and Cloud Solutions

FOUR WAYS TO LOWER THE COST OF REPLICATION

Using EMC FAST with SAP on EMC Unified Storage

DELL EMC DATA DOMAIN SISL SCALING ARCHITECTURE

IBM Storwize V5000 disk system

EMC Virtual Infrastructure for Microsoft Applications Data Center Solution

InfoSphere Warehouse with Power Systems and EMC CLARiiON Storage: Reference Architecture Summary

EMC Business Continuity for Microsoft SharePoint Server (MOSS 2007)

IBM System Storage DCS3700

EMC CLARiiON CX3 Series FCP

Dell PowerEdge R720xd with PERC H710P: A Balanced Configuration for Microsoft Exchange 2010 Solutions

SUPERMICRO, VEXATA AND INTEL ENABLING NEW LEVELS PERFORMANCE AND EFFICIENCY FOR REAL-TIME DATA ANALYTICS FOR SQL DATA WAREHOUSE DEPLOYMENTS

IBM s Data Warehouse Appliance Offerings

Design a Remote-Office or Branch-Office Data Center with Cisco UCS Mini

Virtualized SQL Server Performance and Scaling on Dell EMC XC Series Web-Scale Hyper-converged Appliances Powered by Nutanix Software

Lenovo Database Configuration

TPC-E testing of Microsoft SQL Server 2016 on Dell EMC PowerEdge R830 Server and Dell EMC SC9000 Storage

STORAGE CONSOLIDATION WITH IP STORAGE. David Dale, NetApp

5 Fundamental Strategies for Building a Data-centered Data Center

Netezza The Analytics Appliance

EMC XTREMCACHE ACCELERATES ORACLE

Storage Designed to Support an Oracle Database. White Paper

Upgrade to Microsoft SQL Server 2016 with Dell EMC Infrastructure

Veritas NetBackup on Cisco UCS S3260 Storage Server

Executive Brief June 2014

Dell EMC SAP HANA Appliance Backup and Restore Performance with Dell EMC Data Domain

EMC GREENPLUM DATA COMPUTING APPLIANCE SAN MIRROR ON EMC VNX

Reasons to Deploy Oracle on EMC Symmetrix VMAX

SAP High-Performance Analytic Appliance on the Cisco Unified Computing System

Lenovo Database Configuration

EMC DATA DOMAIN OPERATING SYSTEM

EMC Virtual Infrastructure for Microsoft SharePoint Server 2010 Enabled by EMC CLARiiON and VMware vsphere 4

FLASHARRAY//M Smart Storage for Cloud IT

Oracle Exadata: Strategy and Roadmap

PeerStorage Arrays Unequalled Storage Solutions

DATA PROTECTION IN A ROBO ENVIRONMENT

Performance Comparisons of Dell PowerEdge Servers with SQL Server 2000 Service Pack 4 Enterprise Product Group (EPG)

Microsoft SQL Server 2012 Fast Track Reference Configuration Using PowerEdge R720 and EqualLogic PS6110XV Arrays

Assessing performance in HP LeftHand SANs

Reference Architecture

STORAGE CONSOLIDATION WITH IP STORAGE. David Dale, NetApp

Greenplum Database 4.0: Critical Mass Innovation. Architecture White Paper August 2010

EMC Integrated Infrastructure for VMware. Business Continuity

Storage Optimization with Oracle Database 11g

EMC VSPEX FOR VIRTUALIZED MICROSOFT EXCHANGE 2013 WITH MICROSOFT HYPER-V

Design a Remote-Office or Branch-Office Data Center with Cisco UCS Mini

VEXATA FOR ORACLE. Digital Business Demands Performance and Scale. Solution Brief

Appliances and DW Architecture. John O Brien President and Executive Architect Zukeran Technologies 1

EMC Backup and Recovery for Microsoft SQL Server

DELL Reference Configuration Microsoft SQL Server 2008 Fast Track Data Warehouse

HP solutions for mission critical SQL Server Data Management environments

IBM Z servers running Oracle Database 12c on Linux

Dell Microsoft Reference Configuration Performance Results

IBM System Storage DS5020 Express

Evolving To The Big Data Warehouse

Virtual Exchange 2007 within a VMware ESX datastore VMDK file replicated

Best Practices. Deploying Optim Performance Manager in large scale environments. IBM Optim Performance Manager Extended Edition V4.1.0.

Lenovo Database Configuration for Microsoft SQL Server TB

Oracle Database Exadata Cloud Service Exadata Performance, Cloud Simplicity DATABASE CLOUD SERVICE

Massive Scalability With InterSystems IRIS Data Platform

Oracle RAC 10g Celerra NS Series NFS

BUILD BETTER MICROSOFT SQL SERVER SOLUTIONS Sales Conversation Card

EMC CLARiiON CX3-40. Reference Architecture. Enterprise Solutions for Microsoft Exchange 2007

Dell PowerVault MD Family. Modular storage. The Dell PowerVault MD storage family

Was ist dran an einer spezialisierten Data Warehousing platform?

Oracle Exadata: The World s Fastest Database Machine

Oracle Exadata Statement of Direction NOVEMBER 2017

New Approach to Unstructured Data

VERITAS Storage Foundation 4.0 TM for Databases

Symantec NetBackup 5200

EMC Backup and Recovery for Microsoft Exchange 2007

FlashGrid Software Enables Converged and Hyper-Converged Appliances for Oracle* RAC

Lenovo RAID Introduction Reference Information

B.H.GARDI COLLEGE OF ENGINEERING & TECHNOLOGY (MCA Dept.) Parallel Database Database Management System - 2

Dell Microsoft Business Intelligence and Data Warehousing Reference Configuration Performance Results Phase III

ACCELERATE YOUR ANALYTICS GAME WITH ORACLE SOLUTIONS ON PURE STORAGE

ScaleArc for SQL Server

Microsoft SQL Server on Stratus ftserver Systems

DELL POWERVAULT MD FAMILY MODULAR STORAGE THE DELL POWERVAULT MD STORAGE FAMILY

Optimizing Tiered Storage Workloads with Precise for Storage Tiering

Discover the all-flash storage company for the on-demand world

EMC CLARiiON CX3-80. Enterprise Solutions for Microsoft SQL Server 2005

Dell Solution for JD Edwards EnterpriseOne with Windows and SQL 2000 for 50 Users Utilizing Dell PowerEdge Servers And Dell Services

Microsoft SQL Server 2012 Fast Track Reference Architecture Using PowerEdge R720 and Compellent SC8000

SUN ORACLE DATABASE MACHINE

Four-Socket Server Consolidation Using SQL Server 2008

An Introduction to GPFS

Cisco UCS Mini Software-Defined Storage with StorMagic SvSAN for Remote Offices

EMC Virtual Infrastructure for Microsoft Exchange 2010 Enabled by EMC Symmetrix VMAX, VMware vsphere 4, and Replication Manager

White Paper. Low Cost High Availability Clustering for the Enterprise. Jointly published by Winchester Systems Inc. and Red Hat Inc.

Storageflex HA3969 High-Density Storage: Key Design Features and Hybrid Connectivity Benefits. White Paper

HAWQ: A Massively Parallel Processing SQL Engine in Hadoop

Transcription:

White Paper EMC GREENPLUM DATA COMPUTING APPLIANCE: PERFORMANCE AND CAPACITY FOR DATA WAREHOUSING AND BUSINESS INTELLIGENCE A Detailed Review EMC GLOBAL SOLUTIONS Abstract This white paper provides readers with an overall understanding of the EMC Greenplum Data Computing Appliance (DCA) architecture and its performance levels. It also describes how the DCA provides an option for every business requirement with a scalable end-to-end data warehouse solution packaged within a manageable, self-contained data warehouse appliance that can be easily integrated into an existing data center. August 2011

Copyright 2011 EMC Corporation. All Rights Reserved. EMC believes the information in this publication is accurate as of its publication date. The information is subject to change without notice. The information in this publication is provided as is. EMC Corporation makes no representations or warranties of any kind with respect to the information in this publication, and specifically disclaims implied warranties of merchantability or fitness for a particular purpose. Use, copying, and distribution of any EMC software described in this publication requires an applicable software license. For the most up-to-date listing of EMC product names, see EMC Corporation Trademarks on EMC.com. All trademarks used herein are the property of their respective owners. Part Number H8778 2

Table of contents Executive summary... 6 Business case... 6 Product overview... 7 DCA configurations... 7 DCA key features... 8 Key results... 9 Out-of-the-box performance... 10 Data load rates... 10 Appliance performance... 10 DCA scalability... 11 Introduction... 12 Purpose... 12 Scope... 12 Audience... 12 Terminology... 12 Features and benefits... 15 Performance... 15 Greenplum Database architecture... 15 Shared-nothing architecture... 15 Excellent scan and data load rates... 15 Interconnect Bus... 15 Scalability... 15 ETL: Extract, Transform, and Load... 15 Interoperability... 15 Performance... 16 Client access and third-party tools... 16 MapReduce... 16 Polymorphic Data Storage... 16 Recoverability... 17 Fault tolerance... 17 Backup and recovery with EMC Data Domain... 17 Time to value... 17 Rapid deployment for faster return on investment... 17 Reduced total cost of ownership... 17 Architecture... 18 Introduction to architecture... 18 Logical architecture... 18 3

MPP... 18 Database architecture... 18 Master Servers... 18 Segment Servers... 19 Segment Instance... 19 gnet Software Interconnect... 19 Pipelining... 19 Physical architecture... 19 DCA architecture... 21 Master Servers... 22 Segment Servers... 23 Interconnect Bus... 24 Administration Switch... 24 Product options... 25 DCA... 25 High capacity DCA... 25 Expanding the GP100... 26 Expanding the GP1000... 26 Design and configuration... 27 Introduction to DCA design and configuration... 27 DCA design considerations... 27 Data warehouse workload characteristics... 27 Key data warehouse design considerations... 28 Storage design and configuration... 29 Overview... 29 Master Server RAID configuration... 29 Segment Server RAID configuration... 30 Data redundancy mirror segments... 31 Greenplum Database design and configuration... 32 Database storage methods... 32 Writeable external tables... 32 Table storage types... 32 Design... 33 Configuration... 33 Fault tolerance... 34 Master Server redundancy... 34 Segment mirroring... 34 Monitoring and managing the DCA... 35 4

Greenplum Performance Monitor... 35 Managing the DCA... 36 Resource management... 38 Test and validation... 39 Introduction to test and validation... 39 Data load rates... 40 Overview... 40 Test objectives... 40 Test scenario... 40 Test procedure... 40 Test results... 41 DCA performance... 42 Test objectives... 43 Test scenarios... 43 Test methodology... 43 Test results... 44 Scalability: Expanding GP100 to GP1000... 45 Overview... 45 Test objectives... 46 Test scenarios... 46 Test procedure... 46 Performance results... 47 Scalability: Expanding GP1000 using a Greenplum DCA Scale-Out Module... 48 Overview... 48 Test objectives... 48 Test scenarios... 49 Test procedure... 49 Test results... 50 Redistribution results... 50 Conclusion... 51 Summary... 51 Findings... 51 Next steps... 52 References... 53 Product documentation... 53 Greenplum website... 53 White paper... 53 5

Executive summary Business case As businesses attempt to deal with the massive explosion in data, the ability to make real-time decisions that involve enormous amounts of information is critical to remain competitive. Today s Data Warehousing/Business Intelligence (DW/BI) solutions face challenges as they deal with increasing volumes of data, number of users, and complexity of analysis. As a result, it is imperative that DW/BI solutions seamlessly scale to address these challenges. Traditional DW/BI solutions use expensive, proprietary hardware solutions that are difficult to scale to meet the required growth and performance requirements of DW/BI. As a result, in order to address the performance needs and growth of their systems, customers face expensive, slow, and process-heavy upgrades. In addition, proprietary systems lag behind open systems innovation, so customers cannot immediately take advantage of improved performance curves. Most recently, traditional relational database management system (RDBMS) vendors have repurposed online transaction processing (OLTP) databases to offer good enough DW/BI solutions. While these solutions are good enough for OLTP, they can be very difficult to build, manage, and tune for future data warehousing growth. Data is expected to grow by 44 times from 0.8 ZB to 35.2 ZB 1 before the year 2020. Due to sheer growth and the lack of traditional DW/BI solutions that scale properly, enterprises have created data marts and personal databases to gain quick insight into their business. Many enterprises face a situation where only 10 percent of the decision data is in enterprise data warehouses, and the remainder of the decision data is in adjacent data marts and personal databases. To overcome the challenges of traditional solutions, an enterprise-class DW/BI infrastructure must meet the following criteria: Provide excellent and predictable performance Scale seamlessly for future growth Take advantage of industry-standard components to control the total cost of ownership (TCO) of the overall solution Provide an integrated offering that contains compute, storage, database, and network Enterprise-class DW/BI solutions are deployed in mission-critical environments. In addition to providing intelligence for the organization s own business operations, subsets of the intelligence generated by DW/BI solutions can be sold to customers, thereby generating profits for the organization. As such, an enterprise-class DW/BI solution needs to be reliable and have the ability to quickly recover from hardware and software failures. 1 Source:IDC Digital Universe Study, sponsored by EMC, May 2010 6

Product overview EMC s Data Computing Division is driving the future of data warehousing and analytics with breakthrough products including EMC Greenplum Database and EMC Greenplum Chorus TM the industry s first Enterprise Data Cloud platform. The division s products embody the power of open systems, cloud computing, virtualization, and social collaboration enabling global organizations to gain greater insight and value from their data than ever before. Using Greenplum Database, the Data Computing Division has developed a purpose-built data warehouse solution that integrates all of the components required for high performance. This solution is called the EMC Greenplum Data Computing Appliance (DCA). The DCA addresses essential DW/BI business requirements and ensures predictable performance and scalability. This eliminates the guesswork and unpredictability of a custom, in-house designed solution. The DCA provides a data warehouse solution packaged within a manageable, self-contained data warehouse appliance that can be easily integrated into an existing data center. This makes the DCA the least intrusive solution for a customer s data center in comparison to other available solutions. The DCA is available in two models: DCA and High Capacity DCA. The DCA system uses high-speed SAS drive technology, while the high capacity system uses SATA drive technology. DCA configurations Each DCA model comes in the following configurations: quarter-, half-, full-, and multi-rack. The DCA configuration is balanced for best performance and price, the Greenplum GP1000 Data Computing Appliance is a full-rack configuration using 600 GB 15k SAS drives in the Segment Servers for a usable capacity of 36.8 TB. The DCA product options available to customers are listed in Table 1. Table 1. DCA option DCA product options EMC Greenplum GP10 Data Computing Appliance Storage capacity (without compression) 9.2 TB 36 TB Storage capacity (with compression) EMC Greenplum GP100 Data Computing Appliance EMC Greenplum GP1000 Data Computing Appliance GP1000 with one EMC Greenplum DCA Scale-Out Module 18.4 TB 72 TB 36.8 TB 144 TB 73.6 TB 288 TB 7

The High Capacity DCA configuration is designed for data warehouse configurations needing extremely large amounts of storage space. The Greenplum GP1000C Data Computing Appliance is a full-rack configuration using 2 TB 7.2k SATA drives in the Segment Servers for a usable capacity of 124 TB. The High Capacity DCA product options are listed in Table 2. Table 2. DCA option High Capacity DCA product options EMC Greenplum GP10C Data Computing Appliance Storage capacity (without compression) 31 TB 124 TB Storage capacity (with compression) EMC Greenplum GP100C Data Computing Appliance EMC Greenplum GP1000C Data Computing Appliance GP1000C with one EMC Greenplum DCA Scale-Out Module 62 TB 248 TB 124 TB 496 TB 248 TB 992 TB DCA key features The DCA uses Greenplum Database software, which is based on a massively parallel processing (MPP) architecture. MPP harnesses the combined power of all available compute servers to ensure maximum performance. The base architecture of the DCA is designed with scalability and growth in mind. This enables organizations to easily extend their DW/BI capability in a modular way; linear gains in capacity and performance are achieved by expanding from a Greenplum GP10 to a GP1000, or by expanding the GP1000 through the use of a Greenplum DCA Scale-Out Module, with minimal downtime. Further DCA releases will enable the GP1000 to be expanded to include multiple Greenplum DCA Scale-Out Modules. Greenplum Database software supports incremental growth (scale out) of the data warehouse through its ability to automatically redistribute existing data across newly added compute resources. The DCA employs a high-speed Interconnect Bus that is used to provide database-level communication between all servers in the DCA. It is designed to accommodate access for rapid backup and recovery and data load rates (also known as ingest). Excellent performance is provided by effective use of the combined power of servers, software, network, and storage. The DCA can be installed and available within 24 hours (or less) of the customer receiving delivery and is ready to use for faster return on investment (ROI). The DCA uses cutting-edge industry-standard hardware rather than specialized or proprietary hardware. 8

DW/BI customers have unique business and operational requirements; these are reflected in the performance areas that are considered during the selection process for a data warehouse solution. For example: Data load rates The speed at which data can be loaded into a DW/BI system is important to customers who have a batch load process with a shrinking load window, a growing volume of data, and who are looking to move toward real-time analysis. Query performance This is a common concern for many customers. Query performance relies on four factors: Hardware (scan rate) Schema structure (table and index) Query complexity The applications that run on the data warehouse solution Operations This consists of three main areas: Backup Disaster recovery Development and test refresh The operational area is often overlooked and can become a challenge to other areas of the customer s business. Therefore, depending on existing operational challenges, most customers select only one performance area: data load, query, or operational. The DCA solution provides customers with distinct advantages for query, data load, and operational performance. It is also important to note that database query performance is driven by three factors: System architecture and RDBMS Schema design Queries By following Greenplum Database best practices around partitioning, parallelism, table design, and query optimization, the DCA can provide the scan rate required for the processing needs of today's massive data warehouses. Key results Testing and validation demonstrated that the DCA handles real-world workloads extremely well, within a range of scenarios and configurations. Thanks to Greenplum's true MPP architecture, the behavior of the DCA changes in a predictable and consistent manner, ensuring that customers can depend on the DCA for daily information requirements. 9

Out-of-the-box performance The results shown in this paper were produced on a standard out-of-the-box DCA with no tuning applied, and are indicative of the overall performance that a customer can expect to achieve. The DCA also provides the ability to tune the environment to specific business needs to ensure an even greater level of performance. Data load rates The results of the data load rate testing for the DCA and High Capacity DCA are listed in Table 3. The table shows the upper rate that can be achieved. Note While DCA and High Capacity DCA results are similar when using the same test data, performance with the High Capacity DCA may vary based on I/O profile due to the performance characteristics of the SATA drives used in that configuration. Table 3. Data load rates TB/hr DCA option Data load rate Greenplum GP10/GP10C 3.4 TB/hr Greenplum GP100/GP100C Greenplum GP1000/GP1000C Greenplum GP1000/ GP1000C expanded to include one DCA Scale-Out Module 6.7 TB/hr 13.4 TB/hr 26.8 TB/hr Appliance performance Scan rate is the unit of measure, expressed in data bandwidth (for example, GB/s). It is used to describe how much data can be read and processed within a certain period of time; it indicates how fast the disk I/O subsystem of the appliance can read data from the disk to support the database. Scan rate results are listed in Table 4 and Table 5. Table 4. DCA option GP10 DCA scan rates (GB/s) Scan rate 5.9 GB/s GP100 GP1000 GP1000 expanded to include one DCA Scale-Out Module 11.8 GB/s 23.6 GB/s 47.2 GB/s 10

Table 5. High Capacity DCA - scan rates (GB/s) DCA option Scan rate GP10C 3.5 GB/s GP100C GP1000C GP1000C expanded to include one DCA Scale-Out Module 7 GB/s 14 GB/s 28 GB/s DCA scalability Expanding the data warehouse by upgrading from a GP10 to a GP1000, or by expanding a GP1000 through the use of a DCA Scale-Out Module, produces predictable performance gains with linear scaling. The GP100 and GP1000 scalability test results shown in this white paper demonstrate that the DCA is a readily expandable computing platform that can grow seamlessly with a customer s business requirements. 11

Introduction Purpose This white paper provides readers with an overall understanding of the DCA architecture and its performance levels. It also describes how the DCA provides a scalable end-to-end data warehouse solution packaged within a manageable, selfcontained data warehouse appliance that can be easily integrated into an existing data center. Scope The scope of this white paper is to document the: Architecture, configuration, and performance of the DCA Test scenarios, objectives, procedures, and key results Process for expanding from a GP100 to a GP1000 Process for expanding a GP1000 to include one Greenplum DCA Scale-Out Module Audience This white paper is intended for: Customers, including IT planners, storage architects, and database administrators involved in evaluating, acquiring, managing, operating, or designing a data warehouse solution Field personnel who are tasked with implementing a data warehouse solution EMC staff and partners, for guidance and for the development of proposals Terminology This paper includes the following terminology. Table 6. Term Analytics Terminology Definition The study of operational data using statistical analysis with a goal of identifying and using patterns to optimize business performance. Business intelligence (BI) Data load The effective use of information assets to improve the profitability, productivity, or efficiency of a business. Frequently, IT professionals use this term to refer to the business applications and tools that enable such information usage. The source of information is frequently the Enterprise Data Cloud. The term used to refer to the input of data into a data warehouse. The term data load is used as an action and can also be applied to the speed at which data can be fed into the data warehouse, it is often quoted in bandwidth, for example, GB/s. 12

Term Data Warehousing (DW) Extract, Transform, and Load (ETL) Massively Parallel Processing (MPP) MPP Scatter/Gather Streaming Polymorphic Data Storage Redundant Array of Inexpensive Disks (RAID) Scan rate Scale out Shared-nothing architecture Definition The process of organizing and managing the information assets of an enterprise. IT professionals often refer to the physically stored data content in some databases managed by database management software as the data warehouse. Applications that manipulate the data stored in such databases are referred to as data warehouse applications. The process by which a data warehouse is loaded with data from a primary business support system. A type of distributed computing architecture where upwards of tens to thousands of processors team up to work concurrently to solve large computational problems. A Greenplum technology that eliminates the bottlenecks associated with other approaches to data loading and unloading, enabling lightning-fast flow of data between the Greenplum Database and other systems for large-scale analytics and data warehousing. A Greenplum Database feature that enables database administrators to store data at a table or table partition level in a manner that best suits the type of analytic workload performed. For each table, or partition of a table, the DBA can select the storage, execution and compression settings that suit the way that table will be accessed. Both row-orientated and column-orientated (columnar) data storage is natively available. A method of organizing and storing data distributed over a set of physical disks, which logically appear to be a single storage disk device to any server host and operating system performing I/O to access and manipulate the stored data. Frequently, redundant data is distributed and stored inside this set of physical disks to protect against loss of data access should one of the drives in the set fail. Scan rate is the unit of measure, expressed in data bandwidth (for example, GB/s), used to describe how much data can be read and processed within a certain period of time; it indicates how fast the disk I/O subsystem of the appliance can read data from the disk to support the database. A technique that increases total processing power and capacity by adding additional independent computational servers, as opposed to augmenting a single, large computer with incremental disk, processor, or memory resources. A distributed computing architecture made up of a collection of independent, self-sufficient servers. This is in contrast to a traditional central computer that hosts all information and processing in a single location. 13

Term Table storage options Definition There are three table storage options available: Heap: Best suited for smaller tables, such as dimension tables, that are often updated after they are initially loaded. One orientation is available for heap tables: Row-oriented Append-only: Favors denormalized fact tables in a data warehouse environment, which are typically the largest tables in the system. Two orientations are available for append-only tables: Column-oriented (columnar) Row-oriented Compression options are available for both column-oriented and row oriented tables. External: Best suited when inserting a lot of data at the same time. Two orientation are types available for external tables: Readable Writeable 14

Features and benefits Performance Greenplum Database architecture Through the Greenplum Database architecture, the DCA provides automatic parallelization of data and queries. All data is automatically partitioned across all the compute servers of the system. Queries are planned and executed close to the data using all servers working together in a highly coordinated fashion. Shared-nothing architecture The DCA incorporates a shared-nothing architecture; this means that the computing power of the system is divided over multiple system servers (Segment Servers). Each Segment Server has its own dedicated compute, memory, and storage resources that are not shared with the other servers in the system. In this way, there is no I/O contention between servers. Every table has its data distributed across all the servers in the system, with each server storing a subset of the data. When there is a data request, each server, in parallel, computes the result based on its own data subset. High-performance data loading is provided by MPP Scatter/Gather Streaming technology, which enables all servers to process the incoming data in parallel. Excellent scan and data load rates Due to its underlying architecture, the DCA has the ability to quickly process very large volumes of data. Performance tests on a GP1000 demonstrate: Scan rate of 23.6 GB/s Data load rate of 13.4 TB/hr This demonstrates the high levels of performance that are possible for normal, daily operations. Interconnect Bus The Interconnect Bus is a high-speed private network that is used to provide database-level communication between all of the servers in the DCA. It is designed to accommodate access for rapid backup and recovery and data load rates. Scalability ETL: Extract, Transform, and Load Readiness to scale is built into the DCA. Scaling is performed by: Expanding a GP100 to a GP1000 This doubles the storage capacity, scan performance, and data load capacity provided by the GP100. Expanding a GP1000 using a Greenplum DCA Scale-Out Module This doubles the storage capacity, scan performance, and data load capacity provided by the GP1000. A key component of an effective data warehouse is the ability to accept and process new data in a rapid and flexible manner. Interoperability The DCA provides the ability to import data from a wide range of applications and datasets including: SAP, Oracle, MS SQL Server, IBM DB2, and Informix. 15

In addition, any third-party ETL or BI tool that can use Open Database Connectivity (ODBC) or Java Database Connectivity (JDBC) can be configured to connect to Greenplum Database. Performance Greenplum Database software provides free tools to enable the transformation and loading of data in the fastest possible manner by directly addressing all the Segment Servers in the DCA. In this way, bottlenecks are avoided. ETL servers can be connected directly to the DCA through the Interconnect Bus, or connected through a Link Aggregation Group (LAG) from another switch. Due to these high data load rates, large volumes of data can be loaded in shorter periods of time, for example, in the case of the GP1000, 13.4 TB/hr of data was loaded in one hour. Client access and third-party tools The DCA supports all the standard database interfaces: SQL, ODBC, JDBC, Object Linking and Embedding, Database (OLEDB), and so on, and is fully supported and certified by a wide range of BI applications for ETL. The DCA provides support for PL/Java and optimized C; it also provides Java-function support for Greenplum MapReduce. MapReduce Greenplum MapReduce has been proven as a technique for high-scale data analysis by Internet leaders such as Google and Yahoo. MapReduce enables programmers to run analytics against petabyte-scale datasets stored in and outside of Greenplum Database. Greenplum MapReduce brings the benefits of a growing standard programming model to the reliability and familiarity of the relational database. Polymorphic Data Storage The DCA provides customers with the flexibility to choose between column-based and row-based data storage within the same database system. For each table (or partition of a table), the database administrator can select the storage, execution, and compression settings that suit the way that table will be accessed. With Polymorphic Data Storage TM, the database transparently abstracts the details of any table or partition, allowing a wide variety of underlying models, for example: Read/Write Optimized Traditional slotted page row-oriented table (based on PostgreSQL s 2 native table type), optimized for fine-grained Create, Replace, Update, and Delete (CRUD). Row-Oriented/Read-Mostly Optimized Optimized for read-mostly scans and bulk append loads. Data Definition Language (DDL) allows optional compression ranging from fast/light to deep/archival. Column-Oriented/Read-Mostly Optimized Provides a true column-store just by specifying WITH (orientation=column) on a table. Data is vertically partitioned, and each column is stored in a series of large, densely packed blocks that can be efficiently compressed from fast/light to deep/archival (the data often compresses at higher ratios than row-oriented 2 PostgreSQL is a powerful, open source object-relational database system. 16

tables). Performance is excellent for those workloads suited to column-store. Greenplum s implementation scans only those columns required by the query, does not have the overhead of per-tuple IDs, and performs efficient early materialization using an optimized columnar-append operator. Figure 1 shows the table storage types that are available with the DCA. Figure 1. Choice of table storage types Recoverability Fault tolerance The DCA includes features such as hardware and data redundancy, segment mirroring, and resource failover. These features are described in the Storage design and configuration and Fault tolerance sections. Backup and recovery with EMC Data Domain A backup and recovery solution using EMC Data Domain is available. This solution requires no reconfiguration of the base DCA. For more details refer to the white paper: Backup and Recovery of the EMC Greenplum Data Computing Appliance using EMC Data Domain An Architectural Overview. Time to value Rapid deployment for faster return on investment All of the required hardware and software is preinstalled and preconfigured, facilitating a plug-and-play installation. The DCA can be installed and available within 24 hours (or less) of the customer receiving delivery and is ready to use for a faster ROI. Reduced total cost of ownership The DCA contains everything that a customer needs to get a data warehouse up and running. The DCA is a single-rack appliance, with minimal data center footprint and connectivity requirements, ensuring a reduced TCO. The DCA uses cutting-edge industry-standard hardware for the highest performance, rather than specialized or proprietary hardware. This means that the customer does not need to invest in specialized hardware training. 17

Architecture Introduction to architecture Logical architecture This section discusses the logical and physical architecture of the DCA, and describes the DCA product options that are available. MPP Greenplum Database uses MPP as the backbone to its database architecture. MPP refers to a distributed system that has two or more individual servers, which carry out an operation in parallel. Each server has its own processors, memory, operating system and storage. All servers communicate with each other over a common network. In this way, a single database system can effectively use the combined computational performance of all individual MPP servers to provide a powerful, scalable database system. Greenplum Database uses this high-performance system architecture to distribute the load of multi-petabyte data warehouses, and is able to use all of a system s resources in parallel to process a query. Database architecture Greenplum Database is able to handle the storage and processing of large amounts of data by distributing the load across multiple servers or hosts. A database in Greenplum is actually an array of distributed database instances, all working together to present a single database image. The key elements of the Greenplum Database architecture are: Master Servers Segment Servers Segment Instances gnet Software Interconnect Master Servers There are two Master Servers, one primary and one standby. The master database runs on the primary Master Server (replicated to the standby Master Server) and is the entry point into the Greenplum Database for end users and BI tools. Through the master database, clients connect and submit SQL, MapReduce, and other query statements. The primary Master Server is also where the global system catalog resides, that is, the set of system tables that contain metadata about the entire Greenplum Database itself. The primary Master Server does not contain any user data, data resides only on the Segment Servers, and also the primary Master Server is not involved in any query execution. The primary Master Server performs the following operations: Authenticates client connections Accepts the incoming SQL, MapReduce, and other query commands Distributes the work load between the Segment Instances Presents aggregated final results to the client program For more information on the primary and standby Master Servers, refer to the section Master Servers. 18

Segment Servers Segment Servers run database instances (Segment Instances). The majority of query processing occurs either within or between Segment Instances. Each Segment Server runs multiple Segment Instances. Every Segment Instance has a portion of data from each user-defined table and index. In this way, queries are serviced in parallel by every Segment Instance on every Segment Server. Users do not interact directly with the Segment Servers in a DCA. When a user connects to the database and issues a query, it is to the primary Master Server. Subsequently, the primary Master Server issues distributed query tasks and then processes are created on each of the Segment Instances to handle the work of that query. For more information on Segment Servers, refer to Segment Servers. Segment Instance A Segment Instance is a combination of database process, memory, and storage on a Segment Server. A Segment Instance contains a unique section of the entire database. One or more Segment Instances reside on each Segment Server. gnet Software Interconnect In shared-nothing MPP database systems, data often needs to be moved whenever there is a join or an aggregation process for which the data requires repartitioning across the segments. As a result, the interconnect serves as one of the most critical components within Greenplum Database. Greenplum s gnet Software Interconnect optimizes the flow of data to allow continuous pipelining of processing without blocking processes on any of the servers in the system. The gnet Software Interconnect is tuned and optimized to scale to tens of thousands of processors and uses industry-standard Gigabit Ethernet and 10 GigE switch technology. Pipelining Pipelining is the ability to begin a task before its predecessor task has completed. Within the execution of each node in the query plan, multiple relational operations are processed by pipelining. For example, while a table scan is taking place; selected rows can be pipelined into a join process. This ability is important for increasing basic query parallelism. Greenplum Database utilizes pipelining whenever possible to ensure the highest-possible performance. Physical architecture The DCA is a self-contained data warehouse solution that integrates all the database software, servers, and switches that are required to perform enterprise-scale data analytics workloads. The DCA is delivered racked and ready for immediate data loading and query execution. The DCA provides everything needed to run a complete Greenplum Database environment within a single rack. This includes: Greenplum Database software Master Servers to run the master database Segment Servers that run the Segment Instances A high-speed Interconnect Bus (consisting of two switches) to communicate requests from the master to the segments, between segments, and to provide 19

high-speed access to the Segment Servers for quick parallel loading of data across all Segment Servers An Administration Switch to provide administrative access to all of the DCA components Figure 2 provides a high-level overview of the DCA architecture. Each component is described in detail in this section. Figure 2. High-level overview of DCA architecture 20

DCA architecture The DCA runs the Greenplum Database RDBMS software. The physical architecture of the DCA supports and enables the logical architecture of Greenplum Database by utilizing the DCA components to perform its database operations and processing. As illustrated in Figure 3, the DCA consists of four operational layers: Compute, Storage, Database, and Network. Figure 3. DCA conceptual overview The function of each layer is described in Table 7. Table 7. Layer Compute Storage Database Network DCA layers Description The latest Intel processor architecture for excellent compute node performance. High-density, RAID-protected Serial Attached SCSI (SAS) disks. Greenplum Database incorporating MPP architecture. Dual 10 GigE Ethernet switches provide a high-speed, expandable IP interconnect solution across the Greenplum Database. 21

Master Servers Primary and standby There are two Master Servers, one primary and one standby. The primary Master Server mirrors logs to the standby so that it is available to take over in the event of a failure. The standby Master Server is kept up to date by a process that synchronizes the write-ahead-log (WAL) from the primary to the standby. For more information, refer to the Fault tolerance section. Network connectivity The Master Server has four ports that are used as follows: Two ports to the Interconnect Bus 10 GB/s FCoE (one per switch) One port to the Administration Switch 1 GB/s One port to the customer network 1 GB/s The user gains access to the DCA through the Master Server, using the connection from the customer network. Hardware and software specifications Table 8 and Table 9 provide details of the hardware and software specifications of the Master Server. Table 8. Master Server hardware specifications Hardware Quantity Specifications Processor 2 Intel X5680 3.33 GHz (6 core) Memory 48 GB DDR3 1333 MHz Dual-port Converged Network Adapter 1 2 x 10 Gb/s RAID controller 1 Dual channel 6 Gb/s SAS Hard disk 6 600 GB 10k rpm SAS Table 9. Master Server software specifications Software Version Red Hat Enterprise Linux 5 5.5 Greenplum Database 4.1.1.1 22

Segment Servers In a GP10 there are four Segment Servers, in a GP100 there are eight, and in a GP1000 there are 16. Segment Servers carry out various functions in the DCA. These functions are detailed in Table 10. Table 10. Function Data storage Segment Server functions Description User-defined tables and their indexes are distributed across the Segment Servers of the DCA. Hardware hosts for Segment Instances Query processing In Greenplum Database, the database comprises multiple database segments (Segment Instances). Multiple Segment Instances are located on each Segment Server. Carry out the majority of query processing and data analysis. Primary segment instances and mirror segment instances Each Segment Server runs several individual Segment Instances; these are small databases that each hold a slice of the overall data in the Greenplum Database. There are two types of Segment Instances: primary Segment Instances (primary segments) and mirror segment instances (mirror segments). The DCA is shipped, preconfigured, with six primary segments and six mirror segments per Segment Server. This is done to maintain a proper balance of primary and mirror data on the Segment Servers. A mirror segment always resides on a different host and subnet to its corresponding primary segment. This is to ensure that in case of a failover scenario, where a Segment Server is unreachable or down, the mirror counterpart of the primary instance is still available on another Segment Server. For more information on primary segments and mirror segments, refer to the Fault tolerance section. Hardware and software specifications Table 11 and Table 12 provide details of the hardware and software specifications of a Segment Server. Table 11. Segment Server hardware specifications Hardware Quantity Specifications Processor 2 Intel X5670 2.93 GHz (6 core) Memory 48 GB DDR3 1333 MHz Dual-port Converged Network Adapter 1 2 x 10 Gb/s RAID controller 1 Dual channel 6 Gb/s SAS Hard disk 12 600 GB 15k rpm SAS 23

Table 12. Segment Server software specifications Software Version Red Hat Enterprise Linux 5 5.5 Greenplum Database 4.1.1.1 Interconnect Bus The Interconnect Bus provides a high-speed network that is used to enable highspeed communication between the Master Servers and the Segment Servers, and between the Segment Servers themselves. The interconnect refers to the interprocess communication between the segments, as well as the network infrastructure on which this communication relies. The Interconnect Bus represents a private network and must not be connected to public or customer networks. The Interconnect Bus accommodates high-speed connectivity to ETL servers or environments and direct access to a Data Domain storage unit for efficient data protection. Note If you plan to implement the Data Domain Backup and Recovery solution, reserve a port on each switch of the Interconnect Bus for Data Domain connectivity. Technical specifications The Interconnect Bus consists of two Converged Enhanced Ethernet (CEE)/Fibre Channel over Ethernet (FCoE), layer 2, 32 port switches. Each switch includes: 24 x 10 GbE CEE ports 8 x 8 Gb Fibre Channel (FC) ports To maximize throughput, interconnect activity is load-balanced over two interconnect networks. To ensure redundancy, a primary segment and its corresponding mirror segment use different interconnect networks. With this configuration, the DCA can continue operations in the event of a single Interconnect Bus failure. User Datagram Protocol The Interconnect Bus uses the User Datagram Protocol (UDP) to send messages over the network. Greenplum Database does the additional packet verification and any checking not performed by UDP. In this way, the reliability is equivalent to Transmission Control Protocol (TCP), and the performance and scalability exceed TCP. Administration Switch Each rack in a DCA includes a 24-port, 1 Gb Ethernet layer-2 switch for use as an administration network by EMC Customer Support. This administration network is implemented to provide secure and reliable access to server and switch consoles, and to prevent administration activity becoming a bottleneck on the customer LAN or on the interconnect networks. 24

The management interfaces of all the servers and switches in a DCA are connected to the administration network. In addition, the primary Master Server and the stand-by Master Server are connected to the administration network over separate network interfaces. As a result, access to all of the management interfaces of the DCA is available from the command line of either Master Server. Product options DCA Table 13 lists the elements contained in the Greenplum GP10, GP100, and GP1000. Table 13. DCA elements Component GP10 GP100 GP1000 Master servers 2 2 2 Segment Servers 4 8 16 Total CPU cores 48 96 192 Total memory 192 GB 384 GB 768 GB Total SAS 15k 600 GB disks 48 96 192 Usable capacity (uncompressed) 5.9 TB 11.8 TB 23.6 TB Usable capacity (compressed) 23.6 TB 47.2 TB 94.4 TB High capacity DCA Table 14 lists the elements contained in the GP10C, GP100C, and GP1000C. Table 14. High capacity DCA elements Component GP10C GP100C GP1000C Master servers 2 2 2 Segment Servers 4 8 16 Total CPU cores 48 96 192 Total memory 192 GB 384 GB 768 GB Total SATA 7.2k 2 TB disks 48 96 192 Usable capacity (uncompressed) 31 TB 62 TB 124 TB Usable capacity (compressed) 124 TB 248 TB 496 TB 25

Common elements The DCAs contain the following common elements: 1 x Interconnect Bus (2 x high-speed switches) 1 x Administration Switch 1 x 40-U EMC cabinet Expanding the GP100 Customers may decide to expand the GP100 appliance if an increase in performance or an extension of the available storage capacity is required. Note This white paper tested expanding the GP100 to a GP1000, but you can also expand from a GP10. The GP100 is delivered to the customer ready to scale. Expanding from a GP100 to a GP1000 doubles the scan rate, data load rate, and storage capacity available. The GP100 is expanded by adding eight extra Segment Servers. These servers arrive at the customer site fully preconfigured, ready to be slotted into the GP100. The expansion process involves minimal downtime, as almost all of the expansion process can be carried out while the system is online. Note All aspects of the expansion process are handled by EMC field personnel. Expanding the GP1000 For even greater increases in performance and available storage capacity, the GP1000 can be expanded through the addition of a Greenplum DCA Scale-Out Module. The DCA Scale-Out Module has the same components and technical specifications as the GP1000 but with one exception the DCA Scale-Out Module does not include Master Servers. Expanding a GP1000 to include a DCA Scale-Out Module doubles the scan rate, data load rate, and storage capacity available. Table 15 describes the capabilities of a GP1000 after it has been expanded to include one DCA Scale-Out Module. Table 15. GP1000 with one DCA Scale-Out Module Usable capacity (without compression) Usable capacity (with compression) Data load rate Scan rate 72 TB 288 TB 26.8 TB/hr 47.2 GB/s The DCA Scale-Out Module arrives at the customer site fully preconfigured. A total of nine cables are required to connect the DCA Scale-Out Module to the GP1000. The cabling involves connecting: The Admin Switch on the GP1000 to the Admin Switch on the DCA Scale-Out Module The switches on the GP1000 Interconnect Bus, to the switches on the DCA Scale-Out Module Interconnect Bus 26

Twin-axial or FC cables can be used. If using FC cables, small form-factor pluggable (SFP) optical transceiver modules are also required. Two SFPs are required for each FC cable. The expansion process involves minimal downtime, as almost all of the expansion process can be carried out while the system is online. Note All aspects of the expansion process are handled by EMC field personnel. Design and configuration Introduction to DCA design and configuration This section discusses the design and configuration of the DCA. DCA design considerations A data warehouse enables organizations to perform educated strategic and reactive decisions that contribute to the overall success of an organization, both functionally and economically. To ensure that an organization can make the right decisions in the shortest period of time, its data warehouse must be reliable, secure, high performing, and extremely flexible. An organization s data must be loaded into the system so that it can be queried intelligently and quickly. Additionally, the data warehouse must allow for and maintain consolidated datasets, thereby enabling analysts to perform faster, easier, context-specific queries to support the businesses within the organization. To achieve the expected levels of success from such a data warehouse solution, a well-balanced, well-performing architecture must be fully thought out and tested. Data warehouse workload characteristics Data warehousing workloads generate very high demands on all hardware components of the entire solution. Specifically, data warehousing workloads are both compute and disk I/O intensive and require that components at all layers work at speed and in a balanced order. For example, a query scan in an uncompressed database attempts to read from the disk I/O subsystem as quickly as possible and, as a result, an under-performing disk configuration (poor disk drive selection or incorrect RAID configuration) directly affects the speed of this operation. In another example, with a compressed database, it is imperative that enough CPU processing bandwidth is available to provide all the advantages over an uncompressed database. The Segment Servers utilize the latest processors, along with DDR3 1333 memory, ensuring high-scale computational performance in a high-density form factor. The latest 600 GB SAS 15k rpm drives deliver very high disk I/O performance and database throughput. 27

Key data warehouse design considerations Table 16 describes the key design considerations for an effective, reliable, and scalable data warehouse solution. Table 16. Consideration Data layout Key design considerations Description The database must support both vertical (columnar) and horizontal (row) data layouts, maximizing performance on varying dataset types. Footprint High performance High availability Recoverability Workload management Scalability and flexibility Fast data load performance Small data center footprint. A shared-nothing architecture to remove the ceiling of older vertical scalability approaches. Component failure awareness and recovery using local failover. The ability to back up seamlessly and recover quickly. Intelligence to harness all available resources. The ability to grow with the business. The ability to sustain very high data load rates to minimize the time to load windows, without affecting the ability to perform analytics on refreshed data. Proper design of a data warehouse solution is critical to ensure high performance and the ability of the solution to scale over time; each of the design elements described in Table 16 has been taken into consideration as part of the design of the DCA. 28

Storage design and configuration Overview This section describes the storage design and configuration that are used for the Master Servers and the Segment Servers. Both types of servers use RAID 5 to provide disk-level protection and redundancy. Master Server RAID configuration Each Master Server contains six disks. These disks are laid out in a RAID 5 (4+1) configuration with one hot spare. This configuration provides the Master Servers with an additional level of fault tolerance. Table 17 details the Master Server RAID groups. Table 17. Master Server RAID groups RAID group Physical disks Virtual disks Function File system Capacity RAID group 1 5 Virtual disk 0 ROOT ext3 48 GB Virtual disk 1 SWAP SWAP 48 GB Virtual disk 2 DATA XFS* 2.09 TB Hot spare 1 None Hot spare - - * XFS is used for the database file systems. XFS has performance and scalability benefits over ext3 when dealing with very large file systems, files, and I/O sizes. Figure 4 illustrates the Master Server RAID groups. Figure 4. Master Server RAID groups 29

Segment Server RAID configuration To maximize I/O capacity and performance, each Segment Server contains 12 disks. The 12 disks are split into two RAID groups of six disks each, using a RAID 5 (5+1) configuration. The DCA uses the following RAID controller policies for the best I/O performance: Read policy of adaptive read ahead Write policy of write back Disk cache policy disabled In turn, each of the two RAID groups is partitioned into two virtual disks. The function and capacity of each virtual disk are described in Table 18 below. The Segment Instances are spread evenly across two logical file systems: /data1 and /data2. Table 18. RAID group Segment Server RAID groups Physical disks Virtual disks Function File system Capacity RAID group 1 6 Virtual disk 0 ROOT ext3 48 GB Virtual disk 1 DATA1 XFS* 2.68 TB RAID group 2 6 Virtual disk 2 SWAP SWAP 48 GB Virtual disk 3 DATA2 XFS* 2.68 TB *XFS is used for the database file systems. XFS has performance and scalability benefits over ext3 when dealing with very large file systems, files, and I/O sizes. The second virtual disk on RAID group 1 is designated as DATA1; the second virtual disk on RAID group 2 is designated as DATA2. Figure 5 illustrates the Segment Server RAID groups. Figure 5. Segment Server RAID groups 30

Data redundancy mirror segments Greenplum Database provides data redundancy by deploying mirror segments. If a primary segment fails, its corresponding mirror segment will take over its role; the database stays online throughout. A DCA can remain operational if a Segment Server, network interface, or Interconnect Bus goes down. For more information on mirror segments, refer to the Fault tolerance section. 31

Greenplum Database design and configuration Database storage methods The Greenplum Database engine provides a flexible storage model. Storage types can be mixed either within a database or within a table; this enables customers to choose a processing model for any table or partition. The table storage types and compression options available are shown in Table 19. Table 19. Table storage types and compression options Item Description Table storage types Three types: Heap (row-oriented) Append-only: Column-oriented (columnar) Row-oriented External: Readable Writeable Block compression for append-only tables Gzip (levels 1-9) QuickLZ Writeable external tables A writeable external table allows customers to select rows from database tables and output the rows to files, named pipes, or other executable programs. For example, data can be unloaded from Greenplum Database and sent to an executable that connects to another database or ETL tool to load the data elsewhere. Writeable external tables can also be used as output targets for Greenplum parallel MapReduce calculations. Table storage types Traditionally, relational data has been stored in rows, that is, as a sequence of tuples in which all the columns of each tuple are stored together on disk. This has a long heritage back to early OLTP systems that introduced the slotted page layout that is still in common use. However, analytical databases tend to have different access patterns than OLTP systems. Instead of seeing many single-row reads and writes, analytical databases must process bigger, more complex queries that touch much larger volumes of data, that is, read-mostly with big scanning reads and frequent data loads. Greenplum Database provides built-in flexibility that enables customers to choose the right strategy for their environment. This is known as Polymorphic Data Storage. For more details, refer to the Polymorphic Data Storage section. 32

Design The DCA is delivered to the customer site with the Greenplum Database software preloaded on each server. Decisions about the layout and configuration of the database are made by each individual customer. Configuration The DCA is delivered to the customer site preconfigured, in accordance with EMC best practices. The performance testing was carried out without applying performance tuning, to get as close to true out-of-the-box system performance figures as possible, and to provide customers with the confidence that they can achieve these performance figures in their own environments. This underscores the value of the DCA to business decision makers; the performance figures are realistic and achievable without the need for a team of highly specialized and trained professionals, resulting in better ROI. 33

Fault tolerance Master Server redundancy The DCA includes a standby Master Server to serve as a backup in case the primary Master Server becomes inoperative. The standby Master Server is a warm standby. If the primary Master Server fails, the standby is available to take over as the primary. The standby Master Server is kept up to date by a transaction log replication process, which runs on the standby and keeps the data between the primary and standby masters synchronized. If the primary Master Server fails, the log replication process is shut down, and the standby can be activated in its place. Upon activation of the standby, the replicated logs are used to reconstruct the state of the primary Master Server at the time of the last successfully committed transaction. The activated standby Master Server effectively becomes the Greenplum Database primary Master Server, accepting client connections on the master port. The primary Master Server does not contain any user data; it contains only the system catalog tables that need to be synchronized between the primary and standby copies. These tables are not updated frequently, but when they are, changes are automatically copied over to the standby Master Server so that it is always kept current with the primary. Segment mirroring Each primary Segment Instance in the DCA has a corresponding mirror segment instance. If a primary segment fails, its corresponding mirror segment will take over its role; the database stays online throughout. The mirror segment always resides on a different host and subnet than its corresponding primary segment. During database operations, only the primary segment is active in processing requests. Changes to a primary segment are copied over to its mirror segment on another Segment Server using a file block replication process. Until a failure occurs on the primary segment, there is no live segment instance running on the mirror host for that particular segment of the database only the replication process. The system automatically fails over to the mirror segment whenever a primary segment becomes unavailable. A DCA can remain operational if a Segment Instance or Segment Server goes down, as long as all portions of data are available on the remaining active segments. Whenever the master cannot connect to a primary segment, it marks that primary segment as down in the Greenplum Database system catalog and brings up the corresponding mirror segment in its place. A failed segment can be recovered while the system is up and running. The recovery process only copies over the changes that were missed while the segment was out of operation. In the event of a segment failure, the file replication process is stopped and the mirror segment is automatically brought up as the active segment instance. All database operations then continue using the mirror. While the mirror is active, it is also logging all transactional changes made to the database. When the failed segment is ready to be brought back online, administrators initiate a recovery process to bring it back into operation. 34

Monitoring and managing the DCA Greenplum Performance Monitor Greenplum Performance Monitor enables administrators to collect query and system performance metrics from an operating DCA. Monitored data is also stored within Greenplum Database as a form of historical reporting. Greenplum Performance Monitor has data collection agents that run on the Master Server and each Segment Server. The agents collect performance data on query execution and system utilization and send it to the Greenplum Performance Monitor database at regular intervals. The database is located on the Master Server, where it can be accessed using the Greenplum Performance Monitor Console (a web application), or by using SQL queries. Users can query the Greenplum Performance Monitor database to see query and system performance data for both active and historical queries. The Greenplum Performance Monitor Console provides a graphical web-based user interface application where administrators can: Track the performance of active queries View historical query and system metrics The dashboard view enables administrators to monitor the system utilization during query runs and view the performance of the DCA, including system metrics and query details. Figure 6 illustrates the dashboard view and how the DCA looks while it is being monitored. Figure 6. Dashboard view 35

Figure 7 illustrates a drill-down view of a query s detail and plan; this view helps the administrator understand the DCA s performance and where it is currently executing within the query plan. Figure 7. Drill-down view of a query Managing the DCA Management of a DCA is performed using a series of built-in tools. Management tools are provided for the following Greenplum Database administration tasks: Starting and stopping Greenplum Database Adding or removing a Segment Server Expanding the array and redistributing tables among new segments Managing recovery for failed segment instances Managing failover and recovery for a failed master instance Backing up and restoring a database (in parallel) Loading data in parallel System state reporting For more information, refer to the Greenplum Database 4.0 Administrator Guide. Figure 8, Figure 9, and Figure 10 illustrate the Object browser, Graphical Query Builder, and the Server Status windows from within the pgadmin management tool. pgadmin is freely available within the PostgreSQL open-source community. 36

Figure 8. Object browser Figure 9. Graphical Query Builder 37

Figure 10. Server Status Resource management Administrative control is provided over system resources and their allocation to queries. Users can be assigned to resource queues that manage the inflow of work to the database. This also allows priority adjustment of running queries, for example: Resource queues Queue priority I/O regulation User prioritization The purpose of workload management is to manage system resources, such as memory, CPU, and disk I/O, and maintain a manageable workload when all system resources are in use. This is accomplished in Greenplum Database with role-based resource queues. A resource queue has attributes that limit the size and total number of queries that can be executed by the users (or roles) in that queue. Administrators can assign a priority level that controls the relative share of available CPU used by queries associated with the resource queue. By assigning all database roles to the appropriate resource queue, administrators can control concurrent user queries and prevent the system from being overloaded. Resource management controls the job queue dynamically, while the database is online. If multiple jobs were allowed to all run together, this could take a relatively large amount of time as there would be resource contention. The resource manager may decide to dynamically alter (lower) the priority, to reduce the number of queries that run simultaneously, thereby limiting how many run at the same time. By doing this, there is less contention, and the end result is that all queries still finish sooner than if all had been running together at once. 38

Test and validation Introduction to test and validation Performance is a factor that every organization has to address when using business applications in the real world. The amount of data captured and stored is growing exponentially. Demands and expectations of business intelligence on datasets are increasing in terms of both the complexity of queries and the speed at which results can be achieved. Data warehouse solutions need to be larger, faster, and more flexible to meet business needs. A high-performance data warehouse solution strongly relies on the database technology, and also on the power of the hardware platform. Two key performance indicators that influence the success of a data warehouse solution are: Scan rate How quickly the database can read and process data under varying conditions and workloads Data load rate How quickly data can be loaded into the database Scalability is also extremely important for a data warehouse system. The system needs to be able to scale well and predictably handle the ever-growing data load and workload requirements. This section provides information on both the scan and the data load rates achieved during performance testing. It also provides the scalability testing results from expanding a Greenplum GP100 to a GP1000, and from expanding a GP1000 through the addition of a Greenplum DCA Scale-Out Module. All tests were performed without performance tuning; therefore, any customer can expect to achieve these results out-of-the-box. 39

Data load rates Overview For the DCA, tests were performed on a GP100 and a GP1000 to demonstrate the data load rate capability. Test objectives The data load rate test objectives are detailed in Table 20. Table 20. Objective Data load rate Data load test objectives Description Determine the rate at which data can be loaded by the: Greenplum GP100 Greenplum GP1000 Greenplum GP10C Greenplum GP100C Greenplum GP1000C Linear scalability of data load rate Demonstrate that the data load rate improves in a linear manner when a GP100 is expanded to a GP1000. Test scenario The test scenario was designed to load several large, flat ASCII files concurrently into the database to simulate a typical ETL operation. The test utilized Greenplum's MPP Scatter/Gather Streaming technology. The source dataset used for data load was made up of multiple separate ASCII data files, spread across the ETL server environment. Sufficient bandwidth was provided between the DCA and ETL environment to ensure that this was not a bottleneck to performance. The test scenario was run multiple times on both the GP100 and GP1000. Test procedure To measure the data load rate the following procedure was used: 1. An external table definition was created for the ASCII dataset files that were located on the ETL environment. The ETL environment was connected to the Interconnect Bus using two 10 GbE links. 2. Initiated the following SQL command through the Master Server, which was then executed on the Segment Servers: insert into <target-table> select * from the <external table> 3. Measured the amount of time required to load the data. 4. Calculated the data load rate (TB/hr) by dividing the total amount of raw data loaded by the data load duration. 40

Test results Table 21 summarizes the data load rates recorded during testing. The test results clearly demonstrate that the DCA data load rates scale in a linear manner. For example, expanding from a Greenplum GP100 to a Greenplum GP1000 leads to an effective doubling in the rate at which data can be loaded. Table 21. DCA option Greenplum GP10 Data load rates Data load rate 3.4 TB/hr Greenplum GP100 Greenplum GP1000 Greenplum GP1000 with DCA Scale-Out Module 6.7 TB/hr 13.4 TB/hr 26.8 TB/hr Figure 11 illustrates the DCA data load rates (TB/hr). 30 DCA scalability: Data load rates (TB/hr) 26.8 25 20 15 13.4 10 5 0 3.4 6.7 GP10 GP100 GP1000 GP1000 with DCA Scale Out Module Figure 11. DCA data load rates (TB/hr) 41

Table 22 summarizes the data load rates for the High Capacity DCA recorded during testing. Table 22. DCA option Greenplum GP10C Data load rates - High Capacity DCA Data load rate 3.4 TB/hr Greenplum GP100C Greenplum GP1000C 6.7 TB/hr 13.4 TB/hr Figure 12 illustrates the High Capacity DCA data load rates (TB/hr). Figure 12. High Capacity DCA data load rates (TB/hr) DCA performance The performance of data warehouse systems is typically compared in terms of the scan rate, which measures how much throughput the database system can deliver. Scan rate is an indication of how well the system is able to cope with processing vast volumes of data and the daily end-user workload. Tests were performed on DCAs and High Capacity DCAs to demonstrate scan rate performance. 42

Test objectives The scan rate test objectives are listed in Table 23. Table 23. Objective Scan rate Scan rate test objectives Description Determine the scan rate for both Greenplum DCA and High Capacity DCA configurations. Scan rate is a measure of how quickly the disks can move data (bytes). Linear scalability of scan rate Demonstrate that scan rates improve in a linear manner when a Greenplum GP100 is expanded to a Greenplum GP1000. Test scenarios The scan rate was measured on the DCA and the High Capacity DCA. Test methodology A standard UNIX utility was used to measure the scan rates. To test the sequential throughput (bandwidth) performance of a file system (set of physical disks), the dd command was used, which is a standard UNIX utility used to read and write data to a file system in a sequential manner. Multiple dd processes were run in parallel, first to write a set amount of data to each file system and then to read back that data. Typically, the total data written and read is at least twice the size of the total physical memory. This ensures that the accuracy of the test results is not distorted due to memory caching. 43

Test results The test results clearly demonstrate that: The DCA supports very high scan rates. The DCA scan-rate performance scales in a linear manner. Expanding from a GP100 to a GP1000 leads to a doubling in performance. Table 24 details the scan rates in GB/s. Table 24. Scan rates (GB/s) DCA option Greenplum GP10 Greenplum GP100 Greenplum GP1000 Greenplum GP1000 with DCA Scale-Out Module Scan rate 5.9 GB/s 11.8 GB/s 23.6 GB/s 47.2 GB/s Figure 13 illustrates the DCA scan rates (GB/s). Figure 13. DCA scan rates (GB/s) 44

Table 25 details the High Capacity DCA scan rates in GB/s. Table 25. High Capacity DCA scan rates (GB/s) DCA option Scan rate Greenplum GP10C 3.5 Greenplum GP100C Greenplum GP1000C 7 GB/s 14 GB/s Figure 14 illustrates the High Capacity DCA scan rates (GB/s). Figure 14. High Capacity DCA scan rates (GB/s) Scalability: Expanding GP100 to GP1000 Overview Scalability is one of the most important aspects of a data computing system. If a data warehouse can scale well, it will be able to handle the growing data load and workload that are associated with DW/BI environments. Scalability is ensured through the shared-nothing architecture and purpose-built design of the DCA. To quantify scalability, tests were performed on a Greenplum GP100 and a Greenplum GP1000. These tests were performed to demonstrate how easily the DCA provides linear capacity and performance growth. A dataset size of 1 TB was used as a baseline figure to measure the redistribution phase of the expansion process. 45

Test objectives The scalability test objectives are detailed in Table 26. Table 26. Scalability test objectives Objective Test the performance of a GP100 Description Test the performance of a GP100 before the expansion process. Scale from a GP100 to a GP1000 Test the performance of the GP1000 (after expansion process) Perform the expansion procedure to expand a GP100 to a GP1000. Test the performance of the GP1000 after the expansion process has been completed. Test scenarios The test scenarios are detailed in Table 27. Table 27. Test scenarios Test scenario Description 1 Measure the performance of a GP100. 2 Perform the expansion procedure to expand a GP100 to a GP1000 (8 to 16 Segment Servers). Redistribute 1 TB of data across the 16 Segment Servers as part of the expansion process. 3 Measure the performance of the GP1000 after the expansion process. Expected results: Performance should approximately double Data should be redistributed across all 16 Segment Servers Test procedure The procedure used to expand a Greenplum GP100 to a Greenplum GP1000 was taken from the Greenplum Database 4.0 Administrator Guide, specifically the Expanding a Greenplum System chapter. The procedure was followed exactly as documented in the guide. Note The downtime experienced during the expansion process was approximately one minute. 46

Table 28 provides a high-level overview of the three main phases of the procedure; please refer to the Greenplum Database 4.0 Administrator Guide for more in-depth procedural information. Table 28. Three main phases of the expansion procedure Phase Description Duration Initiation/Setup Expansion Redistribution A series of interview questions are asked of the database administrator about the expansion, for example: What type of mirroring strategy would you like? The initialization of the new segments into the existing Greenplum GP100 (to expand it to a GP1000). Note: For approximately one minute of this time frame the database is offline. To complete the expansion process, the redistribution of the data occurs across the new Segment Servers Less than 5 minutes 2 to 3 minutes Varies in relation to amount of data Performance results Table 29 shows the performance of the GP100 before expanding to GP1000. Table 29. GP100 performance results before expansion DCA option Data load rate Scan rate GP100 6.7 TB/hr 11.8 GB/s Table 30 shows the performance of the GP1000 after the expansion process. Table 30. GP1000 performance results after expansion DCA option Data load rate Scan rate GP1000 13.4 TB/hr 23.6 GB/s Table 31 shows that the data was successfully redistributed across all 16 Segment Servers. Table 31. Data redistribution test results Expansion Amount of data redistributed Duration Speed GP100 to GP1000 1 TB 8:51 min 6.7 TB/hr 47

The rate of data redistribution is a measure of the number of servers being added, as well as the total data volume being redistributed. Note A redistribution process runs in the background while the database is fully online. There are options to control when this process runs and in which order the table data is redistributed, however, these options were not chosen during this expansion procedure, and this demonstrates the performance capabilities of the default out-of-the-box settings of the DCA. Scalability: Expanding GP1000 using a Greenplum DCA Scale-Out Module Overview Scalability is one of the most important aspects of a data computing system. If a data warehouse can scale well, it will be able to handle the growing data load and workload that are associated with DW/BI environments. Scalability is ensured through the Shared-Nothing Architecture and built-for-purpose design of the DCA. To quantify scalability, tests were run to expand a GP1000 from 16 Segment Servers to 32 Segment Servers by including one Greenplum DCA Scale-Out Module. These tests were performed to demonstrate how easily the DCA provides linear capacity and performance growth. A dataset of 23 TB was used as a baseline figure to measure the redistribution phase of the expansion process. Test objectives The scalability test objectives are detailed in Table 32. Table 32. Objective Performance test Scalability test objectives Description Test the performance of the GP1000 Expand the GP1000 to include a Greenplum DCA Scale-Out Module Test the performance of the expanded GP1000 Connect a Greenplum DCA Scale-Out Module to the GP1000. Perform the expansion procedure to expand the GP1000 from 16 Segment Servers to 32 Segment Servers. Test the performance of the expanded GP1000 after the expansion process has been completed. 48

Test scenarios The following scenarios were tested: Table 33. Test scenarios Test scenario Description 1 Measure the performance of a GP1000. 2 Connect a Greenplum DCA Scale-Out Module to the GP1000 to expand the GP1000 appliance from 16 Segment Servers to 32 Segment Servers. Redistribute 23 TB of data across the 32 Segment Servers as part of the expansion process. 3 Measure the performance of the GP1000 after the expansion process. Test procedure The procedure used to expand a GP1000 from 16 Segment Servers to 32 Segment Servers was taken directly from the Greenplum Database 4.0 Administrator Guide, specifically the Expanding a Greenplum System chapter. The procedure was followed exactly as documented in the guide; it was not modified and the expansion process was successful upon first implementation. Note The downtime experienced during the expansion process was approximately one minute. Table 34 provides a high-level overview of the three main phases of the procedure; refer to the Greenplum Database 4.0 Administrator Guide for more in-depth procedural information. Table 34. Three main phases of the expansion procedure Phase Description Duration Initiation/Setup Expansion Redistribution A series of interview questions are asked of the database administrator about the expansion, for example: What type of mirroring strategy would you like? The initialization of the new segments into the existing GP1000 (to expand the system from 16 to 32 Segment Servers) Note: For approximately one minute of this timeframe the database is offline. To complete the expansion process, the redistribution of the data occurs across the new Segment Servers Less than 5 minutes 2 to 3 minutes Varies in relation to amount of data 49

Test results Table 35 shows the performance of the GP1000 before expanding it to include a Greenplum DCA Scale-Out Module. Table 35. DCA option GP1000 performance results before expansion Segment Servers Data load rate Scan rate GP1000 16 13.4 TB/hr 23.6 GB/s Table 36 shows the performance of the GP1000 after expanding the appliance to include a Greenplum DCA Scale-Out Module. Table 36. DCA option GP1000 with Greenplum DCA Scale-Out Module Segment Servers Data load rate Scan rate GP1000 32 26.8 TB/hr 47.2 GB/s Redistribution results Table 37 shows that the data was successfully redistributed across all 32 Segment Servers. Table 37. Expansion Data redistribution results GP1000 with one Greenplum DCA Scale-Out Module Amount of data redistributed Duration Speed 23 TB 2 hrs 39 mins 8.4 TB/hr Note The rate of data redistribution is a measure of the number of servers being added, as well as the total data volume being redistributed. A redistribution process runs in the background while the database is fully online. There are options to control when this process runs and in which order the table data is redistributed; however, these options were not chosen during this expansion procedure, and this demonstrates the performance capabilities of the default out-ofthe-box settings of the DCA. 50

Conclusion Summary The latest solution testing methodologies were used by EMC in designing, building, and testing the EMC Greenplum Data Computing Appliance: Performance and Capacity for Data Warehousing and Business Intelligence solution. The results demonstrate that the DCA is an enterprise-class data warehousing solution that is built for performance and scalability. With exponential digital data growth, EMC customers need peace of mind that their data warehouse solution has predictable performance, and is scalable and easy to manage all of this is supplied by the DCA. Performance Linear scalability has been demonstrated by testing a GO10, GP100, GP1000, and a GP1000 in conjunction with an EMC Greenplum DCA Scale-Out Module. With an understanding of the MPP architecture used by the DCA, EMC customers can expect predictable performance when considering scale out. Scalability As shown in this white paper, a GP100 can be easily expanded to a GP1000, and in turn, a GP1000 can easily be expanded to include a Greenplum DCA Scale-Out Module. With each expansion, EMC customers can expect an approximate doubling of scale in terms of both the scan rate performance as well as the rate at which data can be loaded. Findings The key findings from the validation testing completed by EMC are highlighted in Table 38, Figure 15, and Figure 16. These test results clearly demonstrate the linear scalability of the DCA in terms of scan rate and data load rate performance. Table 38. Key findings DCA option Data load rate Scan rate GP10 3.4 TB/hr 5.9 GB/s GP100 6.7 TB/hr 11.8 GB/s GP1000 13.4 TB/hr 23.6 GB/s GP1000 with one Greenplum DCA Scale-Out Module 26.8 TB/hr 47.2 GB/s 51

30 DCA scalability: Data load rates (TB/hr) 26.8 25 20 15 13.4 10 5 0 3.4 6.7 GP10 GP100 GP1000 GP1000 with DCA Scale Out Module Figure 15. DCA scalability: Data load rates (TB/hr) Figure 16. DCA scalability: Scan rates (GB/s) Next steps To learn more about this and other solutions contact an EMC representative or visit: www.emc.com. 52