funki
funki
Explore posts from servers
ATApache TinkerPop
Created by funki on 2/12/2024 in #questions
Which database should i use for my DJ set planning software?
Hi, i want to develop a software that lets DJs plan a set (i.e. playlist) and i'm wondering if graph databases are the right way and if yes, which one to pick. The workflow is that the software automatically reads all tracks from the DJ software on the computer and the DJ has to tell the software which tracks mix well together. These links are called "transitions" and contain some data like difficulty grade, quality rating and notes. The software should then assist DJs when selecting tracks (or specifically the next track) for a playlist by considering the "non-repeating transition depth" of a given track. In an RDBMS (SQL) i'd need to use WITH RECURSIVE to accomplish something like this. There should also be query options for considering the rating of the transitions, i.e. sort suggested next tracks by "most tracks to follow up with" (excluding any tracks already in the playlist!) or sort them by highest average rating with at least X number of tracks in a valid transition chain. I hope i could illustrate what i'm looking for. I'm a web developer and want to build this project using Node.js as the runtime and writing the code in TypeScript, but i can live without type helpers (like Prisma generates for example). I'm also not afraid of writing raw queries like i write raw SQL occasionally. A query builder is nice but not required. Also there should be a simple docker container to set up the database for development unless it's a serverless DB like SQLite. Should i be using a graph database for this project or should i stick with RDBMS / SQL? If i should go with a graph database, which one? Thank you for any advice!
5 replies