I am working on a project that will have millions of primary keys (user IDs). Every user will have a list of attributes of unknown length (between 1 and 100 but generally < 5 in nearly all cases with ~1000 total possible attributes). This list needs to be query-able though to find users with the same attributes.
How would I accomplish this? One method seems to be to create a unique table for every user but this means I would have a LOT of tables which seems wrong. Other method used seems to be storing a list as a blob but this would make querying difficult.
I would prefer to use python but if my rather lightweight server struggles I may switch to c++. The only sql DB I have used so far is SQLite but this may not be ideal as it cannot handle enough commits per second (though I can queue).
What DB should I use and how should I do this properly?
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…