Question: Why isn't metafield data referenced by a primary key?

I may be mixing up my lingo; it’s been a solid chunk of time since I’ve done db dev.

Why is there a bulk editor for updating metafield values when a value is simply modified? Shouldn’t it be a simple value update then save while the system references the key? It seems to be referencing the value and gets confused when it changes.

Example metafield:

Name: Camera

Values: Nikon, Canon, Fuji

I apply these to products. I want to change Nikon to Sony. Shopify result: “WHAT HAPPENED?”. I have to go through all products that were assigned Nikon and manually change them to Sony.

Expect: The value changes and is immediately reflected on the products using this value. Where there was Nikon before I should now see Sony.

What is up with the bad behavior?