Agreed! Lots of work. We do not (currently) use the "Concept Ancestor" in our mapping efforts because it is reserved for "standard" concepts.
One table may be easier, BUT the Source to Concept Map doesn't allow us to create a >2 billion source_concept_id. This is our lifeline back to the source. And allows us to query on the source_concept_id when a mapping to a standard concept it not available or the mapping losses information.
Add it as a source_concept_id and ask the vocabulary team (@Dymshyts & @Christian_Reich) to add the code.
These > 2 billion concept_ids are source_concept_ids. Source_concept_ids are only for local folks/ local studies.
The Concept Relationship table also has valid start and end dates for the relationship. We default to a start date of 1970 & end with 2099. When an appropriate concept_id becomes available in OMOP, we will change the relationship end date and create the new concept relationship record.
We use Usagi to map our string names when there is a high likelihood of getting a very good match as occurs with drugs and procedures. When I mapped our tobacco use concepts I ran in to many problems using Usagi. First, I was unable to limit the domain because tobacco concepts are in multiple domains. Second, Usagi returned many rows that were not the closest match. I found it easier to search in Atlas and then create and export concept sets for tobacco concepts. Using Atlas is a very manual process, but I find it easier to find matching concepts.