To Hire, or to train, that is the question (Percona Live 2014)
-
Upload
geoffrey-anderson -
Category
Technology
-
view
242 -
download
0
description
Transcript of To Hire, or to train, that is the question (Percona Live 2014)
![Page 1: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/1.jpg)
1
To Hire, or to train, that is the question
#PerconaLive 2014
![Page 2: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/2.jpg)
2
Geoffrey Anderson• DBA @ Box, Inc.
• Tooling for MySQL and HBase
• #DBHangOps
![Page 3: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/3.jpg)
3
Share, manage and access your content from any device, anywhere
![Page 4: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/4.jpg)
4
25MM+USERS
225K+BUSINESSES
99% FORTUNE 500
![Page 5: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/5.jpg)
5
HEALTHCARE INDUSTRIAL HIGH TECH MEDIA RETAIL SERVICES
![Page 6: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/6.jpg)
6
Why this talk?
![Page 7: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/7.jpg)
7
We’re Hiring!
![Page 8: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/8.jpg)
8
What are you actually looking for?
![Page 9: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/9.jpg)
9
The Perfect MySQL Candidate• 5+ years with MySQL in a high volume production environment
• “Strong hands-on experience” with MySQL‒ SQL and Query optimization‒ Replication‒ Performance and Tuning‒ Knowledge of InnoDB internals
• “Strong systems administration” skills (e.g. “Knows Linux”)
• Passionate about Devops and automation‒ MySQL tools‒ Monitoring
• Self-Motivated
• Known in the community‒ Active blogger‒ Active bug filer/fixer
![Page 10: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/10.jpg)
10
![Page 11: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/11.jpg)
11
![Page 12: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/12.jpg)
12
Let’s backpedal for a second
![Page 13: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/13.jpg)
13
Benefits of External hiring
• New Knowledge
• Fresh perspectives‒ Culture‒ Performance and tuning‒ Automating
• Start on-call rotation in 1-2 months!
![Page 14: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/14.jpg)
14
Costs of External Hiring
• Recruiting‒ Sourcing‒ Interviewing
• New-hire package‒ Benefits‒ Salary/Equity
• Still potentially a bad hire
Time and money
![Page 15: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/15.jpg)
15
Benefits of Internal Hiring
• Familiarity with environment
• Familiarity with team
• Known strengths and weaknesses
• New organizational perspective
• Retention
![Page 16: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/16.jpg)
16
Costs of Internal Hiring
• Some training required
• Ramp-up time
• Starting in on-call rotation is probably 3-6 months out
![Page 17: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/17.jpg)
17
But YouAlreadyKnowAllThis
![Page 18: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/18.jpg)
18
![Page 19: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/19.jpg)
19
Why’d YOU become a MySQL DBA?
• You were the developer that knew the most MySQL
• You were the Sys admin that knew the most MySQL
• You knew Oracle/SQL Server/PostgreSQL/etc before
• You studied it at school
• Other reasons?
![Page 20: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/20.jpg)
20
![Page 21: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/21.jpg)
21
Let’s Talk About HowBox TrainsA MySQL DBA
![Page 22: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/22.jpg)
22
Necessary DBA Skills
1. Systems Administration
2. SQL
3. MySQL
4. MySQL at Box
5. MySQL Automation
6. Continued Learning
1. Systems Administration
2. Hadoop
3. HBase
4. HBase at Box
5. HBase Automation
6. Continued learning
(HBase plan is nearly identical)
That’s for another
conference
![Page 23: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/23.jpg)
23
1. Systems Administration
• Management‒ Configuration Management‒ Version Control‒ Change Control
• Triaging‒ Disk – iostat, df‒ CPU – top, ps‒ Memory – free‒ Network – ifconfig, ping‒ What happened – sar, log files
• Automation‒ Scripts!
![Page 24: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/24.jpg)
24
2. SQL
![Page 25: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/25.jpg)
25
2. SQL – What
• Used to talk to RDBMSs
• Manipulate sets of data
• For a DBA‒ DDL vs. DML‒ Query optimization
![Page 26: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/26.jpg)
26
2. SQL – Resources
http://www.sqlcourse.com/
![Page 27: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/27.jpg)
27
2. SQL – Resources
http://www.phlonx.com/resources/nf3/
![Page 28: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/28.jpg)
28
2. SQL – Resources
http://databases.about.com/od/specificproducts/a/Should-I-Normalize-My-Database.htm
![Page 29: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/29.jpg)
29
3. MySQL
![Page 30: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/30.jpg)
30
3. MySQL – What
• A Relational Database Management System‒ Open source https://launchpad.net/mysql-server‒ Active community
• For DBAs‒ Pluggable storage engines‒ Cost-based optimizer
![Page 31: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/31.jpg)
31
3. MySQL – How to Read The (Freakin’) Manual
• Version number is important!
• Download PDF for your version!‒ MySQL 5.5 – http://downloads.mysql.com/docs/refman-5.5-en.pdf‒ MySQL 5.6 - http://downloads.mysql.com/docs/refman-5.6-en.pdf
![Page 32: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/32.jpg)
32
3. MySQL – How to Read The (Freakin’) Manual
• “Typographical and Syntax Conventions”‒ http://dev.mysql.com/doc/refman/5.5/en/manual-conventions.html[ Optional ]
![Page 33: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/33.jpg)
33
3. MySQL – How to Read The (Freakin’) Manual
• “Typographical and Syntax Conventions”‒ http://dev.mysql.com/doc/refman/5.5/en/manual-conventions.htmluser_input
![Page 34: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/34.jpg)
34
3. MySQL – How to Read The (Freakin’) Manual
• “Typographical and Syntax Conventions”‒ http://dev.mysql.com/doc/refman/5.5/en/manual-conventions.html
defined_below:
![Page 35: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/35.jpg)
35
3. MySQL – How to Read The (Freakin’) Manual
• “Typographical and Syntax Conventions”‒ http://dev.mysql.com/doc/refman/5.5/en/manual-conventions.html
| (pipe) indicates full clauses
![Page 36: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/36.jpg)
36
3. MySQL – What all DBAs should do
• Get the server - http://dev.mysql.com/downloads/mysql/
• Go through the tutorial - http://dev.mysql.com/doc/refman/5.5/en/tutorial.html
![Page 37: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/37.jpg)
37
3. MySQL – What all DBAs should do
http://docs.linuxtone.org/ebooks/MySQL/Replication%20Tutorial%20Presentation.pdf
![Page 38: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/38.jpg)
38
3. MySQL – What all DBAs should do
http://mysqlsandbox.net/
![Page 39: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/39.jpg)
39
3. MySQL – What all DBAs should do
http://planet.mysql.com
http://www.mysqlperformanceblog.com/
irc.freenode.net/#mysql
![Page 40: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/40.jpg)
40
3. MySQL – What all DBAs should do
• http://education.oracle.com/
• http://www.percona.com/products/mysql-training
• http://www.skysql.com/products/training
![Page 41: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/41.jpg)
41
3. MySQL – Backups (a.k.a. a DBA’s biggest responsibility)
• Take them‒ Seriously.Take them.‒ No, Seriously.Take them.
• Whole books have been written on this!
• Whole podcasts have been done on this!‒ http://bit.ly/oursql035‒ http://bit.ly/oursql159
• Backup tools‒ Percona Xtrabackup‒ MySQL Enterprise Backup‒ mysqldump‒ mydumper/myloader
![Page 42: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/42.jpg)
42
3. MySQL – Scalability and High Availability
![Page 43: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/43.jpg)
43
4. MySQL at Box
![Page 44: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/44.jpg)
44
4. MySQL at Box
• Box Database infrastructure
• Typical /etc/my.cnf
• Tools‒ Box Weather Station‒ Querykiller
• MySQL Backups and Recovery @ Box
• Team responsibilities
• Checklists‒ Changing active server‒ Granting access‒ Applying schema changes
![Page 45: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/45.jpg)
45
4. MySQL at Box (Ramping up someone)
BestWayToRampup
![Page 46: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/46.jpg)
46
5. MySQL Automation
https://code.launchpad.net/mysql-utilities
https://code.launchpad.net/percona-toolkit
https://forge.puppetlabs.com/puppetlabs/mysqlhttps://github.com/mozilla-it/puppet-mysql
![Page 47: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/47.jpg)
47
5. MySQL Automation
• DB Ops Script Framework‒ Server tasks
‒ Clone replicas‒ Promote slave to master
‒ Security tasks‒ Grant management‒ Auditing
‒ Sharding tasks‒ Split shards‒ Move shards
![Page 48: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/48.jpg)
48
6. Continued Learning
![Page 49: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/49.jpg)
49
6. Continued Learning
![Page 50: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/50.jpg)
50
??? – http://dbareactions.tumblr.com
When I call one of my former coworkers to see if they want the new DBA position
![Page 51: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/51.jpg)
51
??? – http://dbareactions.tumblr.com
When management asked me to fix the database scalability problem by adding an index
![Page 52: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/52.jpg)
52
InClosing
• Don’t discount external hiring
• Don’t discount internal hiring
• Commit to knowledge sharing with others
• Remember your learning curve– Help others through their own
![Page 53: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/53.jpg)
53
?Email [email protected]
Twitter @geodbz
Tech Blog tech.blog.box.comPlatform developers.box.com
Github github.com/box
![Page 54: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/54.jpg)
54
References (seriously…check these out!)
• http://www.jonathanlevin.co.uk/2010/07/where-have-all-mysql-dbas-gone.html
• http://www.iheavy.com/2011/12/19/mythical-mysql-dba/
• http://www.iheavy.com/2012/02/26/top-mysql-dba-interview-questions-part-1/
• http://www.percona.com/live/mysql-conference-2013/sites/default/files/slides/PLMCE13%20-%20Training%20-%20Cost%20or%20Investment%20%28final%29.pdf
![Page 55: To Hire, or to train, that is the question (Percona Live 2014)](https://reader038.fdocuments.in/reader038/viewer/2022103114/55503e9eb4c90580748b48a7/html5/thumbnails/55.jpg)
55
Image Credits
• http://www.flickr.com/photos/atgeist/8663784742/sizes/o/
• http://www.flickr.com/photos/prodiffusion/4486297043/sizes/l/
• http://www.qwantz.com/fanart/dinocussing.png
• http://www.flickr.com/photos/bparker321/7906708980/sizes/l/
• http://www.flickr.com/photos/96641479@N03/12309210613/sizes/o/
• http://farm4.staticflickr.com/3081/3202565643_c2d1a6f67b_o.jpg
• https://www.flickr.com/photos/mhillyer/138766962/sizes/o/
• http://www.flickr.com/photos/tylermyeo/11618726115/sizes/o/
• http://www.flickr.com/photos/billkimandthecats/6338535597/
• http://www.flickr.com/photos/babykailan/2126901394
• https://www.flickr.com/photos/krupptastic/4988425044/sizes/o/
• http://danga.com/words/2007_yapc_asia/yapc-2007.pdf
• http://albertolarripa.com/wordpress/wp-content/uploads/2012/06/mysql-replication-principle.png
• http://www.cubrid.org/manual/91/en/_images/image38.png
• https://www.flickr.com/photos/rfmcdonald/4301658325/sizes/o/
• https://www.flickr.com/photos/byte/120228210/sizes/o/
• http://www.nytimes.com/2013/07/16/business/last-car-plant-brings-detroit-hope-and-cash.html
• https://www.flickr.com/photos/lens_envy/2212050922/sizes/o/
• https://www.flickr.com/photos/stvan4245/162066238/sizes/o/