CIT 668: System Architecture
|
|
- Kathleen Stokes
- 7 years ago
- Views:
Transcription
1 O t p s 1 t p s 4/12/2011 CIT 668: System Architecture Distributed Databases Topics 1. Scaling databases 2. Concurrency 3. Database replication 4. Replication architectures 5. Database partitioning Database Scaling Techniques B a s e c a s e a 1 T P S s y s te m S c a le u p to a 2 T P S c e n tra liz e d s y s te m U s e rs 1 T P S s e rv e r U s e r s 2 T P S s e rv e r P a r t it io n in g T w o 1 T P S s y s te m s R e p lic a t io n T w o 2 T P S s y s te m s U s e rs 1 T P S s e rv e r O t p s U s e r s 2 T P S s e rv e r 1 t p s U s e rs 1 T P S s e rv e r U s e r s 2 T P S s e rv e r 1
2 Distributed System Types Shared Memory Shared Disk Shared Nothing All CPUs share memory/disk Scalability limited by memory contention (vertical scaling only) CPUs share storage, not RAM Scalability limited by disk contention (vertical scaling only) Each CPU has its own RAM and disks Very high (horizontal) scalability since no contention for shared resources Concurrency The classic example Code to withdraw funds from bank account withdraw(account, amount) { balance = get_balance(account); balance -= amount; put_balance(account, balance); return amount; } What happens if you setup automatic bill pay and two withdrawals are made simultaneously? 2
3 Create a separate thread for each withdrawal, each running the same code. withdraw(account, amount) { balance = get_balance(account); balance -= amount; put_balance(account, balance); return amount; } withdraw(account, amount) { balance = get_balance(account); balance -= amount; put_balance(account, balance); return amount; } Interleaved schedules Execution of the two threads can be interleaved, with preemptive scheduling: Execution sequence as seen by CPU balance = get_balance(account); balance -= amount; balance = get_balance(account); balance -= amount; put_balance(account, balance); put_balance(account, balance); context switch context switch What s the account balance after this sequence? Race Conditions A race condition is a bug in which the result of a process depends on the sequence or timing of other events. 3
4 Mutual Exclusion To synchronize access to shared objects, we can use mutual exclusion. Code that uses mutual exclusion to synchronize its execution is called a critical section, which is a section of code such that: 1. Only one thread at a time can execute in the critical section. 2. All other threads must wait to enter the section. 3. When a thread leaves the critical section, another thread can enter. Critical section requirements Mutual exclusion At most one thread is in the critical section. Progress If a thread is outside the critical section, it cannot prevent another thread from entering the critical section. Bounded waiting If a thread is waiting on the critical section, it will eventually enter the critical section. Performance The cost of entering and leaving the critical section is small with respect to the work done within it. Locking A lock is an object that provides two operations: acquire(): thread calls this before entering critical section release(): thread calls this after leaving critical section A thread holds the lock btw acquire() and release(). 4
5 Deadlocks Deadlocks A deadlock is a situation where two or more actions are waiting for the other to finish, and thus neither ever completes. Database replication 5
6 Purposes of Replication Data distribution Maintains a copy of DB at another geographic site to lower latency at site or for DR. Load balancing Allows application to access data on multiple servers. Backup and recovery Backups of replicated DB can be performed without impacting performance of original production DB. High availability Application can failover to replicated DB. ACID Properties Atomicity All data modifications within a transaction must happen completely or not at all. No partial transactions can be recorded. Consistency All changes to an instance of data must be reflected in all instances of that data. Isolation The Elements of a transaction should be isolated to the user performing the transaction until it is completed. Durability When a system failure occurs, the data in the DB must be accurate up to the last committed transaction before failure. Replication techniques Eager (synchronous) All replicas updated as part of original transaction. Data is always consistent, but ensuring data consistency can lead to long waits or deadlocks. Lazy (asynchronous) Original transaction completes on node, then updates propagated to other nodes as separate transactions. Can result in conflicts when transactions modify same object on different nodes before replicas are updated. Must have reconciliation protocol to resolve conflicts. 6
7 Eager and Lazy Transactions A s in g le -n o d e T ra n s a c tio n W rite A W rite B W rite C C o m m it A th re e -n o d e Eager Transaction W rite A W rite A W rite A W rite B W rite B W rite B W rite C W rite C W rite C C o m m it C o m m it C o m m it A th re e -n o d e Lazy Transaction (actually 3 Transactions ) W rite A W rite B W rite C C o m m it W rite A W rite B W rite C C o m m it W rite A W rite B W rite C C o m m it Replication architectures Master/Slave Replication Slave DBs only accept read operations for application. Flickr.com DBs logged 13 SELECTS for each write. Master DB Accepts write operations. Copies write operations to slave DBs. Single point of failure! 7
8 Load-Balanced Master-Slave Architecture Pyramid Master/Slave Architecture Flickr Database Architecture 2006 Databases use MySQL s InnoDB tables for speed. Data replicated to search slaves, which change table type to MyISAM to get full text search. 8
9 Master/Slave Replication Scales reads, not writes. Good for read-centric applications. Master is a single point of failure. Difficult to reparent slaves on master failure. Multimaster Replication 1. All data is located at multiple nodes. 2. All nodes can process any transaction. ACID problems: Atomicity: transactions must commit successfully on all nodes or must fail on all nodes. Consistency: requires a global ordering of commits across the cluster. Durability: must wait for data to be written to disk on all nodes. Two-phase commit 1. Request phase: transaction coordinator asks nodes to try to commit. Nodes execute transaction up to point where they will be asked to commit. Each node returns commit/abort. 2. Commit phase: if any node returns abort, coordinator tells all nodes to rollback; if all nodes return commit, then coordinator tells all to commit and nodes send acknowledgement to coordinator when done. 9
10 Two-phase Commit Problems Coordinator failures If coordinator goes down, nodes can block indefinitely, waiting for commit request. Node failures If a node fails, coordinator can wait forever to get unanimous commit decision. If coordinator can mark a node as down and ignore its vote, then nodes must be resynchronized when are once again available. Combined failures If both a node and the coordinator go down after coordinator starts sending commit messages, then it is possible the down node committed, but no other node received the message. Dual-Master Replication for HA Dual Master Replication High reliability Two identical copies of DB. Easy maintenance Set only one DB to be active. Update inactive server. Synchronize. Flip to other DB as active one, then update it. 10
11 MySpace Case Study 3000 web servers 800 cache servers 440 database servers hosting >1000 databases Each DB server has 4 2-core CPUs + 64GB RAM Database Partitioning Partitioning A partition is a division of a logical database into distinct independent parts. Horizontal partitioning divides the database by rows, with groups of rows stored on diff nodes. Horizontal scaling is highly scalable. A horizontal partition is called a shard. Vertical partitioning divides the database by columns, with sets of columns stored on different nodes. Vertical scaling is limited by the number of columns that are accessed independently. 11
12 Partitioning Criteria Range partitioning selects a partition by determining if the partition key is within a certain range. List partitioning assigns each partition a list of values. Hash partitioning uses a hash function to determine partition membership. Wikipedia Shard Architecture LiveJournal Sharding Architecture
13 Sharding Advantages Faster Queries Since each shard has a fraction of the whole DB, queries are faster than they would be on whole. Higher Write Bandwidth Can have master/slave configuration for each shard, so each shard has its own dedicated master to do writes. High Scalability Can continue to divide DB into more shards to scale out indefinitely. Sharding Disadvantages Rebalancing To scale, you need to split shards, which can require substantial manual effort and downtime. Google and Flickr s shards auto-rebalance, which requires a mechanism to invalidate references, so underlying data can be moved while in use. Cross-shard joins are slow If a request requires data from multiple shards, it s slower than accessing a single DB. Social networks need to find relationships among as many dimensions and users as possible. Poor support Less mature tools and documentation than replication. Key Points Database scaling techniques 1. Use caching to avoid need to scale DB 2. Scale up with faster hardware 3. Replicate DB to multiple servers 4. Split DB across multiple servers (partitions) Concurrency Critical section, lock, deadlock Replication Master/slave scales reads but not writes; has SPOF Multi-master either loses ACID or doesn t scale well Partitioning Partition tables by rows and put shards on diff nodes. 13
14 References 1. John Allspaw, The Art of Capacity Planning, O Reilly, Brad Fitzpatrick, LiveJournal: Behind the Scenes, USENIX, Jim Gray et. al. The Dangers of Replication and a Solution. In Proceedings of the 1996 ACM SIGMOD international conference on Management of data (SIGMOD '96). 4. James Hamilton, Scaling at MySpace, Cal Henderson, Building Scalable Web Sites, O Reilly, Cal Henderson, Flickr and PHP presentation, Theo Schlossnagle, Scalable Internet Architectures, Sams Publishing, Wikipedia, Server Layout Diagrams, 9. Jeremy D. Zawodny and Derek J. Balling, High Performance MySQL, O Reilly,
High Availability Solutions for the MariaDB and MySQL Database
High Availability Solutions for the MariaDB and MySQL Database 1 Introduction This paper introduces recommendations and some of the solutions used to create an availability or high availability environment
More informationTushar Joshi Turtle Networks Ltd
MySQL Database for High Availability Web Applications Tushar Joshi Turtle Networks Ltd www.turtle.net Overview What is High Availability? Web/Network Architecture Applications MySQL Replication MySQL Clustering
More informationDatabase Replication with MySQL and PostgreSQL
Database Replication with MySQL and PostgreSQL Fabian Mauchle Software and Systems University of Applied Sciences Rapperswil, Switzerland www.hsr.ch/mse Abstract Databases are used very often in business
More informationDatabase Scalability {Patterns} / Robert Treat
Database Scalability {Patterns} / Robert Treat robert treat omniti postgres oracle - mysql mssql - sqlite - nosql What are Database Scalability Patterns? Part Design Patterns Part Application Life-Cycle
More informationHigh Availability Solutions for MySQL. Lenz Grimmer <lenz@grimmer.com> 2008-08-29 DrupalCon 2008, Szeged, Hungary
High Availability Solutions for MySQL Lenz Grimmer 2008-08-29 DrupalCon 2008, Szeged, Hungary Agenda High Availability in General MySQL Replication MySQL Cluster DRBD Links/Tools Why
More informationScalability of web applications. CSCI 470: Web Science Keith Vertanen
Scalability of web applications CSCI 470: Web Science Keith Vertanen Scalability questions Overview What's important in order to build scalable web sites? High availability vs. load balancing Approaches
More informationAvailability Digest. MySQL Clusters Go Active/Active. December 2006
the Availability Digest MySQL Clusters Go Active/Active December 2006 Introduction MySQL (www.mysql.com) is without a doubt the most popular open source database in use today. Developed by MySQL AB of
More informationCluster Computing. ! Fault tolerance. ! Stateless. ! Throughput. ! Stateful. ! Response time. Architectures. Stateless vs. Stateful.
Architectures Cluster Computing Job Parallelism Request Parallelism 2 2010 VMware Inc. All rights reserved Replication Stateless vs. Stateful! Fault tolerance High availability despite failures If one
More informationHigh Availability and Scalability for Online Applications with MySQL
High Availability and Scalability for Online Applications with MySQL Part 1I - Advanced Replication Ivan Zoratti Sales Engineering Manager EMEA ivan@mysql.com April 2007 Agenda Welcome back! and Welcome
More informationDatabase Replication with Oracle 11g and MS SQL Server 2008
Database Replication with Oracle 11g and MS SQL Server 2008 Flavio Bolfing Software and Systems University of Applied Sciences Chur, Switzerland www.hsr.ch/mse Abstract Database replication is used widely
More informationSCALABLE DATA SERVICES
1 SCALABLE DATA SERVICES 2110414 Large Scale Computing Systems Natawut Nupairoj, Ph.D. Outline 2 Overview MySQL Database Clustering GlusterFS Memcached 3 Overview Problems of Data Services 4 Data retrieval
More informationTier Architectures. Kathleen Durant CS 3200
Tier Architectures Kathleen Durant CS 3200 1 Supporting Architectures for DBMS Over the years there have been many different hardware configurations to support database systems Some are outdated others
More informationData Management in the Cloud
Data Management in the Cloud Ryan Stern stern@cs.colostate.edu : Advanced Topics in Distributed Systems Department of Computer Science Colorado State University Outline Today Microsoft Cloud SQL Server
More informationF1: A Distributed SQL Database That Scales. Presentation by: Alex Degtiar (adegtiar@cmu.edu) 15-799 10/21/2013
F1: A Distributed SQL Database That Scales Presentation by: Alex Degtiar (adegtiar@cmu.edu) 15-799 10/21/2013 What is F1? Distributed relational database Built to replace sharded MySQL back-end of AdWords
More informationBBM467 Data Intensive ApplicaAons
Hace7epe Üniversitesi Bilgisayar Mühendisliği Bölümü BBM467 Data Intensive ApplicaAons Dr. Fuat Akal akal@hace7epe.edu.tr FoundaAons of Data[base] Clusters Database Clusters Hardware Architectures Data
More informationMyISAM Default Storage Engine before MySQL 5.5 Table level locking Small footprint on disk Read Only during backups GIS and FTS indexing Copyright 2014, Oracle and/or its affiliates. All rights reserved.
More informationIn Memory Accelerator for MongoDB
In Memory Accelerator for MongoDB Yakov Zhdanov, Director R&D GridGain Systems GridGain: In Memory Computing Leader 5 years in production 100s of customers & users Starts every 10 secs worldwide Over 15,000,000
More informationMySQL High Availability Solutions. Lenz Grimmer <lenz@grimmer.com> http://lenzg.net/ 2009-08-22 OpenSQL Camp St. Augustin Germany
MySQL High Availability Solutions Lenz Grimmer < http://lenzg.net/ 2009-08-22 OpenSQL Camp St. Augustin Germany Agenda High Availability: Concepts & Considerations MySQL Replication
More informationCloud DBMS: An Overview. Shan-Hung Wu, NetDB CS, NTHU Spring, 2015
Cloud DBMS: An Overview Shan-Hung Wu, NetDB CS, NTHU Spring, 2015 Outline Definition and requirements S through partitioning A through replication Problems of traditional DDBMS Usage analysis: operational
More informationTop 10 Reasons why MySQL Experts Switch to SchoonerSQL - Solving the common problems users face with MySQL
SCHOONER WHITE PAPER Top 10 Reasons why MySQL Experts Switch to SchoonerSQL - Solving the common problems users face with MySQL About Schooner Information Technology Schooner Information Technology provides
More informationDistributed Data Management
Introduction Distributed Data Management Involves the distribution of data and work among more than one machine in the network. Distributed computing is more broad than canonical client/server, in that
More informationActive/Active DB2 Clusters for HA and Scalability
Session Code Here Active/Active 2 Clusters for HA and Scalability Ariff Kassam xkoto, Inc Tuesday, May 9, 2006 2:30 p.m. 3:40 p.m. Platform: 2 for Linux, Unix, Windows Market Focus Solution GRIDIRON 1808
More informationDeveloping Scalable Java Applications with Cacheonix
Developing Scalable Java Applications with Cacheonix Introduction Presenter: Slava Imeshev Founder and main committer, Cacheonix Frequent speaker on scalability simeshev@cacheonix.com www.cacheonix.com/blog/
More informationCloud Based Application Architectures using Smart Computing
Cloud Based Application Architectures using Smart Computing How to Use this Guide Joyent Smart Technology represents a sophisticated evolution in cloud computing infrastructure. Most cloud computing products
More informationHow to choose High Availability solutions for MySQL MySQL UC 2010 Yves Trudeau Read by Peter Zaitsev. Percona Inc MySQLPerformanceBlog.
How to choose High Availability solutions for MySQL MySQL UC 2010 Yves Trudeau Read by Peter Zaitsev Percona Inc MySQLPerformanceBlog.com -2- About us http://www.percona.com http://www.mysqlperformanceblog.com/
More informationData Distribution with SQL Server Replication
Data Distribution with SQL Server Replication Introduction Ensuring that data is in the right place at the right time is increasingly critical as the database has become the linchpin in corporate technology
More informationHigh Availability Solutions with MySQL
High Availability Solutions with MySQL best OpenSystems Day Fall 2008 Ralf Gebhardt Senior Systems Engineer MySQL Global Software Practice ralf.gebhardt@sun.com 1 HA Requirements and Considerations HA
More informationPractical Cassandra. Vitalii Tymchyshyn tivv00@gmail.com @tivv00
Practical Cassandra NoSQL key-value vs RDBMS why and when Cassandra architecture Cassandra data model Life without joins or HDD space is cheap today Hardware requirements & deployment hints Vitalii Tymchyshyn
More informationPARALLELS CLOUD STORAGE
PARALLELS CLOUD STORAGE Performance Benchmark Results 1 Table of Contents Executive Summary... Error! Bookmark not defined. Architecture Overview... 3 Key Features... 5 No Special Hardware Requirements...
More informationAn Overview of Distributed Databases
International Journal of Information and Computation Technology. ISSN 0974-2239 Volume 4, Number 2 (2014), pp. 207-214 International Research Publications House http://www. irphouse.com /ijict.htm An Overview
More informationSurvey on Comparative Analysis of Database Replication Techniques
72 Survey on Comparative Analysis of Database Replication Techniques Suchit Sapate, Student, Computer Science and Engineering, St. Vincent Pallotti College, Nagpur, India Minakshi Ramteke, Student, Computer
More informationUnderstanding Neo4j Scalability
Understanding Neo4j Scalability David Montag January 2013 Understanding Neo4j Scalability Scalability means different things to different people. Common traits associated include: 1. Redundancy in the
More informationMassive Data Storage
Massive Data Storage Storage on the "Cloud" and the Google File System paper by: Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung presentation by: Joshua Michalczak COP 4810 - Topics in Computer Science
More informationModule 14: Scalability and High Availability
Module 14: Scalability and High Availability Overview Key high availability features available in Oracle and SQL Server Key scalability features available in Oracle and SQL Server High Availability High
More informationBuilding Scalable Web Sites: Tidbits from the sites that made it work. Gabe Rudy
: Tidbits from the sites that made it work Gabe Rudy What Is This About Scalable is hot Web startups tend to die or grow... really big Youtube Founded 02/2005. Acquired by Google 11/2006 03/2006 30 million
More informationBigdata High Availability (HA) Architecture
Bigdata High Availability (HA) Architecture Introduction This whitepaper describes an HA architecture based on a shared nothing design. Each node uses commodity hardware and has its own local resources
More informationbla bla OPEN-XCHANGE Open-Xchange Hardware Needs
bla bla OPEN-XCHANGE Open-Xchange Hardware Needs OPEN-XCHANGE: Open-Xchange Hardware Needs Publication date Wednesday, 8 January version. . Hardware Needs with Open-Xchange.. Overview The purpose of this
More informationCopyright www.agileload.com 1
Copyright www.agileload.com 1 INTRODUCTION Performance testing is a complex activity where dozens of factors contribute to its success and effective usage of all those factors is necessary to get the accurate
More informationOverview of Databases On MacOS. Karl Kuehn Automation Engineer RethinkDB
Overview of Databases On MacOS Karl Kuehn Automation Engineer RethinkDB Session Goals Introduce Database concepts Show example players Not Goals: Cover non-macos systems (Oracle) Teach you SQL Answer what
More informationHigh Availability for Database Systems in Cloud Computing Environments. Ashraf Aboulnaga University of Waterloo
High Availability for Database Systems in Cloud Computing Environments Ashraf Aboulnaga University of Waterloo Acknowledgments University of Waterloo Prof. Kenneth Salem Umar Farooq Minhas Rui Liu (post-doctoral
More informationMySQL Enterprise Backup
MySQL Enterprise Backup Fast, Consistent, Online Backups A MySQL White Paper February, 2011 2011, Oracle Corporation and/or its affiliates Table of Contents Introduction... 3! Database Backup Terms...
More informationEloquence Training What s new in Eloquence B.08.00
Eloquence Training What s new in Eloquence B.08.00 2010 Marxmeier Software AG Rev:100727 Overview Released December 2008 Supported until November 2013 Supports 32-bit and 64-bit platforms HP-UX Itanium
More informationAvoid a single point of failure by replicating the server Increase scalability by sharing the load among replicas
3. Replication Replication Goal: Avoid a single point of failure by replicating the server Increase scalability by sharing the load among replicas Problems: Partial failures of replicas and messages No
More informationScalable Architecture on Amazon AWS Cloud
Scalable Architecture on Amazon AWS Cloud Kalpak Shah Founder & CEO, Clogeny Technologies kalpak@clogeny.com 1 * http://www.rightscale.com/products/cloud-computing-uses/scalable-website.php 2 Architect
More informationConflict-Aware Scheduling for Dynamic Content Applications
Conflict-Aware Scheduling for Dynamic Content Applications Cristiana Amza Ý, Alan L. Cox Ý, Willy Zwaenepoel Þ Ý Department of Computer Science, Rice University, Houston, TX, USA Þ School of Computer and
More informationCentralized Systems. A Centralized Computer System. Chapter 18: Database System Architectures
Chapter 18: Database System Architectures Centralized Systems! Centralized Systems! Client--Server Systems! Parallel Systems! Distributed Systems! Network Types! Run on a single computer system and do
More informationDISTRIBUTED AND PARALLELL DATABASE
DISTRIBUTED AND PARALLELL DATABASE SYSTEMS Tore Risch Uppsala Database Laboratory Department of Information Technology Uppsala University Sweden http://user.it.uu.se/~torer PAGE 1 What is a Distributed
More informationMySQL Reference Architectures for Massively Scalable Web Infrastructure
MySQL Reference Architectures for Massively Scalable Web Infrastructure MySQL Best Practices for Innovating on the Web A MySQL Strategy White Paper April 2011 Table of Contents Executive Summary... 3!
More informationDo Relational Databases Belong in the Cloud? Michael Stiefel www.reliablesoftware.com development@reliablesoftware.com
Do Relational Databases Belong in the Cloud? Michael Stiefel www.reliablesoftware.com development@reliablesoftware.com How do you model data in the cloud? Relational Model A query operation on a relation
More informationIngres Replicated High Availability Cluster
Ingres High Availability Cluster The HA Challenge True HA means zero total outages Businesses require flexibility, scalability and manageability in their database architecture & often a Single Point of
More informationW I S E. SQL Server 2008/2008 R2 Advanced DBA Performance & WISE LTD.
SQL Server 2008/2008 R2 Advanced DBA Performance & Tuning COURSE CODE: COURSE TITLE: AUDIENCE: SQSDPT SQL Server 2008/2008 R2 Advanced DBA Performance & Tuning SQL Server DBAs, capacity planners and system
More informationTransactions and ACID in MongoDB
Transactions and ACID in MongoDB Kevin Swingler Contents Recap of ACID transactions in RDBMSs Transactions and ACID in MongoDB 1 Concurrency Databases are almost always accessed by multiple users concurrently
More informationGoGrid Implement.com Configuring a SQL Server 2012 AlwaysOn Cluster
GoGrid Implement.com Configuring a SQL Server 2012 AlwaysOn Cluster Overview This documents the SQL Server 2012 Disaster Recovery design and deployment, calling out best practices and concerns from the
More informationExploring Amazon EC2 for Scale-out Applications
Exploring Amazon EC2 for Scale-out Applications Presented by, MySQL & O Reilly Media, Inc. Morgan Tocker, MySQL Canada Carl Mercier, Defensio Introduction! Defensio is a spam filtering web service for
More informationThe Future of PostgreSQL High Availability Robert Hodges - Continuent, Inc. Simon Riggs - 2ndQuadrant
The Future of PostgreSQL High Availability Robert Hodges - Continuent, Inc. Simon Riggs - 2ndQuadrant Agenda / Introductions / Framing the High Availability (HA) Problem / Hot Standby + Log Streaming /
More informationPortable Scale-Out Benchmarks for MySQL. MySQL User Conference 2008 Robert Hodges CTO Continuent, Inc.
Portable Scale-Out Benchmarks for MySQL MySQL User Conference 2008 Robert Hodges CTO Continuent, Inc. Continuent 2008 Agenda / Introductions / Scale-Out Review / Bristlecone Performance Testing Tools /
More informationImprove Business Productivity and User Experience with a SanDisk Powered SQL Server 2014 In-Memory OLTP Database
WHITE PAPER Improve Business Productivity and User Experience with a SanDisk Powered SQL Server 2014 In-Memory OLTP Database 951 SanDisk Drive, Milpitas, CA 95035 www.sandisk.com Table of Contents Executive
More informationDistributed Databases. Concepts. Why distributed databases? Distributed Databases Basic Concepts
Distributed Databases Basic Concepts Distributed Databases Concepts. Advantages and disadvantages of distributed databases. Functions and architecture for a DDBMS. Distributed database design. Levels of
More informationTransaction Management in Distributed Database Systems: the Case of Oracle s Two-Phase Commit
Transaction Management in Distributed Database Systems: the Case of Oracle s Two-Phase Commit Ghazi Alkhatib Senior Lecturer of MIS Qatar College of Technology Doha, Qatar Alkhatib@qu.edu.sa and Ronny
More informationOutline. Failure Types
Outline Database Management and Tuning Johann Gamper Free University of Bozen-Bolzano Faculty of Computer Science IDSE Unit 11 1 2 Conclusion Acknowledgements: The slides are provided by Nikolaus Augsten
More informationMakeMyTrip CUSTOMER SUCCESS STORY
MakeMyTrip CUSTOMER SUCCESS STORY MakeMyTrip is the leading travel site in India that is running two ClustrixDB clusters as multi-master in two regions. It removed single point of failure. MakeMyTrip frequently
More informationComparing Microsoft SQL Server 2005 Replication and DataXtend Remote Edition for Mobile and Distributed Applications
Comparing Microsoft SQL Server 2005 Replication and DataXtend Remote Edition for Mobile and Distributed Applications White Paper Table of Contents Overview...3 Replication Types Supported...3 Set-up &
More informationHigh Availability Using MySQL in the Cloud:
High Availability Using MySQL in the Cloud: Today, Tomorrow and Keys to Success Jason Stamper, Analyst, 451 Research Michael Coburn, Senior Architect, Percona June 10, 2015 Scaling MySQL: no longer a nice-
More informationOptimizing Performance. Training Division New Delhi
Optimizing Performance Training Division New Delhi Performance tuning : Goals Minimize the response time for each query Maximize the throughput of the entire database server by minimizing network traffic,
More informationbigdata Managing Scale in Ontological Systems
Managing Scale in Ontological Systems 1 This presentation offers a brief look scale in ontological (semantic) systems, tradeoffs in expressivity and data scale, and both information and systems architectural
More informationOn- Prem MongoDB- as- a- Service Powered by the CumuLogic DBaaS Platform
On- Prem MongoDB- as- a- Service Powered by the CumuLogic DBaaS Platform Page 1 of 16 Table of Contents Table of Contents... 2 Introduction... 3 NoSQL Databases... 3 CumuLogic NoSQL Database Service...
More informationWITH A FUSION POWERED SQL SERVER 2014 IN-MEMORY OLTP DATABASE
WITH A FUSION POWERED SQL SERVER 2014 IN-MEMORY OLTP DATABASE 1 W W W. F U S I ON I O.COM Table of Contents Table of Contents... 2 Executive Summary... 3 Introduction: In-Memory Meets iomemory... 4 What
More informationDatabase Management. Chapter Objectives
3 Database Management Chapter Objectives When actually using a database, administrative processes maintaining data integrity and security, recovery from failures, etc. are required. A database management
More informationDistributed Architectures. Distributed Databases. Distributed Databases. Distributed Databases
Distributed Architectures Distributed Databases Simplest: client-server Distributed databases: two or more database servers connected to a network that can perform transactions independently and together
More informationDatabase Replication with MySQL and PostgresSQL
Database Replication with MySQL and PostgresSQL Fabian Mauchle Schedule Theory Why Replication Replication Layout and Types Conflicts Usage Scenarios Implementations Test Setup and Scenario Conclusion
More informationBoost SQL Server Performance Buffer Pool Extensions & Delayed Durability
Boost SQL Server Performance Buffer Pool Extensions & Delayed Durability Manohar Punna President - SQLServerGeeks #509 Brisbane 2016 Agenda SQL Server Memory Buffer Pool Extensions Delayed Durability Analysis
More informationMySQL Replication. openark.org
MySQL Replication Solutions & Enhancements Shlomi Noach June 2011 What is MySQL Replication? Replication is a mechanism built into MySQL. It allows a MySQL server (Master) to log changes made to schema
More informationMySQL Cluster 7.0 - New Features. Johan Andersson MySQL Cluster Consulting johan.andersson@sun.com
MySQL Cluster 7.0 - New Features Johan Andersson MySQL Cluster Consulting johan.andersson@sun.com Mat Keep MySQL Cluster Product Management matthew.keep@sun.com Copyright 2009 MySQL Sun Microsystems. The
More information3. PGCluster. There are two formal PGCluster Web sites. http://pgfoundry.org/projects/pgcluster/ http://pgcluster.projects.postgresql.
3. PGCluster PGCluster is a multi-master replication system designed for PostgreSQL open source database. PostgreSQL has no standard or default replication system. There are various third-party software
More informationMySQL: Cloud vs Bare Metal, Performance and Reliability
MySQL: Cloud vs Bare Metal, Performance and Reliability Los Angeles MySQL Meetup Vladimir Fedorkov, March 31, 2014 Let s meet each other Performance geek All kinds MySQL and some Sphinx Working for Blackbird
More informationChapter 18: Database System Architectures. Centralized Systems
Chapter 18: Database System Architectures! Centralized Systems! Client--Server Systems! Parallel Systems! Distributed Systems! Network Types 18.1 Centralized Systems! Run on a single computer system and
More informationRemote Copy Technology of ETERNUS6000 and ETERNUS3000 Disk Arrays
Remote Copy Technology of ETERNUS6000 and ETERNUS3000 Disk Arrays V Tsutomu Akasaka (Manuscript received July 5, 2005) This paper gives an overview of a storage-system remote copy function and the implementation
More informationNot Relational Models For The Management of Large Amount of Astronomical Data. Bruno Martino (IASI/CNR), Memmo Federici (IAPS/INAF)
Not Relational Models For The Management of Large Amount of Astronomical Data Bruno Martino (IASI/CNR), Memmo Federici (IAPS/INAF) What is a DBMS A Data Base Management System is a software infrastructure
More informationFlash Databases: High Performance and High Availability
Flash Databases: High Performance and High Availability Flash Memory Summit Software Tutorial August 11,2011 Dr John R Busch Founder and CTO Schooner Information Technology JohnBusch@SchoonerInfoTechcom
More informationConfiguring Apache Derby for Performance and Durability Olav Sandstå
Configuring Apache Derby for Performance and Durability Olav Sandstå Database Technology Group Sun Microsystems Trondheim, Norway Overview Background > Transactions, Failure Classes, Derby Architecture
More informationA Review of Column-Oriented Datastores. By: Zach Pratt. Independent Study Dr. Maskarinec Spring 2011
A Review of Column-Oriented Datastores By: Zach Pratt Independent Study Dr. Maskarinec Spring 2011 Table of Contents 1 Introduction...1 2 Background...3 2.1 Basic Properties of an RDBMS...3 2.2 Example
More informationWeb Application Deployment in the Cloud Using Amazon Web Services From Infancy to Maturity
P3 InfoTech Solutions Pvt. Ltd http://www.p3infotech.in July 2013 Created by P3 InfoTech Solutions Pvt. Ltd., http://p3infotech.in 1 Web Application Deployment in the Cloud Using Amazon Web Services From
More informationWikimedia architecture. Mark Bergsma <mark@wikimedia.org> Wikimedia Foundation Inc.
Mark Bergsma Wikimedia Foundation Inc. Overview Intro Global architecture Content Delivery Network (CDN) Application servers Persistent storage Focus on architecture, not so much on
More informationDesign Patterns for Distributed Non-Relational Databases
Design Patterns for Distributed Non-Relational Databases aka Just Enough Distributed Systems To Be Dangerous (in 40 minutes) Todd Lipcon (@tlipcon) Cloudera June 11, 2009 Introduction Common Underlying
More informationChapter 14: Recovery System
Chapter 14: Recovery System Chapter 14: Recovery System Failure Classification Storage Structure Recovery and Atomicity Log-Based Recovery Remote Backup Systems Failure Classification Transaction failure
More informationCloud Storage. Parallels. Performance Benchmark Results. White Paper. www.parallels.com
Parallels Cloud Storage White Paper Performance Benchmark Results www.parallels.com Table of Contents Executive Summary... 3 Architecture Overview... 3 Key Features... 4 No Special Hardware Requirements...
More informationSCALABILITY AND AVAILABILITY
SCALABILITY AND AVAILABILITY Real Systems must be Scalable fast enough to handle the expected load and grow easily when the load grows Available available enough of the time Scalable Scale-up increase
More informationTopics. Distributed Databases. Desirable Properties. Introduction. Distributed DBMS Architectures. Types of Distributed Databases
Topics Distributed Databases Chapter 21, Part B Distributed DBMS architectures Data storage in a distributed DBMS Distributed catalog management Distributed query processing Updates in a distributed DBMS
More informationOverview Motivating Examples Interleaving Model Semantics of Correctness Testing, Debugging, and Verification
Introduction Overview Motivating Examples Interleaving Model Semantics of Correctness Testing, Debugging, and Verification Advanced Topics in Software Engineering 1 Concurrent Programs Characterized by
More informationEvolution of Web Application Architecture International PHP Conference. Kore Nordmann / @koredn / <kore@qafoo.com> June 9th, 2015
Evolution of Web Application Architecture International PHP Conference Kore Nordmann / @koredn / June 9th, 2015 Evolution Problem Too many visitors Evolution Evolution Lessons Learned:
More informationDistributed File System. MCSN N. Tonellotto Complements of Distributed Enabling Platforms
Distributed File System 1 How do we get data to the workers? NAS Compute Nodes SAN 2 Distributed File System Don t move data to workers move workers to the data! Store data on the local disks of nodes
More informationCouchbase Server Under the Hood
Couchbase Server Under the Hood An Architectural Overview Couchbase Server is an open-source distributed NoSQL document-oriented database for interactive applications, uniquely suited for those needing
More informationSynchronous multi-master clusters with MySQL: an introduction to Galera
Synchronous multi-master clusters with : an introduction to Galera Henrik Ingo OUGF Harmony conference Aulanko, Please share and reuse this presentation licensed under Creative Commonse Attribution license
More informationReal-time Data Replication
Real-time Data Replication from Oracle to other databases using DataCurrents WHITEPAPER Contents Data Replication Concepts... 2 Real time Data Replication... 3 Heterogeneous Data Replication... 4 Different
More informationCloud Computing with Microsoft Azure
Cloud Computing with Microsoft Azure Michael Stiefel www.reliablesoftware.com development@reliablesoftware.com http://www.reliablesoftware.com/dasblog/default.aspx Azure's Three Flavors Azure Operating
More informationCloud Computing Is In Your Future
Cloud Computing Is In Your Future Michael Stiefel www.reliablesoftware.com development@reliablesoftware.com http://www.reliablesoftware.com/dasblog/default.aspx Cloud Computing is Utility Computing Illusion
More informationMS SQL Performance (Tuning) Best Practices:
MS SQL Performance (Tuning) Best Practices: 1. Don t share the SQL server hardware with other services If other workloads are running on the same server where SQL Server is running, memory and other hardware
More informationGoogle File System. Web and scalability
Google File System Web and scalability The web: - How big is the Web right now? No one knows. - Number of pages that are crawled: o 100,000 pages in 1994 o 8 million pages in 2005 - Crawlable pages might
More informationJava DB Performance. Olav Sandstå Sun Microsystems, Trondheim, Norway Submission ID: 860
Java DB Performance Olav Sandstå Sun Microsystems, Trondheim, Norway Submission ID: 860 AGENDA > Java DB introduction > Configuring Java DB for performance > Programming tips > Understanding Java DB performance
More informationConfiguring Apache Derby for Performance and Durability Olav Sandstå
Configuring Apache Derby for Performance and Durability Olav Sandstå Sun Microsystems Trondheim, Norway Agenda Apache Derby introduction Performance and durability Performance tips Open source database
More information