Modelo de banco de dados hierárquico

Estou criando um site de classificados sobre animais de estimação que terá três categorias (principais) de anúncios:

A- Sale
B- Breeding
C- Jobs

O problema que estou enfrentando é que todas as três categorias de anúncios têm algumas coisas em comum, mas também têm algumas diferença

Por exemplo, as categorias A, B e C têm o seguinte em comum:

category_id
ad_id
user_id
location

No entanto, os anúncios da categoria B não podem ser classificados como "Procurando / à venda", enquanto os B & C podem. Além disso, cada categoria terá suas próprias subcategorias. Por exemplo, a categoria A teria uma subcategoria de adoção e uma subcategoria de venda e categoria C teria uma subcategoria Jobs e uma subcategoria Service

Eles também terão alguns atributos incomuns, como salário, apenas na categoria C.

omecei a trabalhar nele como um modelo de entidade-atributo-valor, mas tenho várias preocupaçõe

Isso vai afetar o desempenho? Porque os usuários devem poder pesquisar com base em alguns dos atributos exclusivos. Portanto, a consulta através de uma tabela enorme não afetaria o desempenho?

Um dos meus atributos é "Animal" (exclusivo para A e B), inicialmente eu queria ter uma tabela Animal e uma tabela Breed (semelhante à localização em uma tabela própria para modelos de banco de dados classificados). Mas não consigo imaginar como fazer isso com o modelo de atributo de entidad

Aqui está o design do banco de dados que eu criei:http: //i.imgur.com/jyV6Cjc.pn

[Atualizar

Depois de ler a herança da tabela de classes, parecia um ajuste melhor do que o modelo EAV, então mudei meu EER para este:http: //i.imgur.com/JWPjt23.pn

s anúncios @Job e os anúncios de venda podem ser classificados como "Procura / oferta", mas não haverá muitas diferenças nos atributos, provavelmente apenas seus nomes (preço x preço preferencial, por exemplo). Então você acha que seria necessário adicionar outro nível de herança aqui ou seria um aborrecimento?

Um anúncio de venda pode ser um animal de estimação à venda, animal de adoção, solicitação de adoção, solicitação de compra de um animal de estimação. Você acha que eu deveria dividi-los em duas tabelas? Adoção e Venda? Não haveria uma grande diferença nos atributos, provavelmente apenas um atributo diferent

questionAnswers(1)

yourAnswerToTheQuestion