7 Powerful Databases Python Developers Should Know

Поделиться
HTML-код
  • Опубликовано: 6 янв 2025

Комментарии • 131

  • @ArjanCodes
    @ArjanCodes  3 месяца назад

    ✅ Get the FREE Software Architecture Checklist, a guide for building robust, scalable software systems: arjan.codes/checklist.

  • @vikaspoddar001
    @vikaspoddar001 3 месяца назад +77

    Hey @ArjanCodes, can you create video series in python instrumentation for observability i.e. metrics, log and trace at (application level, container &pod level and inter microservice )
    I love watching your video

  • @jeremywhetzel4007
    @jeremywhetzel4007 3 месяца назад +66

    I'd love to see a deeper dive on DuckDB!

  • @rilauats
    @rilauats 2 месяца назад +1

    THX, Arjan. I know several of these databases. My first code written as part of a job was way back in 1985, it's been a while.
    I remember Oracle 5 struggling on PC server to join 4 tables containing almost no rows.
    I remember myself proposing relational DB will be inherently slow and die off quickly before ever making market impact.
    Technology advances, the world changes, and we all learn.
    I enjoyed your quick tour de chambre of databases. Good way to expand everybody's view on what a database really is = a technology to efficiently store and access data.
    Keep up your good work!

  • @MagnusAnand
    @MagnusAnand 3 месяца назад +130

    Boring is good.

    • @Chris-rm1pn
      @Chris-rm1pn 3 месяца назад +2

      Came to say this 🫡

    • @zknarc
      @zknarc 3 месяца назад +3

      This. Just about everyone can use Postgres and MySQL.

    • @TheEvertw
      @TheEvertw 3 месяца назад +2

      If it ain't broke, don't fix it. But there are uses for these specialized db's.

    • @AhmedIsam
      @AhmedIsam 3 месяца назад +1

      @@TheEvertw but the selling is wrong, you don't use them because they are cool.

    • @tbtitans21
      @tbtitans21 3 месяца назад +3

      Yep this, boring is generally stable and reliable. So keep your sanity

  • @coreyms
    @coreyms 3 месяца назад +22

    I’m convinced… mission critical ChatGPT data storage, here I come!

    • @anantharjun9662
      @anantharjun9662 3 месяца назад

      I too ✨

    • @suvidani
      @suvidani 3 месяца назад

      We have to make sure all those shiny Nvidia cards are put into good use!

    • @touchbase-e9k
      @touchbase-e9k 3 месяца назад +1

      I know python because of you Corey. Thanks

  • @thesupercoach
    @thesupercoach 3 месяца назад +23

    You're going to need better than that to convince me not to use Postgres.

  • @ademhilmibozkurt7085
    @ademhilmibozkurt7085 Месяц назад

    Your contents are awesome! Please Arjan, make a large scale real life program with Python. This could include database processes, file operations, performance improvement, computing and web. I will write this comment every video of you I watch :). Greetings

  • @AA-rd6nm
    @AA-rd6nm 2 месяца назад

    Excellent.. You are always to the point, which I like most...

  • @alansnyder8448
    @alansnyder8448 3 месяца назад +3

    I think a good set of videos is to start with the topic. "geospatial databases" and then talk about the "geospatial" features in each database. (i.e. Redis, Tile38, PostgreSQL, and even DynamoDB with an extension) and then compare databases against each other, to help us decide at what point so we use a generalist database (Redis / PostgreSQL) with a geospatial feature, versus getting a specialized database like Tile38.
    I mention geo-spatial since that is my biggest need, but a network database is right behind that.

  • @johnvillalovos
    @johnvillalovos 3 месяца назад +16

    As a note. "J" is pronounced as "jay". So I would think Neo4j is pronounced, neo-four-jay. The letter "G" is pronounced as "gee"

    • @oncedidactic
      @oncedidactic 3 месяца назад

      Differs in other languages ;)

    • @k98killer
      @k98killer 3 месяца назад +2

      I learned a few months ago that they are exactly the opposite way around in French. 🤷‍♂️

    • @1DwtEaUn
      @1DwtEaUn 3 месяца назад +1

      C is redundant in American and English, soft C is an "ess" aka S, hard C is "kay" aka K

  • @michaelmarinos
    @michaelmarinos 2 месяца назад

    Great Video Thank you ! i am using PostgreSQL (with GIS extension) and Redis for cache. I d love to see comparison DuckDB vs SQL based

  • @sangeeth6655
    @sangeeth6655 3 месяца назад +1

    There seems to be some issue with signing up for your newsletter and guides. I tried a few times and it is not working. Can anyone else confirm?

  • @sergiocontreras7563
    @sergiocontreras7563 3 месяца назад

    Thanks Arjan Influxdb was exactly what I was looking for my testing analytics… great episode 👏👏👏

  • @sephirothu1290
    @sephirothu1290 3 месяца назад

    @ArjanCodes, man thank you so much for these contents you upload for us, very helpful, well described, and when you explain things, you make them look very easy, please keep up the amazing work

  • @hahue4742
    @hahue4742 3 месяца назад +2

    Thanks for this Video. I always like content that makes you reflect about architecture decisions. Another Database that seems interesting to me is ArangoDB

  • @Jugular1st
    @Jugular1st 3 месяца назад +11

    Yes to DuckDB, but for me its about how does it differ from what can be done with Polars.

    • @zknarc
      @zknarc 3 месяца назад +2

      Spills to disk very well when you have bigger than memory data, not a strength of Polars. You can use all sorts of different languages with it, not just Python. Lots of people know SQL. It is a db with db features like constraints and indexes.

    • @oncedidactic
      @oncedidactic 3 месяца назад

      SQL and joins across data sources

  • @mikekaspari1357
    @mikekaspari1357 3 месяца назад +1

    I'm very interested in more DuckDB content.

  • @thomasbooij6239
    @thomasbooij6239 3 месяца назад

    Nice video Arjan. I think session management with openAI is already implemented through the newish OpenAI Assistants API. Just use the same assistant with the same thread ID, and enjoy your key value store!

  • @edgeeffect
    @edgeeffect 3 месяца назад +4

    Influx DB looks VERY INTERESTING! We use RRD for this function and it has the most awful, clunky API you can possibly imagine. I think learning Flux Query Language would be easy-peasy-lemon-squeezy compared to navigating the tortuous documentation of RRD. :)

  • @mahdikazemi762
    @mahdikazemi762 3 месяца назад

    I can't wait for going deeper into the duckdb

  • @radum945
    @radum945 3 месяца назад

    what extension do you use for Python in vsc?

  • @higiniofuentes2551
    @higiniofuentes2551 3 месяца назад +1

    Thank you for this very useful video!

    • @ArjanCodes
      @ArjanCodes  3 месяца назад +1

      Glad you enjoyed it!

  • @김주영-x7w4s
    @김주영-x7w4s 3 месяца назад

    PostGIS vs Tile38
    can i check benchmark about that?

  • @jamess1787
    @jamess1787 3 месяца назад

    I have a project that coukd benefit from duckdb i think, data isnt important enough for long term storage, but good to see at a glance as a technician or team of technicians. Perfect

  • @AlanRJones
    @AlanRJones 3 месяца назад

    Fantastic video, both educational and wise

  • @Mutombo71
    @Mutombo71 3 месяца назад

    Is there something like gdbm or newer available? Focus is on newer.

  • @fabiolean
    @fabiolean 3 месяца назад +1

    I would love to see a video about non-typical SQLite use cases. It's so flexible and lightweight and I feel like people are sleeping on it just because it's not for a client/server role. I started using it as a local K:V store because I didn't wanna bother with something like redis, and I'm quite impressed.

    • @ArjanCodes
      @ArjanCodes  3 месяца назад

      Using SQLite for caching is a really great use case!

  • @modest_supreme
    @modest_supreme 3 месяца назад +1

    I would be interested in a deeper dive on DuckDB.

  • @shaddwatson1833
    @shaddwatson1833 3 месяца назад

    @ArjanCodes - Would you mind exploring Mojo more, for those who are looking to harness the power and speed it can provide for Python users? There are many topics related like ownership, life cycles, traits, and pointers which are foreign concepts to many of us.

  • @preadaptation
    @preadaptation 3 месяца назад

    Thanks

  • @NostraDavid2
    @NostraDavid2 3 месяца назад +2

    More about DuckDB - maybe a DuckDB vs Polars video? It feels their features heavily overlap, but I'm not sure.

    • @Michallote
      @Michallote 3 месяца назад

      I don't like the implicit nature of duckDB. Constantly grabs objects that exist in a local scope. Polars on the other hand is much more stable because it is very explicit. I have had to fix data scientist's code many times because they didnt realise secondary effects of many duck db operations. Also duck db absolutely messes up the linter and static type checking tools.

  • @IAmNigHtMaReTR
    @IAmNigHtMaReTR 3 месяца назад +1

    18:29 no, only MongoDB Atlas supports vector similarity search

  • @cabrel-n92
    @cabrel-n92 2 месяца назад

    Hope you will soon prepare a tutorial on uv package manager

  • @danjolly9505
    @danjolly9505 3 месяца назад

    duckdb is one of my new favorites. it takes the best of data frames and sql and mashes it together. Its awesome.

  • @oncedidactic
    @oncedidactic 3 месяца назад

    Loving duckdb for the simplicity of SQL based analytics on heterogeneous data sources

  • @djtoon8412
    @djtoon8412 3 месяца назад

    I have never used guess it time to give it a try, can we get your views on using typesense in python projects using fastapi or postgres full text search.

  • @tsando1982
    @tsando1982 3 месяца назад

    Postgres x TimeScaleDB vs Influx ?

  • @rantallion-hr5xp
    @rantallion-hr5xp 3 месяца назад

    What about Clickhouse?

  • @joaopedrorocha5693
    @joaopedrorocha5693 3 месяца назад +1

    I don't understand why people say duckdb is cool ... feels just like sqlite but with the flexibility to work directly over dataframes or files ... but why would i use that instead of just loading the files with some specialized dataframe package like pandas, polars or vaex?
    It would be cool to see a video on it!

    • @gr8838
      @gr8838 3 месяца назад +1

      Can be quicker to than Polars and definitely is quicker than pandas.
      It is really useful when you work with team that are sql heavy/mixed and where there is a lot of legacy sql code to integrate.
      It's also lighter to setup (I sometime just use the cli or the exe).
      You can also take creative approach to your pipeline and apply the transformation that are clearer in sql using DuckDB and then continue using your dataframe package. I'm not saying it's a good idea but I did it for a few transformation and it worked really well.
      I feel like for some bigger than ram dataset it can be better than Polars and also is more mature for the moment if that makes sense.
      I also find that the "ergonomics" of DuckDB is really where it shine:DuckDB is the easiest way to use sql from python IMO not saying that other tools are difficult but DuckDB is dead simple.

    • @zknarc
      @zknarc 3 месяца назад +1

      Spills to disk very well when you have bigger than memory data, not a strength of Polars. You can use all sorts of different languages with it, not just Python. Lots of people know SQL. It is a db with db features like constraints and indexes rather than another dataframe lib.

    • @joaopedrorocha5693
      @joaopedrorocha5693 3 месяца назад

      Cool! Thanks for the answers! Will take a closer look at it.

    • @oncedidactic
      @oncedidactic 3 месяца назад

      I am using in prod right now as the key piece in a data lakehouse architecture for analytics. It’s soooo nice to have a one stop shop for writing SQL queries that pull from parquet, csv, a few live databases, with zero friction. And it’s super fast for analytical queries on medium sized data.
      You could do this with an ORM on top of a bunch of Python connectors and leverage polars or whatnot too, but it just feels simple clean and fast to have it in duckdb

  • @Heisenberg2097
    @Heisenberg2097 3 месяца назад

    Looking at the speed increase of SSD esp. over the last four years... consider using a DB at all.

  • @kellymoses8566
    @kellymoses8566 3 месяца назад +2

    Neo4j is just fun to use.

  • @BlueIced256
    @BlueIced256 3 месяца назад

    Why Redis?! I have it already replaced with KeyDB.

    • @BlueIced256
      @BlueIced256 3 месяца назад +1

      BTW, Postgresql is getting a vector engine too...

    • @southpole76
      @southpole76 3 месяца назад +2

      curious why not Valkey?

  • @djordjen9424
    @djordjen9424 3 месяца назад

    What about PocketDB?

  • @pdecker
    @pdecker 10 дней назад

    DuckDB video +1 please

  • @d3stinYwOw
    @d3stinYwOw 3 месяца назад

    CockroachDB is also interesting thing to check :)

  • @hipertracker
    @hipertracker 2 месяца назад

    What about ArangoDB? a hybrid DB, RDBMS+Graph,Document, better than Neo4j IMHO. There is also one more interesting UnrealDB

  • @ondskabenselv
    @ondskabenselv 3 месяца назад +2

    I guess Postgres can do most of these tasks using extensions of 😅

  • @kopytko998
    @kopytko998 3 месяца назад

    Please create series on duckdb.

  • @tiolv1174
    @tiolv1174 3 месяца назад

    DuckDB is really very useful.

  • @kellymoses8566
    @kellymoses8566 3 месяца назад

    Neo4j has vector support.

  • @rochacbruno
    @rochacbruno 3 месяца назад

    OrientDB is also very interesting

  • @Dara-lj8rk
    @Dara-lj8rk 3 месяца назад

    I'll watch your duckdb video when done

  • @matthewcane0
    @matthewcane0 3 месяца назад

    What about DNS as a database!

  • @EngineerNick
    @EngineerNick 3 месяца назад +1

    DuckDB is sooooo good

  • @YouBoredom
    @YouBoredom 3 месяца назад

    Flux is being deprecated for influxdb 3 fyi

    • @ArjanCodes
      @ArjanCodes  3 месяца назад

      True, but I wanted to stick to open source here, and that is still on version 2.

  • @andrewmenshicov2696
    @andrewmenshicov2696 3 месяца назад

    me hearing Arjan pronouncing Milvus as Milfus:

  • @seanmills3502
    @seanmills3502 3 месяца назад

    The person who invented DuckDB is a quack. 🦆

  • @adamfarquhar1279
    @adamfarquhar1279 3 месяца назад

    These days, Postgres is very very good. You need a good reason not to use it. It is free, mature, scales, has good IDE support, good python support, extensions for everything, and great Docker packages. And if you want third-party support, it is easy to find at every level.

  • @VolodymyrMoon
    @VolodymyrMoon 3 месяца назад

    RocksDB?

  • @fabrizio.dipietro
    @fabrizio.dipietro 3 месяца назад

    Duckdb, pocketdb

  • @nuurnwui
    @nuurnwui 3 месяца назад

    What about xml databases?

  • @NostraDavid2
    @NostraDavid2 3 месяца назад

    RE: Rediculous DBs - did you know Python has a built-in DB? No, not SQLite! It's called dbm. It's not even relational - it can just store dicts for you! 😂

  • @jamesmiller2521
    @jamesmiller2521 3 месяца назад

    sqlite is all you need

  • @bnssoftware3292
    @bnssoftware3292 3 месяца назад

    I'll stick with "boring" postgres

  • @ErikS-
    @ErikS- 3 месяца назад

    "new query language like flux"
    - naaaaah... NO!

  • @damonguzman
    @damonguzman 3 месяца назад

    Did he really call it “Readis?”

    • @ArjanCodes
      @ArjanCodes  3 месяца назад

      Yes. I was referring to only half of the database interface. The other half is called Writis.

  • @digiryde
    @digiryde 3 месяца назад +3

    Keep it simple... CSV? 🤣

  • @kittentikkamasala69
    @kittentikkamasala69 3 месяца назад

    Was that an official endorsement of hitting interns with mechanical keyboards??! Watch out, you'll get cancelled with talk like that!
    All joking apart, this was very timely and useful information for me. Thanks!

  • @thghtfl
    @thghtfl 3 месяца назад

    love your boozy demoes

  • @jamtart22
    @jamtart22 3 месяца назад

    Don't use any of these. Just use Postgres

  • @digiryde
    @digiryde 3 месяца назад

    Database education and Making Interns cry... LMAO!

  • @igoryurchenko559
    @igoryurchenko559 3 месяца назад

    WTF? Who cares what's boring for you guys if they do their work well...

  • @bernardlemay8563
    @bernardlemay8563 3 месяца назад

    Boring is not a valid argument.