Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Apache Curator™ 
Past, Present, Future 
Jordan Zimmerman 
jordan@jordanzimmerman.com 
@randgalt 
http://www.linkedin.com/i...
Introduction
About Me 
• Netflix Platform Team April 2011 – July 2013 
• Started the Netflix OSS initiative 
• Created the Netflix OSS ...
Curator’s History 
• Initially developed by me at Netflix 
• Open-sourced by Netflix on GitHub in July 2011 
• Accepted in...
State of the Project
Since Last Presentation 
• Feb 2012? 
• Apache 
• Lots of bug fixes, new features, etc. 
• Lots of adoption 
• More than 1...
Move to Apache 
• Apache verb |əˈpaSH, äˈpäSH| 
Native American word meaning “slow down”
Move to Apache 
• Apache verb |əˈpaSH, äˈpäSH| 
Native American word meaning “slow down” 
• Huge Success 
 
• Adoption Sk...
Lots of Users
Lots of Posts
Curator Gets an Entire 
Chapter in the ZK Book!
Widely Adopted - Apache 
• Apache Storm 
• Apache Drill 
• Apache Oozie 
• Apache Spark 
• Apache Flume 
• Apache Hive 
• ...
Widely Adopted - Others 
• Netflix (of course) 
• Maginatics (now EMC) 
• Bazaarvoice 
• eBay 
• General Electric 
• Wix 
...
Widely Adopted - Others 
• Netflix (of course) 
• Maginatics (now EMC) 
• Bazaarvoice 
• eBay 
• General Electric 
• Wix 
...
What’s New
New Committers 
• Scott Blum 
• Cameron McKenzie
Cameron McKenzie 
I'm a software engineer / architect and live in Hobart, 
Australia with my partner and our 5 1/2 year ol...
Scott Blum 
I'm a software engineer at Square, Inc since 2012, working 
on highly available system and infrastructure. I g...
The Entire Team 
Committer/PMC PMC 
• Jordan Zimmerman 
• Jay Zarfoss 
• Eric Tschetter 
• Ioannis Canellos 
• Cameron McK...
Notable New(ish) Recipes 
• Tree Cache 
• Persistent Ephemeral Node 
• Node Cache
Service Discovery 
• One of the most widely used Curator recipes!
Don’t Forget - It’s a Framework 
for Writing Recipes 
• Connection management 
• Tons of utilities 
• Simplifies most use-...
Apache Curator 2.7.0
Apache Curator 2.7.0
Curator RPC Proxy 
• Gives access to Curator to non JVM languages/environments 
• Organizations can unify their ZooKeeper ...
Nirmata Workflow 
• Nirmata Workflow is a Java Apache ZooKeeper and Apache Curator based library 
that enables distributed...
The Future
ZooKeeper 3.5.x Support 
• Curator will fully support dynamic reconfig: 
CURATOR-160 
• Curator will fully support watcher...
Other Stuff 
• Java 8? 
• Rework some of the APIs (get rid of 
KeeperException, e.g.) 
• More recipes 
• More committers (...
Thank you! 
Q&A 
Jordan Zimmerman 
jordan@jordanzimmerman.com 
@randgalt 
http://www.linkedin.com/in/jordanzimmerman 
http...
Upcoming SlideShare
Loading in …5
×

Apache Curator: Past, Present and Future

2,361 views

Published on

My presentation on Apache Curator, Past, Present and Future at the Bay Area ZooKeeper User Group Meetup, November 6, 2014 - http://www.meetup.com/zookeeperusergroup/events/210813812

Published in: Software

Apache Curator: Past, Present and Future

  1. 1. Apache Curator™ Past, Present, Future Jordan Zimmerman jordan@jordanzimmerman.com @randgalt http://www.linkedin.com/in/jordanzimmerman http://aisallc.com
  2. 2. Introduction
  3. 3. About Me • Netflix Platform Team April 2011 – July 2013 • Started the Netflix OSS initiative • Created the Netflix OSS Web Portal • Currently Independent Contractor • Lives in Panamá City, Panamá (!) • Current contract: Blue Jeans Network Panamá City!
  4. 4. Curator’s History • Initially developed by me at Netflix • Open-sourced by Netflix on GitHub in July 2011 • Accepted into the Apache Incubator in March 2013 • Curator graduated to an Apache Top Level Project in September, 2013
  5. 5. State of the Project
  6. 6. Since Last Presentation • Feb 2012? • Apache • Lots of bug fixes, new features, etc. • Lots of adoption • More than 10 releases
  7. 7. Move to Apache • Apache verb |əˈpaSH, äˈpäSH| Native American word meaning “slow down”
  8. 8. Move to Apache • Apache verb |əˈpaSH, äˈpäSH| Native American word meaning “slow down” • Huge Success  • Adoption Skyrocketed • Thank you to Patrick Hunt for championing
  9. 9. Lots of Users
  10. 10. Lots of Posts
  11. 11. Curator Gets an Entire Chapter in the ZK Book!
  12. 12. Widely Adopted - Apache • Apache Storm • Apache Drill • Apache Oozie • Apache Spark • Apache Flume • Apache Hive • ???
  13. 13. Widely Adopted - Others • Netflix (of course) • Maginatics (now EMC) • Bazaarvoice • eBay • General Electric • Wix • Spring • Nirmata
  14. 14. Widely Adopted - Others • Netflix (of course) • Maginatics (now EMC) • Bazaarvoice • eBay • General Electric • Wix • Spring • Nirmata
  15. 15. What’s New
  16. 16. New Committers • Scott Blum • Cameron McKenzie
  17. 17. Cameron McKenzie I'm a software engineer / architect and live in Hobart, Australia with my partner and our 5 1/2 year old daughter. I graduated from the Royal Melbourne Institute of Technology in 1999 with a Bachelors of Applied Science (Computer Science) and have been working for Unico, a Melbourne based IT company, ever since. I've primarily worked in the Telco space, dealing with call handling and provisioning systems with high throughput requirements and 5 9's reliability. I became involved with Curator and ZooKeeper when implementing a system for coordinating application functions across geographically separated application instances. In my spare time I like to climb rocks and run up hills.
  18. 18. Scott Blum I'm a software engineer at Square, Inc since 2012, working on highly available system and infrastructure. I got involved with Curator and Zookeeper while working on shared systems for cluster-level leases, locks, and other coordination data that was previously kept in databases. Prior to Square, I was at Google for 7 years, where my main claim to fame is Google Web Toolkit (GWT) where I was the main developer on the Java-to- Javascript compiler, debugging environment, and JRE emulation libraries.
  19. 19. The Entire Team Committer/PMC PMC • Jordan Zimmerman • Jay Zarfoss • Eric Tschetter • Ioannis Canellos • Cameron McKenzie • Scott Blum • Patrick Hunt • Mahadev Konar • Luciano Resende • Enis Söztutar
  20. 20. Notable New(ish) Recipes • Tree Cache • Persistent Ephemeral Node • Node Cache
  21. 21. Service Discovery • One of the most widely used Curator recipes!
  22. 22. Don’t Forget - It’s a Framework for Writing Recipes • Connection management • Tons of utilities • Simplifies most use-cases
  23. 23. Apache Curator 2.7.0
  24. 24. Apache Curator 2.7.0
  25. 25. Curator RPC Proxy • Gives access to Curator to non JVM languages/environments • Organizations can unify their ZooKeeper usage across languages/environments (i.e. use Curator's Service Discovery recipe) • The quality of ZooKeeper clients for some non-JVM languages is lacking • There are Thrift implementations for a large number of languages and environments
  26. 26. Nirmata Workflow • Nirmata Workflow is a Java Apache ZooKeeper and Apache Curator based library that enables distributed task workflows. • Can model simple to complex task relationships • Manages task relationships and distributed scheduling • Idempotent and non-idempotent tasks supported • Custom task-types can be defined and targeted to specific servers • Simple API • Supports runtime cluster changes • No single point of failure • http://nirmataoss.github.io/workflow/
  27. 27. The Future
  28. 28. ZooKeeper 3.5.x Support • Curator will fully support dynamic reconfig: CURATOR-160 • Curator will fully support watcher removal: CURATOR-161 • Investigating if Curator needs to do anything for local sessions: CURATOR-162 • We want to hear from the community if there’s anything else we need to do
  29. 29. Other Stuff • Java 8? • Rework some of the APIs (get rid of KeeperException, e.g.) • More recipes • More committers (could use 1 or 2 more)
  30. 30. Thank you! Q&A Jordan Zimmerman jordan@jordanzimmerman.com @randgalt http://www.linkedin.com/in/jordanzimmerman http://aisallc.com

×