menu

Questions & Answers

Use doctrine to connect to HANA

We've been building a symfony/Postgre application for a client. The application is almost done and our client wishes to switch the database from Postgre to HANA.

My question is simple, is that possible ? I've seen that HANA supports ODBC but doctrine doesn't not seem to like it. I also have found that doctrine has a sqlAnywhere driver. Is it HANA-compatible ?

Thank you.

Answers(1) :

No. This is not possible with Doctrine.

Also it is a bad practise to share a database accross contexts (apps)

Better: Keep your postgres DB and introduce specific events or batch jobs to transfer the data back to HANA using pure SQL/ODBC.

Rule of thumb: Only use ORM/Doctrine if you have full control / ownership of the schema.

Comments:
2023-01-19 23:01:06
Hello, thank you for answering that fast. We do not want to share a database accross apps and we do have full control of the schema. We have a single app which runs perfectly under symfony/postgre and want the same thing but with symfony/hana. The client just want to access our data to do some work on his side with SAC and requires Hana for that.
2023-01-19 23:01:06
How is that not sharing a Database? ;-)
2023-01-19 23:01:06
ahaha, yes you are right. What I meant is that we are the owner and the only ones who will write/edit/delete stuff in the database, they will only read data. It will all be hosted on a closed controlled environement, no worries about that.
2023-01-19 23:01:06
I still would recommend to use HANA as a append only / write only from the symfony app perspective.
2023-01-19 23:01:06
What kind of data is it, that THEY want to run analysis on?
2023-01-19 23:01:06
I assume it's mostly customer activity (who buys what how and when) and product usage (session duration, lifetime, maintenance) but it's not something we've discussed or be involved in. I'll let the question open a little longer in case someone comes with a brilliant idea, but I think your are right about keeping postgre. Thanks !
2023-01-19 23:01:06