Data Engineering Podcast

Make Sure Your Records Are Reliable With The BookKeeper Distributed Storage Layer


Listen Later

Summary

The way to build maintainable software and systems is through composition of individual pieces. By making those pieces high quality and flexible they can be used in surprising ways that the original creators couldn’t have imagined. One such component that has gone above and beyond its originally envisioned use case is BookKeeper, a distributed storage system that is optimized for durability and speed. In this episode Matteo Merli shares the story behind the creation of BookKeeper, the various ways that it is being used today, and the architectural aspects that make it such a strong building block for projects such as Pulsar. He also shares some of the other interesting systems that have been built on top of it and an amusing war story of running it at scale in its early years.

Announcements
  • Hello and welcome to the Data Engineering Podcast, the show about modern data management
  • When you’re ready to build your next pipeline, or want to test out the projects you hear about on the show, you’ll need somewhere to deploy it, so check out our friends at Linode. With their managed Kubernetes platform it’s now even easier to deploy and scale your workflows, or try out the latest Helm charts from tools like Pulsar and Pachyderm. With simple pricing, fast networking, object storage, and worldwide data centers, you’ve got everything you need to run a bulletproof data platform. Go to dataengineeringpodcast.com/linode today and get a $100 credit to try out a Kubernetes cluster of your own. And don’t forget to thank them for their continued support of this show!
  • RudderStack’s smart customer data pipeline is warehouse-first. It builds your customer data warehouse and your identity graph on your data warehouse, with support for Snowflake, Google BigQuery, Amazon Redshift, and more. Their SDKs and plugins make event streaming easy, and their integrations with cloud applications like Salesforce and ZenDesk help you go beyond event streaming. With RudderStack you can use all of your customer data to answer more difficult questions and then send those insights to your whole customer data stack. Sign up free at dataengineeringpodcast.com/rudder today.
  • We’ve all been asked to help with an ad-hoc request for data by the sales and marketing team. Then it becomes a critical report that they need updated every week or every day. Then what do you do? Send a CSV via email? Write some Python scripts to automate it? But what about incremental sync, API quotas, error handling, and all of the other details that eat up your time? Today, there is a better way. With Census, just write SQL or plug in your dbt models and start syncing your cloud warehouse to SaaS applications like Salesforce, Marketo, Hubspot, and many more. Go to dataengineeringpodcast.com/census today to get a free 14-day trial.
  • Your host is Tobias Macey and today I’m interviewing Matteo Merli about Apache BookKeeper, a scalable, fault-tolerant, and low-latency storage service optimized for real-time workloads
  • Interview
    • Introduction
    • How did you get involved in the area of data management?
    • Can you describe what BookKeeper is and the story behind it?
    • What are the most notable features/capabilities of BookKeeper?
    • What are some of the ways that BookKeeper is being used?
    • How has your work on Pulsar influenced the features and product direction of BookKeeper?
    • Can you describe the architecture of a BookKeeper cluster?
      • How have the design and goals of BookKeeper changed or evolved over time?
      • What is the impact of record-oriented storage on data distribution/allocation within the cluster when working with variable record sizes?
      • What are some of the operational considerations that users should be aware of?
      • What are some of the most interesting/compelling features from your perspective?
      • What are some of the most often overlooked or misunderstood capabilities of BookKeeper?
      • What are the most interesting, innovative, or unexpected ways that you have seen BookKeeper used?
      • What are the most interesting, unexpected, or challenging lessons that you have learned while working on BookKeeper?
      • When is BookKeeper the wrong choice?
      • What do you have planned for the future of BookKeeper?
      • Contact Info
        • LinkedIn
        • @merlimat on Twitter
        • merlimat on GitHub
        • Parting Question
          • From your perspective, what is the biggest gap in the tooling or technology for data management today?
          • Closing Announcements
            • Thank you for listening! Don’t forget to check out our other show, Podcast.__init__ to learn about the Python language, its community, and the innovative ways it is being used.
            • Visit the site to subscribe to the show, sign up for the mailing list, and read the show notes.
            • If you’ve learned something or tried out a project from the show then tell us about it! Email [email protected]) with your story.
            • To help other people find the show please leave a review on iTunes and tell your friends and co-workers
            • Join the community in the new Zulip chat workspace at dataengineeringpodcast.com/chat
            • Links
              • Apache BookKeeper
              • Apache Pulsar
                • Podcast Episode
                • StreamNative
                  • Podcast Episode
                  • Hadoop NameNode
                  • Apache Zookeeper
                    • Podcast Episode
                    • ActiveMQ
                    • Write Ahead Log (WAL)
                    • BookKeeper Architecture
                    • RocksDB
                    • LSM == Log-Structured Merge-Tree
                    • RAID Controller
                    • Pravega
                      • Podcast Episode
                      • BookKeeper etcd Metadata Storage
                      • LevelDB
                      • Ceph
                        • Podcast Episode
                        • Direct IO
                        • Page Cache
                        • The intro and outro music is from The Hug by The Freak Fandango Orchestra / CC BY-SA

                          Support Data Engineering Podcast

                          ...more
                          View all episodesView all episodes
                          Download on the App Store

                          Data Engineering PodcastBy Tobias Macey

                          • 4.6
                          • 4.6
                          • 4.6
                          • 4.6
                          • 4.6

                          4.6

                          135 ratings


                          More shows like Data Engineering Podcast

                          View all
                          Software Engineering Radio - the podcast for professional software developers by se-radio@computer.org

                          Software Engineering Radio - the podcast for professional software developers

                          273 Listeners

                          The Changelog: Software Development, Open Source by Changelog Media

                          The Changelog: Software Development, Open Source

                          283 Listeners

                          The Cloudcast by Massive Studios

                          The Cloudcast

                          152 Listeners

                          Thoughtworks Technology Podcast by Thoughtworks

                          Thoughtworks Technology Podcast

                          42 Listeners

                          Data Skeptic by Kyle Polich

                          Data Skeptic

                          481 Listeners

                          Talk Python To Me by Michael Kennedy

                          Talk Python To Me

                          592 Listeners

                          Software Engineering Daily by Software Engineering Daily

                          Software Engineering Daily

                          624 Listeners

                          The TWIML AI Podcast (formerly This Week in Machine Learning & Artificial Intelligence) by Sam Charrington

                          The TWIML AI Podcast (formerly This Week in Machine Learning & Artificial Intelligence)

                          443 Listeners

                          Super Data Science: ML & AI Podcast with Jon Krohn by Jon Krohn

                          Super Data Science: ML & AI Podcast with Jon Krohn

                          296 Listeners

                          Python Bytes by Michael Kennedy and Brian Okken

                          Python Bytes

                          214 Listeners

                          DataFramed by DataCamp

                          DataFramed

                          266 Listeners

                          Practical AI by Practical AI LLC

                          Practical AI

                          189 Listeners

                          The Stack Overflow Podcast by The Stack Overflow Podcast

                          The Stack Overflow Podcast

                          64 Listeners

                          The Real Python Podcast by Real Python

                          The Real Python Podcast

                          141 Listeners

                          Latent Space: The AI Engineer Podcast by swyx + Alessio

                          Latent Space: The AI Engineer Podcast

                          77 Listeners