openerp-expert-framework team mailing list archive
-
openerp-expert-framework team
-
Mailing list archive
-
Message #00156
RFC: Multi-company vs multi-installation
Hello, I'd like your opinion on the following:
Currently, we're making some effort to integrate "multi-company" support in the
OpenERP addons.
This means that we're adding a 'company_id' field in many tables, and
subsequently extending the rules/clauses/logic to follow this company field.
I'd like to challenge that.
What is the purpose/vision of a multi-company installation? Obviously, one use
would be to have a unified db instance, which would serve a few "sibling"
companies.
But: what are the records/models/tables that these companies would have in
common? Do we have a chart of the things that will be common vs. the ones
(models) that will be shared? Which ones do have a strict rule on the company,
as opposed to allowing Null company for all of them?
Second: what are the performance implications of using this company_id field?
If the rule system have us join one more table, in so many places, wouldn't
that affect the server's response (considering that many OpenERP installations
will be for a single company) ? How can we make up for that? Could this code
turn into a no-op when not needed?
Third (only a remark) is that migration from 5.0 databases may get a little
hairy, if the company_id is not properly updated (has happened here). Please
check thoroughly that things work when using an old db.
That said, I would NOT wish to back off from the current multi-company
development, but just consider an alternative. I still appreciate the effort
done.
My counter-proposal (which, however, doesn't cancel the multi-company code)
would be to also put an effort into **B2B** instances of OpenERP.
That is, instead of cramming many companies into the same db, try to have a
solid framework of inter-operation between OpenERP instances. Let 2 or more
OpenERP dbs share their data through some communication channel.
I do know that this is not my idea, but has been started and worked upon by
others, already. Indeed, I support it and propose that it would be an
alternative to the multi-company case.
B2B links between OpenERP instances (= dbs) would bring a series of advantages
to OpenERP. It is a scalability solution, for one. It is also an added value
to the OpenERP project, because it could create a /network effect/ of OpenERP
installations.
Just make sure b2b works out of the box, with easy installation and minimal
administration.
My EUR 3M ;)
Follow ups