Scalable Web Site Antipatterns Justin Leitgeb Stack Builders Inc.

Slides:



Advertisements
Similar presentations
Enhancing Productivity with MySQL 5.6 New Features
Advertisements

From Startup to Enterprise A Story of MySQL Evolution Vidur Apparao, CTO Stephen OSullivan, Manager of Data and Grid Technologies April 2009.
ScaleDB Transactional Shared Disk storage engine for MySQL
Inner Architecture of a Social Networking System Petr Kunc, Jaroslav Škrabálek, Tomáš Pitner.
Adam Jorgensen Pragmatic Works Performance Optimization in SQL Server Analysis Services 2008.
Queuing and Caching to Scalability James Kovacs
Michael Pizzo Software Architect Data Programmability Microsoft Corporation.
Andy Pavlo April 13, 2015April 13, 2015April 13, 2015 NewS QL.
2 Proprietary & Confidential What is Sharding Benefits of Sharding Alternatives of Sharding When to start Sharding Agenda.
1 NETE4631 Cloud deployment models and migration Lecture Notes #4.
The NewSQL database you’ll never outgrow Taming the Big Data Fire Hose John Hugg Sr. Software Engineer, VoltDB.
A Comparison of Database Software CS 616 April 8, 2004 Team 7 Mandar Patankar Jonathan Cohen B. Timothy Walsh.
INTRODUCTION The Group WEB BROWSER FOR RELATION Goals.
Progress Report 11/1/01 Matt Bridges. Overview Data collection and analysis tool for web site traffic Lets website administrators know who is on their.
12/11/01 Matt Bridges Advisor: Ralph Morelli. What is Web Analytics? In traditional commerce, store owners can observe their customers habits: What time.
NoSQL and NewSQL Justin DeBrabant CIS Advanced Systems - Fall 2013.
Advanced Distributed Software Architectures and Technology group ADSaT 1 Application Architectures Ian Gorton, Paul Greenfield.
Answering the Database Scale Out Problem: SSDs in the Data Center April 14, 2010 Dan Marriott Director - Production Operations
Lecture-8/ T. Nouf Almujally
Module 14: Scalability and High Availability. Overview Key high availability features available in Oracle and SQL Server Key scalability features available.
Passage Three Introduction to Microsoft SQL Server 2000.
Sarah Sproehnle Cloudera, Inc
How WebMD Maintains Operational Flexibility with NoSQL Rajeev Borborah, Sr. Director, Engineering Matt Wilson – Director, Production Engineering – Consumer.
What makes Facebook do what it does? By Gavin Mais.
M icrosoft Data Warehousing - SQL Server State of the Technology Presentation by Sujata Angara Nakul Johri Sang Ho Park.
1 NETE4631 Using Google Web Services and Using Microsoft Cloud Services Lecture Notes #7.
Meet with the AppEngine Márk Gergely eu.edge. What is AppEngine? It’s a tool, that lets you run your web applications on Google's infrastructure. –Google's.
JavaOne '99 Confidential Performance and Scalability of EJB-based applications Sriram Srinivasan Principal Engineer, BEA/WebLogic.
September 2011Copyright 2011 Teradata Corporation1 Teradata Columnar.
Data Structures & Algorithms and The Internet: A different way of thinking.
Faster and Smarter Data Warehouses with Oracle OLAP 11g.
NoSQL Databases Oracle - Berkeley DB Rasanjalee DM Smriti J CSC 8711 Instructor: Dr. Raj Sunderraman.
NoSQL Databases Oracle - Berkeley DB. Content A brief intro to NoSQL About Berkeley Db About our application.
SQL Server Indexes Indexes. Overview Indexes are used to help speed search results in a database. A careful use of indexes can greatly improve search.
Info Systems Fall 2013 . The modern role of often not-so-modern database technology  We will look at MySQL SQL PHP  NoSQL DBs Mongo and GUIs for it.
Twitter Copes with Web2.0rhea The Twits are catching up… Alex Carian ISM 158 May 6, 2010.
Development of Hybrid SQL/NoSQL PanDA Metadata Storage PanDA/ CERN IT-SDC meeting Dec 02, 2014 Marina Golosova and Maria Grigorieva BigData Technologies.
 2009 Calpont Corporation 1 Calpont Open Source Columnar Storage Engine for Scalable MySQL Data Warehousing April 22, 2009 MySQL User Conference Santa.
MongoDB is a database management system designed for web applications and internet infrastructure. The data model and persistence strategies are built.
DELETION SERVICE ISSUES ADC Development meeting
CS525: Big Data Analytics MapReduce Computing Paradigm & Apache Hadoop Open Source Fall 2013 Elke A. Rundensteiner 1.
Intuitions for Scaling Data-Centric Architectures
NoSQL Or Peles. What is NoSQL A collection of various technologies meant to work around RDBMS limitations (mostly performance) Not much of a definition...
NOSQL DATABASE Not Only SQL DATABASE
MySQL Overview Jed Reynolds Write Your Questions on the Board! Landscape, Engines, HA, Performance Questions.
Data and Information Systems Laboratory University of Illinois Urbana-Champaign Data Mining Meeting Mar, From SQL to NoSQL Xiao Yu Mar 2012.
1 NETE4631 Using Google Web Services Lecture Notes #6.
Virtualizing and Scaling for the Future. Who am I? Was Director of Architecture for MySQL Founder/CTO Data Differential Drizzle Gearman Memcached.
Introduction to MySQL  Working with MySQL and MySQL Workbench.
Cofax Scalability Document Version Scaling Cofax in General The scalability of Cofax is directly related to the system software, hardware and network.
Dive into NoSQL with Azure Niels Naglé Hylke Peek.
Performance Tuning Renegade
Cassandra as Memcache Edward Capriolo Media6Degrees.com.
Plan for Final Lecture What you may expect to be asked in the Exam?
CSCI5570 Large Scale Data Processing Systems
Understanding and Improving Server Performance
Cloud Computing and Architecuture
Amazon AWS Solution Architect Associate Exam Questions PDF associate.html AWS Solution Training Exam.
Improving searches through community clustering of information
CS122B: Projects in Databases and Web Applications Winter 2017
MongoDB Er. Shiva K. Shrestha ME Computer, NCIT
Modern Databases NoSQL and NewSQL
Example of a page header
1 Demand of your DB is changing Presented By: Ashwani Kumar
Scaling and Performance
Taming the Big Data Fire Hose
Building your First Cube with SSAS
NoSQL Overview + Elasticsearch Quick Dive
McGraw-Hill Technology Education
NoSQL databases An introduction and comparison between Mongodb and Mysql document store.
Presentation transcript:

Scalable Web Site Antipatterns Justin Leitgeb Stack Builders Inc.

Overview Based on architectures that have caused significant down- time and pain Like examples in Nygard's book, but more emphasis on essential rather than accidental properties of system

Anti-pattern 1: Monotonically-increasing data set with rapid growth Having a system that relies on querying all historical data Requires joins from mega-tables (hundreds of millions of rows) Often from automatically aggregated data

Detection Slow query log SHOW FULL PROCESSLIST SHOW ENGINE INNODB STATUS vmstat

Anti-solutions Partitioning Pre-caching (cron jobs) Switching to MyISAM NoSQL?

NoSQL Out-of-the box solutions with NoSQL (e.g., Mongo) help with data modeling Use CAP instead of ACID May lead to better ability to distribute algorithms But: o Haven't had as much effort yet expended on engines as MySQL (INNODB) o Often use the same algorithms (e.g., Btree indexes) o Can require more dev time (e.g., Cassandra and good implementation of distributed algorithms)

Stop the bleeding Cut off long queries Turn off site sections Fail whale

Band-aids Obvious - adding app servers, memcached, bigger DB server Adding app servers puts more pressure on DB server HTTP Caching (varnish) MySQL tuning (look for things like FILESORT) Read slaves

Solutions Hard-limit data volume - look for cases where data decreases in value with time o Add features related to scale Distributed algorithms and data stores Data warehousing

Anti-pattern 2: Allowing "risky" writes to block HTTP responses Symptoms: o Slow requests o Servers hitting MaxClients and 500 error

Possible Causes Possible causes: database backed analytics tracking Session management Any SQL DML (UPDATE, DELETE)

Risk increases with: The number of requests invoking the write operation Traffic Concurrent background operations The algorithmic complexity of the write Slow AWS I/O on EBS

Solutions Asynchronize! o Write to a queue Write to memcached or other non-ACID store o Later bring to data warehouse for advanced analytics

More info 1.Nygard, Michael T. Release It!: Design and Deploy Production-ready Software. Raleigh, NC: Pragmatic, Fowler, Martin. Patterns of Enterprise Application Architecture. Boston: Addison-Wesley, Kimball, Ralph. The Data Warehouse Toolkit: Practical Techniques for Building Dimensional Data Warehouses: John Wiley & Sons Schwartz, Baron. High Performance MySQL: O'Reilly, 2008