Database Tuning at Zerodha - India's Largest Stock Broker

Sdílet
Vložit
  • čas přidán 21. 07. 2024
  • Speaker : Satyajit Sarangi @ Zerodha
    Step into the world of Zerodha, India's largest stock broker, and uncover the secrets behind their database tuning and optimization techniques. In this exclusive video, we'll take you through:
    Advanced Database Optimization Techniques: Learn how Zerodha keeps their databases running at peak performance.
    Performance Tuning Insights: Discover real-world strategies and best practices from the experts at Zerodha.
    Scalability Solutions: See how Zerodha handles massive data loads and ensures reliability for millions of users.
    Whether you're a tech enthusiast, database professional, or just curious about the technology driving the stock market, this video is packed with valuable insights and practical tips to help you optimize your own databases.
    Video Credit : ‪@pgconfin‬
    🔔 Subscribe to our channel for more tech tips and tutorials:
    👍 Like us on Facebook : / perfology
    👍 Add us on Instagram: / perfologys
    👍 Follow us on Linkedin: / perfology
    #DatabaseTuning #Zerodha #StockBroker #DatabaseOptimization #TechTutorial #PerformanceTuning #SQL #DatabaseManagement #techinnovation
    Chapters
    00:00 Introduction
    02:59 History Of Postgres usage
    07:54 Managing Big Data
    14:40 Understanding your query planner
    20:38 Replica Master Slave
    29:10 Postgres DB Rights
    31:18 Postgres Learnings
    39:16 Problems with Postgres
  • Věda a technologie

Komentáře • 97

  • @mzs114
    @mzs114 Před 14 dny +103

    Boring tech is usually better in most cases.

  • @pankajsharma-cb4ok
    @pankajsharma-cb4ok Před 13 dny +27

    By listening to it, I got to know that I also faced similar issues and worked on similar set of solutions except materialised views and redis. Happy to see myself on same path...

  • @haloboy777
    @haloboy777 Před 14 dny +24

    Sensible defaults go a long way, but they only work in certain scenarios. I commend their choice of sticking to the basics.
    To be honest, their main engineering efforts are focused on rewriting their codebase, and I believe that is their core competency. I wish more companies allowed frequent rewrites [where needed].

    • @gokukakarot6323
      @gokukakarot6323 Před 14 dny +2

      The rewrites are not unwarranted, they hit scaling requirements and then improve. Their PDF sending blog is a great example. Some engineers would probably start at that, but that's not how things work in real life. Most startups face this problem as well. Starts with java or rails and then splits into microservicrs to scale independently

  • @codingwithsam4992
    @codingwithsam4992 Před 12 dny +10

    These are the guys and their content which people should be consuming and not those of LinkedIn didis

  • @manishmundra7303
    @manishmundra7303 Před 14 dny +17

    No doubt this is a gem talk..
    Though I feel slides could be done much better with the kind of content talk had.. Still learned a lot & cheers to this great talk!!

  • @HardikGajjarTechy
    @HardikGajjarTechy Před 14 dny +6

    PG always shock engineers with new features and flexibility

  • @TheBrahmadath
    @TheBrahmadath Před 10 dny +11

    So finally found the responsible guy for the recent backend glitch..

  • @CoppsMusic
    @CoppsMusic Před 6 dny +2

    Zerodha sits on top of SEBI's tech APIs. God, One has to listen from SEBI on how their orchestration is.

  • @arpanmukherjee4625
    @arpanmukherjee4625 Před 13 dny +6

    I love this guy seriously. Very powerful insights.

  • @nabhamgupta3626
    @nabhamgupta3626 Před 9 dny +1

    Super interesting :) more such insights tech talks🙌

  • @anantmishra6783
    @anantmishra6783 Před 14 dny +4

    hahaha ..good one! Very valid points were made!! x)

  • @nikhilkartha9373
    @nikhilkartha9373 Před dnem

    Understanding this is as exciting as watching paint dry.

  • @TesthelloUser2
    @TesthelloUser2 Před 14 dny +1

    Thank you for the video....

  • @animalempire5513
    @animalempire5513 Před 14 dny +1

    That's good to know😊

  • @samannwaysil4412
    @samannwaysil4412 Před 15 dny +1

    so informative

  • @velloer
    @velloer Před 13 dny +1

    Awesome

  • @battletremor
    @battletremor Před 11 dny

    What does he mean by checkpoints of data backup? As in they dont take entire backup from the start to current? Just a fixed period of time like a month?

  • @mrpam4672
    @mrpam4672 Před 10 dny

    Great!

  • @NIKHILVERMA-xr7lc
    @NIKHILVERMA-xr7lc Před 11 dny

    Good lecture ⭐

  • @ChristieDsouza
    @ChristieDsouza Před 10 dny

    this is gold !☺

  • @BhagyashreeJha-h1v
    @BhagyashreeJha-h1v Před 10 dny

    Boring is good for you. Thanks for sharing the knowledge.

  • @minimilitiapro6528
    @minimilitiapro6528 Před 10 dny

    Great talk , got to learn a lot from this video 😍

  • @godisgreat1000
    @godisgreat1000 Před 11 dny

    why most of the crucial times zerodha app stock responding?

  • @Dipesh_Sol
    @Dipesh_Sol Před 8 dny

    At 37:27, not just the speed of computation, but also the egress cost of transferring all that unnecessary data over the wire to your server from database to perform reduce type computations which can simply be done on the database layer itself.
    And if you find yourself querying such data frequently, then you can have materialised views for it, making it even faster. Finally, if your use case doesn't require the most latest data and is fine with eventual consistency, then you can add a caching layer in front of it, making it blazing fast.

  • @sarbajitnandy9291
    @sarbajitnandy9291 Před 10 dny

    Where does this kind of tech conferences happens?

  • @itshgirish
    @itshgirish Před 13 dny +8

    am i missing something here? Able to bring up db 15-20 TB of fresh copy from S3 in < 2 mins!

  • @VIKASJAIN-no5wt
    @VIKASJAIN-no5wt Před 12 dny +4

    Hope Kamath brothers are paying you well..

  • @an_other_world
    @an_other_world Před 11 dny +2

    frequent code rewrites === frequent down times (if the code changes do not have sufficient coverage and are not properly tested by QA)

  • @abhishekbhardwaj563
    @abhishekbhardwaj563 Před 13 dny +1

    I have always found simple dumb solutions to be the best solution that lasts long without any crash.

  • @ganeshbabu8263
    @ganeshbabu8263 Před 15 dny +9

    I feel dumb

  • @parasharp28
    @parasharp28 Před 11 dny +1

    It all felt like an interesting discussion, but I couldn't understand (won't say I couldn't digest) a few things he mentioned such as - copying terabytes of data and restarting the server under 1 min, letting the database do most of the calculative work, no replica sets (how about contingency planning) and in a way portraying Postgres as an 'all weather database'......seems like a wake up call for myself.....

  • @kparag01
    @kparag01 Před 7 dny +1

    He wants to keep talking light but the audience is damn serious

  • @WaseemAshraf
    @WaseemAshraf Před 13 dny +3

    I don't agree with offloading all of the computations to the database. Yes some computations are good on the database side, but if you are doing some heavy computation that should be on the app side. The benefit of that is you can have multiple backend machines and single database. Using loadbalancer and multiple workers is very easy for backend as compared to having multiple databases.

    • @srikanth1281
      @srikanth1281 Před 12 dny

      Agree, suffered a lot with my analytics platform (mongo) only because we offloaded queries to db. This is even after good amount of denormalisation, huge data means aggregation are consume all the resources.

  • @phoneix24886
    @phoneix24886 Před 2 dny

    A little bit over provisioning when serving 2 million requests with an sla is better than being conservative.

  • @ans_human
    @ans_human Před 9 dny

    Can you share the RCAs on recent failures on the kite platform

  • @premsaivittal2030
    @premsaivittal2030 Před 12 dny

    What's his name ?

  • @sekhar4033
    @sekhar4033 Před 10 dny

    What is his name

  • @J0Y22
    @J0Y22 Před 15 dny +2

    damnn

  • @DK-ox7ze
    @DK-ox7ze Před 12 dny

    No replica? So what happens if the DB crashes and data gets corrupted? You loose customer data!

  • @gyanpattnaik520
    @gyanpattnaik520 Před 5 dny

    Better if you can move to the cloud. AWS or Azure both provide great support.

  • @keerthineeraj7937
    @keerthineeraj7937 Před 9 dny

    What is the name of the person speaking?

  • @gangadharm
    @gangadharm Před 14 dny +6

    Terabytes of data copied to a server and starting in less than a minute? Are you joking? Copying the data from S3 to your local server itself will take the time for terabytes of data. May be I am missing something here.

    • @Vikasptl07
      @Vikasptl07 Před 14 dny +3

      Now you know reason why zerodha is down every now and then. Haha.. but on lighter note i think for trading broker they should have robust backup mechanism in place, s3 to db in minute is a dream scenario but that works for them so who knows

    • @haloboy777
      @haloboy777 Před 14 dny +1

      I think they're not compressing the data. But that is way too wasteful.

    • @satyamverma
      @satyamverma Před 14 dny

      they must be loading that 500 GB of cache data or max 1TB.

    • @v.rajasekar5044
      @v.rajasekar5044 Před 13 dny

      100% not possible even with newer instances with more than 100Gb of network speed. The ones with more than 200Gb of network speed requires special drivers and interfaces. Either he was bluffing or misremembering details. As they were partitioning by month, it could be possible that he is referring to restoring each DB hosting a month/s worth of data in under 2 minutes as that is possible. But data in that single server would be in the range of 1 or 2 TB and even then only with compression it is possible to do it under a minute.

  • @codingwithsam4992
    @codingwithsam4992 Před 12 dny

    I want to connect with you? What is your name?

  • @Anonymous-im2dy
    @Anonymous-im2dy Před 14 dny +4

    1:42 why there is small laugh on mongodb 😂

    • @VarunKeshav
      @VarunKeshav Před 12 dny

      Yeah WTF

    • @VarunKeshav
      @VarunKeshav Před 12 dny

      That one slide of how do we manage big data pretty much throws light on points where MongoDB shines. Maybe they had a poor experience and wrote it off.

    • @shantanukulkarni8883
      @shantanukulkarni8883 Před 11 dny +1

      I guess nosql ism't really suited for a very structured thing like a stock broker database. Others he mentioned like Mysql, Cockroachdb are SQL. It's kind of just like an experimental thing. But maybe he just remembered something funny about it.

  • @viputdBeast
    @viputdBeast Před 2 dny

    Atleast mention the speaker name in video title or in the description

  • @rishiniranjan1746
    @rishiniranjan1746 Před 14 dny

    People say c++ is retarded/obsolete. I dont agree. How you can achieve super-performace, responsiveness, better synchronous result without using a natively driven code.

  • @cringelord511
    @cringelord511 Před 13 dny +1

    is it okay to share your applications db architecture like this?

    • @BashDroid
      @BashDroid Před 12 dny

      yes, because he mentioned that they had made this changes by looking on the specific data that are dealing with and anybody else doing the same thing with there data won't work the same

    • @cringelord511
      @cringelord511 Před 12 dny

      @@BashDroid was this organized by zerodha or postgres?

    • @BashDroid
      @BashDroid Před 11 dny

      none, it's done by the postgres community in india.. pgconf

  • @Grizzler231
    @Grizzler231 Před 11 hodinami

    Bruh he laughed when he said mongo

  • @chandranshpandey1929
    @chandranshpandey1929 Před 13 dny +1

    too much tuning these guys are doing that their app having lot of glitches every now and then

  • @srinivasreddyt9555
    @srinivasreddyt9555 Před 4 dny

    at 26:08, you realize that it is a mallu asking questions.

  • @kamleshgorasiya3854
    @kamleshgorasiya3854 Před 12 dny

    Can share RCA for Issue we are facing since last two months. I am Software engineer and also Customer of Zerodha. I want to know why other broker are runing fine and zerodha not.

    • @Desh-o7b
      @Desh-o7b Před 11 dny

      no you are not, because if you were you would've asked this question from your team.

  • @TeluguAbbi
    @TeluguAbbi Před 5 dny

    31:19 Postgres Learnings

  • @ShaileshGuptaKoolwallost

    DB backup, restoring everyday. postgres as caching layer - it seems like they just want to rely on one thing only which is absurd. Seems like they are trying to find solution to problem which shouldn't have been problem as such. Totally absurd, they are ok with everything running, donot want to do things at higher scale. How can you be ok with such kind of system.

  • @deva8496
    @deva8496 Před 12 dny

    Sorry you are not Robinhood of India in trading. Robinhood offers research and lot of reasearch and recommendations with lot of features. But you are one of best discount broker to save money of swing traders

    • @thiccboi6211
      @thiccboi6211 Před 11 dny

      It was a simple comparison for understanding the product and its domain. Its not an official statement of the company

  • @MrDasamitkumar
    @MrDasamitkumar Před 14 dny +2

    15tb in 2 mins !!! Really?? How ??

    • @v.rajasekar5044
      @v.rajasekar5044 Před 13 dny +2

      100% not possible even with newer instances with more than 100Gb of network speed. either he was bluffing or misremembering details. As they were partitioning by month, it could be possible that he is referring to restoring each DB hosting a month/s worth of data in under 2 minutes as that is possible. But data in that single server would be in the range of 1 or 2 TB only.

    • @phoneix24886
      @phoneix24886 Před 2 dny

      When did he say that?

  • @randomvideos9541
    @randomvideos9541 Před 13 dny

    Ku6 bhi?? Pehle jo loss karwaye ho uske bare me video nikalo.

  • @saralk18
    @saralk18 Před 2 dny

    It works... until it doesn't

  • @yashvarshney8651
    @yashvarshney8651 Před 15 dny +7

    gold

  • @GagandeepSingh-op8mb
    @GagandeepSingh-op8mb Před 9 dny

    Zerodha doesn't have replicas and doesn't have slaves. All they have is a sorry when they server or db crashes. People lose money, and they think replicas are not important.

  • @AyushKumar-ij2xd
    @AyushKumar-ij2xd Před 10 dny

    overloading postgres is not helpful and dont do it specially when you have no concept of nodes . postgres servers are not free even. if you are not able to write code for sum/avg for close to same speed as postgres service then you need better engineering. Architectures become complicated when you have distribution/SOA . Either this is half knowledge served or this platform is running on hopes and dreams. And also S3 is not that fast

  • @abhijithganesh2064
    @abhijithganesh2064 Před 10 dny

    So much talk yet no stable apps😂

  • @harshpathak8029
    @harshpathak8029 Před 13 dny

    I think it is no longer the largest stock broker. Groww over took it since oct 2023

    • @SirShashanksonusahu
      @SirShashanksonusahu Před 13 dny +3

      Groww is stupid, just because of marketing it is gaining market share

    • @yuganderkrishansingh3733
      @yuganderkrishansingh3733 Před 13 dny

      @@SirShashanksonusahu But that doesn't change the fact that they are the largest at present.

  • @TheHardikupadhyay87
    @TheHardikupadhyay87 Před 9 dny

    i watched this video in 1.5x still felt slow and boring.

  • @krishankanhaya_
    @krishankanhaya_ Před 8 dny +1

    Caching is the answer to all of your questions in this talk 😂😂

    • @tanaygupta2009
      @tanaygupta2009 Před 6 dny

      Caching might be a very bad idea in case of Trading apps.

    • @krishankanhaya_
      @krishankanhaya_ Před 6 dny

      @@tanaygupta2009 i may be agree but how

  • @asif-ali
    @asif-ali Před 10 dny

    Aaaaa.....aaaaaa.....aaaaaa......aaaaaaa..
    Amm emmm aaaaaa aaaaaa... What that.... Silly

  • @prahladb5019
    @prahladb5019 Před 11 dny

    now we understood why glitches are happening frequently in Zerodha..

  • @ravishmahajan9314
    @ravishmahajan9314 Před 12 dny +2

    Only hardcore techies or IT professionals will find this video a Gem💎 .
    Well in the era of the Graph database, MongoDB, NOSQL etc. the legend in the video is talking basically about SQL database.😂 ❤
    Yes he is definitely correct. With Oracle as an enterprise paid database, we have the king of open source database called Postgres, a boon for startups.
    I am really surprised, zerodha with millions of customers uses Postgres..... ❤
    I thought they were using some high tech AWS virtual nosql databases 😂

  • @ravikanth6178
    @ravikanth6178 Před 13 dny +1

    Just out of ignorance.. I think snow flake willl be a good choice? Can anyone comment

  • @user-hh5vg9st1q
    @user-hh5vg9st1q Před 12 dny

    This is feels like a 3rd year B-tech class, not a techie presentation. The presented points can be found across multiple b-tech computer science books. May be he is not a tech person thats why he didnt gave the examples on tuning.

  • @vaibhav-bhavsar
    @vaibhav-bhavsar Před 10 dny

    What is his name?