I am new in microservices architecture and I am a bit confused about designing relations between data of each Microservice. So I think about design as its on picture bellow:
So my question is:
Is it good to create separate relations service that will connect id of documents or maybe there is another way to solve it?
You seem to be under the impression that microservices are the application layer over the data layer, and so, you need to slap microservices on individual database tables.
But, microservices are implementation of domain driven design. Each microservice implements a subdomain or bounded context or an aggregate, so that there is less dependency between microservices, and each team can work mostly independently on features.
In the design you mentioned, depending upon the use-cases, building to user assignment could belong to user aggregate (users service) or building aggregate (building service). For an excellent blog on what aggregates are, check out What are aggregates.