Ho un'applicazione divisa in due parti principali:
- Un web crawler scritto in Python
- Un'API REST scritta in Golang
Condividono un database MySQL, che viene principalmente popolato / aggiornato dal crawler web e quindi letto dall'API REST.
Volevo utilizzare un ORM su ciascun lato per facilitare l'interazione con il database, ma ora non sono sicuro che sia un buon approccio.
Sul lato Python, stavo cercando di usare peewee , e per Golang userò gorm .
Non sembra una buona idea mantenere due serie di file modello ORM, dove dovrei cambiare ogni set ogni volta che voglio modificare alcuni attributi del database. Inoltre, sono preoccupato che con due ORM in lotta per la struttura del database, che potrebbero sorgere conflitti, o che i modelli potrebbero non essere sincronizzati con ciò che è la struttura db effettiva.
Questo è uno scenario in cui l'utilizzo di un ORM causerà più problemi del suo valore? O forse dovrei usare un singolo ORM (per Python o Golang) e scrivere query non elaborate per l'altro lato.