On the contrary, this cause duplication on finding data centers. You still have to de-duplicate them. If there is no site drawn, only individual buildings, this becomes impossible. `telecom=data_center` is conceptually one facility. 
Your example still doesn't qualify them. Does it matter if there's a separate building for the internet connection or control room? Is it "part" of the data center? Also for size, you want to count floor area, not number of individual structures.
It's very common flaw to specify such `building=` to be one-to-one with the facility. This won't do what you want, because people will still tag everything inside a `telecom=data_center` as `building=data_center` blindly. I recently discussed `building=fire_station` , and it may be used on all buildings, not only the main fire truck depot building with duty station. 
It is a very common documentation shortcoming to require combination with `building=` . `man_made=works` was once such case, later corrected to be used on the entire site. 
Problems with `building=data_center`:
https://taghistory.raifer.tech/?#***/building/data_center 
1. Significant use come from mass modifications 
2. Only ~350 in 2020 
3. Relatively small number for a  `building=` 
4. Continued issue with British vs American English 
I find it prudent to exercise caution on creating more `building=` . 
Relatedly, it already won't work for  `telecom=exchange` . `building=exchange` is meaningless. Creating `=*_exchange` for `=telephone_exchange` etc is unscalable. 