Suppose I am making a game like Minecraft. I have a table on the server that stores the block id, position, attributes and placer. Whenever I want to delete the block I would need to get the block's position so I would need to loop through the whole table and compare each object's position. I'm planning for long term so I imagine looping through the whole table of possibly ten thousand of blocks every second or minute, depending on how frequent a block is broken, would take a toll on the server. Or, I could store the positions of each block in a separate table and send the index of the data in that table to the client so when they need that block to be deleted they could just send it back.....
After typing all this out I just realised. That if lets say there are 10 blocks placed and so there will be 10 positions in the position table. Suppose position index 5 is deleted, that will move position index 6-10 upwards making the position and the actual block data not match. So is there a better method?

** You are now Level 4! **