Copyright © 2013 NetEase 马进 app DDB introduce.

Slides:



Advertisements
Similar presentations
How We Manage SaaS Infrastructure Knowledge Track
Advertisements

ScaleDB Transactional Shared Disk storage engine for MySQL
Refeng Wu CQ5 WCM System Administrator
Database Architectures and the Web
Project presentation by Mário Almeida Implementation of Distributed Systems KTH 1.
Chapter 7 LAN Operating Systems LAN Software Software Compatibility Network Operating System (NOP) Architecture NOP Functions NOP Trends.
High Availability Group 08: Võ Đức Vĩnh Nguyễn Quang Vũ
Building a High-Volume Reporting System on Amazon AWS with MySQL, Tungsten, and Vertica GAMIFIED REWARDS
© 2015 Dbvisit Software Limited | dbvisit.com An Introduction to Dbvisit Standby.
GGF Toronto Spitfire A Relational DB Service for the Grid Peter Z. Kunszt European DataGrid Data Management CERN Database Group.
Google Bigtable A Distributed Storage System for Structured Data Hadi Salimi, Distributed Systems Laboratory, School of Computer Engineering, Iran University.
Presentation by Krishna
Nikolay Tomitov Technical Trainer SoftAcad.bg.  What are Amazon Web services (AWS) ?  What’s cool when developing with AWS ?  Architecture of AWS 
Module 14: Scalability and High Availability. Overview Key high availability features available in Oracle and SQL Server Key scalability features available.
Session-01. Hibernate Framework ? Why we use Hibernate ?
Replication with MySQL 5.1 Ligaya Turmelle Senior Technical Support Engineer - MySQL
1 Copyright © 2009, Oracle. All rights reserved. Exploring the Oracle Database Architecture.
Distributed Data Stores – Facebook Presented by Ben Gooding University of Arkansas – April 21, 2015.
Database Architectures and the Web
1 The Google File System Reporter: You-Wei Zhang.
Chapter 10 : Designing a SQL Server 2005 Solution for High Availability MCITP Administrator: Microsoft SQL Server 2005 Database Server Infrastructure Design.
1. When things go wrong: how to find SQL error Sveta Smirnova Principle Technical Support Engineer, Oracle.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Open Source Backup 1 Cloud Backup of Distributed MySQL Applications Taking snapshot of a thousand dancing dolphins Chander Kant Paddy.
© Continuent 9/19/2015 PostgreSQL Lightning Talk Availability, Scaling, and more with Tungsten Stephane Giron and Gilles Rayrat PG Euro Prato Italy.
Sofia, Bulgaria | 9-10 October SQL Server 2005 High Availability for developers Vladimir Tchalkov Crossroad Ltd. Vladimir Tchalkov Crossroad Ltd.
— Build your own enterprise-class PaaS platform. Master Cloudset Cloudset1 Cloudset Resource Pool cloud Dedicated resource can be assigned to a cloudset.
DISTRIBUTED DATABASES IN ADBMS Shilpa Seth
By Lecturer / Aisha Dawood 1.  You can control the number of dispatcher processes in the instance. Unlike the number of shared servers, the number of.
GigaSpaces Global HTTP Session Sharing October 2013 Massive Web Application Scaling.
© Continuent 2010 Liberating Your Data From MySQL: Cross-Database Replication to the Rescue! Robert Hodges and Linas Virbalas Continuent, Inc.
1 Moshe Shadmon ScaleDB Scaling MySQL in the Cloud.
IMDGs An essential part of your architecture. About me
1 Wenguang WangRichard B. Bunt Department of Computer Science University of Saskatchewan November 14, 2000 Simulating DB2 Buffer Pool Management.
CYBERINFRASTRUCTURE FOR THE GEOSCIENCES Data Replication Service Sandeep Chandra GEON Systems Group San Diego Supercomputer Center.
FailSafe SGI’s High Availability Solution Mayank Vasa MTS, Linux FailSafe Gatekeeper
Usenix Annual Conference, Freenix track – June 2004 – 1 : Flexible Database Clustering Middleware Emmanuel Cecchet – INRIA Julie Marguerite.
Grid Computing at Yahoo! Sameer Paranjpye Mahadev Konar Yahoo!
Chapter 2 Database Systems Architecture. Copyright © 2004 Pearson Addison-Wesley. All rights reserved.2-2 Topics in this Chapter Three levels of architecture.
Fast Crash Recovery in RAMCloud. Motivation The role of DRAM has been increasing – Facebook used 150TB of DRAM For 200TB of disk storage However, there.
Process Architecture Process Architecture - A portion of a program that can run independently of and concurrently with other portions of the program. Some.
HADOOP DISTRIBUTED FILE SYSTEM HDFS Reliability Based on “The Hadoop Distributed File System” K. Shvachko et al., MSST 2010 Michael Tsitrin 26/05/13.
 Introduction  Architecture NameNode, DataNodes, HDFS Client, CheckpointNode, BackupNode, Snapshots  File I/O Operations and Replica Management File.
Oracle9i Performance Tuning Chapter 11 Advanced Tuning Topics.
Migrating Data to SQL Azure Arunraj Chandrasekaran Twitter June 21, 2011.
Scalable data access with Impala Zbigniew Baranowski Maciej Grzybek Daniel Lanza Garcia Kacper Surdy.
Alibaba and PostgreSQL Guangzhou Zhang Practices on providing PG as a cloud service in Alibaba.
Em Spatiotemporal Database Laboratory Pusan National University File Processing : Database Management System Architecture 2004, Spring Pusan National University.
Replicazione e QoS nella gestione di database grid-oriented Barbara Martelli INFN - CNAF.
Log Shipping, Mirroring, Replication and Clustering Which should I use? That depends on a few questions we must ask the user. We will go over these questions.
Scaling out and in with Azure SQL DB Elastic Scale DBA-203 Warner Chaves, MCM/MVP, SQLTurbo.com, Pythian.com.
MySQL HA An overview Kris Buytaert. ● Senior Linux and Open Source ● „Infrastructure Architect“ ● I don't remember when I started.
1 Gaurav Kohli Xebia Breaking with DBMS and Dating with Relational Hbase.
Plan for Final Lecture What you may expect to be asked in the Exam?
Database Architectures and the Web
Lead SQL BankofAmerica Blog: SQLHarry.com
Maximum Availability Architecture Enterprise Technology Centre.
NOSQL.
MyRocks at Facebook and Roadmaps
Introduction to NewSQL
Choosing a MySQL Replication & High Availability Solution
Database Architectures and the Web
Introduction of Week 6 Assignment Discussion
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2 Database System Concepts and Architecture.
Cloud computing mechanisms
Cloud Data Replication with SQL Data Sync
OurSQL = MySQL + Blockchain
AWS S3 Cloud Backup Licensing per system Starting at $79 per year.
NoSQL databases An introduction and comparison between Mongodb and Mysql document store.
TN19-TCI: Integration and API management using TIBCO Cloud™ Integration
Presentation transcript:

Copyright © 2013 NetEase 马进 app DDB introduce

Copyright © 2013 NetEase DDB outline Application scenarios Technology decides System architecture System design Applications and Users

Copyright © 2013 NetEase application scenarios Applications Netease Blog, yixin, cloud music, cloud reader Database demands Scalability TB,PB level ; Cluster database nodes: less than 1000 ; Availability take over in one minute when data nodes failed take over in seconds when sql proxy failed Reliablility Data never lose

Copyright © 2013 NetEase application scenarios Operation types OLTP: mainly CRUD Some complex query: join, group, agg etc. Distributed transactions Application demands Usability Drived from java jdbc, easy to use Sql proxy 100% compatible with mysql Fast iteration to meet app needs

Copyright © 2013 NetEase Related tech. Solutions Oracle RAC cost : commercial prods functions : too much for us Middleware No mature solutions NoSQL products Lack availability, reliability. Lack support for join, complex query and transactions

Copyright © 2013 NetEase Technology decides Independent development DDB: Middleware based on MySQL 1.core : data sharding on MySQL for availability. 2.Derived from stardard jdbc for usability. 3.Sql parser and planner in middleware, app has no concern for sharding, just like using MySQL. 4.Optionly, app use connector/J and DDBProxy to acess DDB

Copyright © 2013 NetEase DBI Architecture DBN1 MySQL sysdn MySQL DBI Module ( JDBC ) DBAdmin App isql DBA Master DBN2 MySQL DBN3 MySQL Control flow DDL , metadata sync Data flow DML , metadata flush

Copyright © 2013 NetEase Proxy Architecture DBN1 MySQL MetaStore MySQL DBI Module ( JDBC ) DBAdmin Decoder Encoder DBA Master DBN2 MySQL DBN3 MySQL Control flow DDL , metadata sync QueryServer(DDBProxy) App standard jdbc connector MySQL Client App Data flow DML , metadata flush

Copyright © 2013 NetEase Entire Architecture

Copyright © 2013 NetEase Entire architecture DBI(Query Server) Distributed SQL parser, planner. Node connection pool. Distributed transaction manager. Sql, node connection Statistics collecting. Master & SYSDB Metadata(table, column……), Configuration management and notification Data migration, xa, dbn monitoring DBN Master and slave DDB master is response for failing over(notify switching dbn url)

Copyright © 2013 NetEase System design Data Sharding Availability and reliability Distributed transaction processing online scale out and data migration Global incremental ID

Copyright © 2013 NetEase Sharding Two mapping layer: hash, policy Hash is immutable, policy is mutable Change policy to implement data migration

Copyright © 2013 NetEase Availability and reliability Atomic fail over Master keep heartbeat from each dbn Pick a slave to switch on dbn failing No data loss VSR from innosql Mater high availability Use zookeeper to pick one leader and auto take over

Copyright © 2013 NetEase Distributed transaction Distributed transaction processing core : 2-Phase-Commit implemention DBI or QS as transaction coordinator ; 1.Sql parser and planner, dectect if trasaction cross multiple dbns 2.Use mysql xa interfaces 3.Dbi and qs have xa logs (mainly prepare events) What if : dbi or qs crashed or restarted ? Transaction recovery based on local xa logs What if : dbi or qs is removed ? 1.Master asked about all suspended xa transactions from each DBN at a interval 2.For those suspended time > xx min, auto commit and report to DBA

Copyright © 2013 NetEase online scale out and data migration Core one : full copy and incremental replication Core two : incremental replication based on binlog (tungsten and ddb filter) full copy and incremental rep both depend on policy changing We develop a single tool “hamal” to implement full copy and incremental rep

Copyright © 2013 NetEase Global incremental ID Support global auto_increment id MSB: master allocate batch ids, default: easy to implement and comprehend 2.Master dependent, insert could be blocked. 3.Bad incremental quality, Most apps use this implemention TSB : based on local and master timestamp 1.Complex to implement, take care when changing master clock 2.No master dependent, support multiple masters (versions) in one cluster 3.For those need higher availability or incremental quality (NOS)

Copyright © 2013 NetEase Apps and Users Appications apps > 50 DBN Servers > 300 (DBN > 1000) Data > 100TB Request in one app per day > 16 billion Users Hangzhou : yixin, cloud music, cloud reader Mail , file center Beijing: youdao cloud apps Guangzhou: Webs and games