• Mbourgon everywhere@lemmy.world
    link
    fedilink
    arrow-up
    4
    ·
    11 months ago

    So they hit the production database or do you have it mirrored or replicated? And when everybody is running their queries overnight because the “database is slow”… not knowing SARGability? Yes, there’s a place, but “simple queries” are rarely.

    • hpca01@programming.dev
      link
      fedilink
      arrow-up
      4
      ·
      11 months ago

      For my team I have a mirror that I set up and have a bunch of ELT jobs that load the deltas every night. Queries don’t ever run in PROD, if someone needs a specific view or more data, they go through me and my team. I also set timeouts, precisely to avoid the ahole from using Select * from. Also have a bunch of reports I created to see who is running what queries and timings. We review them quarterly or when someone complains or when a project that needs our data asks us for access.

      We also have an autogenerated data dictionary for folks to use as well. Generally I don’t entertain any “it’s slow” complaints unless they go through the documentation, provide their exact query and write what it is they’re trying to get.

      My assumption was that OPs shop does the bare minimum in terms of making sure they don’t shoot themselves in the foot.