Explaination
I'm trying to make a system where players can have custom individual names. It's a huge hassle that at first doesn't seem necessary, because players can use their own usernames, right? But here, I want to be able to later on let players have multiple characters that have individual Identities(including their factions/relations/et cetera).
So at first - I was pretty much going to do something like this.
Example 1
NameCollection = {"Teemo","Teemo2"}
DataStore = game:GetService("DataStoreService"):GetDataStore("CharacterNames")
for index,value in pairs (NameCollection) do
DataStore:UpdateAsync(index, function() return value end)
end
Which I just scrapped after a couple minutes of the idea because if players were to have multiple characters, a table would be GIGANTIC. I'm mostly scared of how inefficient it would be.
So what I'm asking mostly is - how would I save a list of players, which is saved across a datastore that can be accessed by every server? It can be a table-related method, but If anyone has any ideas please say!

2 comments
The simplest way would be to just save a table of each players different names, say 1 player has 5 names, and another player has 10, save those names to the player, but I don't think their is an easy way to give each player multiple names and make sure they are not taken by another player
This gave me a good Idea.