Data structure, tool choice, automation, avoiding busy tasks on Obsidian

I have been using Obsidian for about 5 years now, on and off. Obsidian provides a bunch of tools. With a lot of notes the challenge becomes the design of the data structure. The big issue with Obsidian is that the software provides very little guidance for the design of data structure and without it inconsistencies or poor design can result in the notes become very hard to fine.

Obsidian provides link/backlink structure which can be useful for websites but has many downsides. It is rather messy. With keywords as nodes to notes, the keywords are not readily discernable as a different data type as the notes. The nodes provide an overview where at topic is mentioned but requires manual linking to every note of significant. Due to the 1-to-n relationship of such design, creating links is arduous.

A simple search for a keyword might be regard as simpler, however, Obsidian keyword search is not really all that good. A keyword text search needs some way to narrow down the hits to those relevant. A good search tool has functions which permit the exclusion of false positives. Searching for multiple keywords requires a more sophisticated search syntax. Boolean logic can be usefully applied in search syntax.

The third obvious approach is Front Matter. Rather than linking notes to keyword nodes, or relying on keyword text search, notes are found by searching the metadata in the Front Matter. Front Matter is attractive because it recognised different metadata types: title, author, create date, modify date, publish date, tags and much more. It is possible to search by these data types or combinations thereof. Front Matter is not a database, but a great improvement over whole text searches. Not all text is equally important. Particularly due to Obsidian plain text (md files) data storage, this becomes a critical distinction. (Would it not be nice to exclude embedded URLs from the text search?)

The issue with Front Matter is lack of tools for its manipulation. Ideally, for any search result of the metadata, we need to modify or insert metadata ie modify certain records. Obsidian does not provide tools that work with such an “if then” construct.

Of course, I could create my own database and put my notes in that. Writing external code to change the md files is another approach. This would, however, mean obandoning Obsidian: a Pyrrhic victory.

My questions:
1. Do you have an opinion how to best organise thousands of notes in Obsidian?
2. What tools does Obsidian have for automatically creating and modifiy Front Matter?
3. In what ways can the many manual tasks (busy work) for structuring data in Obsidian be automated?
4. Where do I find guides for designing data structures for Obsidian? The most suitable Obisidian tool(s) depends on the purpose of the final product, but is only achieved with the end in mind.

Whatever organization style is used, one of the most important things to me is to name files in a way that I’m likely to think of later when I want to find them again. This makes it easier to find them in the Quick Switcher (built-in filename search). I only use the regular Search when I can’t find something in the Quick Switcher. I used to worry about not being able to find things, and this has reduced that worry a lot.

I try to keep my filenames short, but I let them be long when it feels necessary.

I have about 6,000 files and mainly rely on filenames, folders, and links, plus Bookmarks for some frequently-used files. I add tags to many files but rarely use them. I don’t use properties except for an occasional alias or CSS class (maybe I’ll use them more when the Bases feature is publically released).