sql >> Database teknologi >  >> RDS >> PostgreSQL

Anvendelse af skinner til flere lejere:hvad er fordele og ulemper ved forskellige teknikker?

MSDN har en god introduktion til multi-tenant dataarkitektur .

I den ene ende af spektret har du én database pr. lejer ("delt intet"). "Shared nothing" gør disaster recovery ret simpel og har den højeste grad af isolation mellem lejere. Men den har også den højeste gennemsnitlige pris pr. lejer, og den understøtter de færreste lejere pr. server.

I den anden ende af spektret gemmer du et lejer-id-nummer i hver række af hver delt tabel ("delte alt"). "Delt alt" gør katastrofegendannelse svært – for en enkelt lejer skal du kun gendanne nogle rækker i hver delt tabel – og den har den laveste grad af isolation. (Dårligt udformede forespørgsler kan afsløre private data.) Men det har den laveste pris pr. lejer, og det understøtter det højeste antal lejere pr. server.

Dette lyder som om du taler om et skema pr. lejer. Vær meget opmærksom på tilladelser (SQL GRANT og REVOKE udsagn. Og ÆNDRE STANDARDPRIVILEGIER .)



  1. Fuldtekstsøgning med InnoDB i MySQL

  2. Hvordan kan jeg bruge en mySQL SELECT IF-sætningsrække til at JOIN en anden tabel?

  3. MySQL Stored Procedure for at oprette bruger

  4. Et skinnefelt, der er en række JSON-objekter?