118M Queries per Second on Neki

(planetscale.com)

23 points | by joshmgross 1 hour ago

6 comments

  • danbruc 5 minutes ago
    87.3 % served from cache. Does that mean it returned a result existing in the cache because the very same query was executed before? Probably still a relevant result, if you have to process millions of queries every second, it seems not unlikely that you will see a lot of repeated queries. But at that point you are measuring cache performance more than query performance. But unless you run some standardized query benchmark, a single queries per second number is not that informative anyway because query complexity and therefore execution time can span many others of magnitude. Looking up a name by ID and aggregating across a billion rows from seventeen tables joined together are both a single query.
  • AdamProut 28 minutes ago
    I'm curious why the test needed so many router hosts:

    512 shards, each with one Postgres primary each on an r8g.16xlarge

    480 Neki routers, each on its own 8xlarge instance

    That's ~250K queries/sec per router which seems lowish for this type of workload? The routers won't be doing very much (parse query, route it to proper shard?).

  • samlambert 52 minutes ago
    It cost $250,000 to do this run but it feels worth it.
    • jeffbee 22 minutes ago
      That's roughly 250x more than it would cost to perform this stunt using on-demand Cloud Bigtable, if my math checks out (~1150 nodes @ 85¢/hour for 1h).
    • handfuloflight 48 minutes ago
      I did not know men could build such things.
    • whalesalad 40 minutes ago
      I estimated the cluster to achieve this was ~$3-4k per-hour. I am thinking there is a typo on the r8g.16xlarge and they are actually r8gd.16xlarge (notice the d) which comes with directly attached nvme disks.
      • rcrowley 2 minutes ago
        It felt rude to take so many r8gd instances away from our customers who really love those (and i8g and i8ge).
      • svuiv 28 minutes ago
        We used r8g.16xlarge instances with EBS disks, no nvmes
  • znpy 47 minutes ago
    If this is closed source then i have zero interest in it.
    • jjice 6 minutes ago
      I believe multigress is the similarly aged open equivalent from Supabase. Haven't used it myself and don't know what the differences are in usability, but I'm a bit more interested in that since it's open.
    • noir_lord 10 minutes ago
      Someone posted a twitch conversation yesterday about this, I poked around on the page realised there was no open source version and noped out immediately.

      I'm sure it's a great product (it seems like planetscale do good engineering and the folks I know who use them seem fine with it) but I don't do vendor lock-in as a service personally, I'll use whatever employer uses because that's the deal but for personal stuff, well this isn't designed for that really, wrong order of magnitude on scaling.

  • jeffbee 1 hour ago
    The fact that you can just pay to scale out point reads is not news to anyone.
    • AdamProut 30 minutes ago
      yeah, this is a definitely a "best case" workload for a sharded database. Single row reads on the key used to shard with no hotspots (no shard to shard network traffic at all).