Toon posts:

van ms sqlserver naar postgresql

Pagina: 1
Acties:

Verwijderd

Topicstarter
Het bedrijf waar ik werk heeft een uitgebreide database in access/vb dat als backend gebruik maakt van sqlserver. Nu zijn er plannen om postgres te gaan gebruiken i.p.v. sqlserver.

Vreemd genoeg heb ik nog geen goede vergelijkingen tussen de verschillende DBMS'en kunnen vinden (niet zozeer snelheidsbenchmarks maar vooral features). De tabellen in de database bevatten overigens maar nauwelijks van die exotische microsoft colomtypen (als OLE), en bovendien op plaatsen waar het wel gemist kan worden.

Zijn er hier mensen die een dergelijke migratie al hebben gedaan? Wat voor problemen zijn die tegengekomen? Kan postgres wel als vervanger dienen? (row level locking, views, triggers, etc?). En wat betreft portbaarheid van de queries (verschillen in compliance sql-standaard en ms-specific "enhancements"?).

Nu weet ik wel dat een antwoord op zo'n vraag sterk afhangt van de database die in gebruik is, maar als iemand een "algemeen" antwoord kan geven... graag!

Verwijderd

Op zich zou het wel moeten gaan, echter Postgressql is wel 10 stappen terug qua performance. Dit komt voornamelijk omdat SQLServer de laatste jaren daar sterk op is verbeterd (geen idee wat voor versie je gebruikt). Snap de reden ook niet echt om postgressql te gaan gebruiken boven sqlserver als je dat toch al in huis hebt en dus al betaald hebt voor de licenses.

Je moet nl. alle stored procedures, triggers en views opnieuw programmeren. De talen (T-SQL vs PSQL) zijn totaal niet compatible.

Ergo: lijkt me een typisch geval van "niet goed nagedacht". Blijf lekker bij sqlserver en vergeet postgresql

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Op donderdag 27 december 2001 16:37 schreef Otis het volgende:
Op zich zou het wel moeten gaan, echter Postgressql is wel 10 stappen terug qua performance. Dit komt voornamelijk omdat SQLServer de laatste jaren daar sterk op is verbeterd (geen idee wat voor versie je gebruikt).
Mja, dat was ook een van de voornaamste aandachtspunten bij postgresql, vooral bij 6.x -> 7.x

Verder zit er imho niet zo heel veel verschil in de sql-taal zoals ze die implementeren (select top xx ... wordt select ... limit ...).
postgres ondersteund ook views, triggers, functions, procedures, row-level locking, etc.

Maar het is natuurlijk wel zo dat MSSQL even wat duurder is dan PostgreSQL en daardoor uiteraard op sommige vlakken beter is (bijvoorbeeld een veel betere/uitgebreidere user interface en dat soort zaken)


[edit]
Waar je natuurlijk wel rekening mee moet houden is dat postgresql in principe niet op een windows platform kan draaien.

Verwijderd

Topicstarter
bijvoorbeeld een veel betere/uitgebreidere user interface
Explain? Wat heb je aan een userinterface als je de db via odbc gebruik? Als frontend zal nog steeds access/vb gebruikt blijven worden.
postgres ondersteund ook views, triggers, functions, procedures, row-level locking, etc.
Juist. Dat las ik ook op de postgres website.
Je moet nl. alle stored procedures, triggers en views opnieuw programmeren.
Dat is idd een groot minpunt.
Waar je natuurlijk wel rekening mee moet houden is dat postgresql in principe niet op een windows platform kan draaien.
Dat is in principe geen probleem. Nu draaien we ook linux met mysql voor andere doeleinden.
(geen idee wat voor versie je gebruikt).
Hou het maar op de nieuwste. De MS SQL database zelf is onder andere gebaseerd op de mogelijkheden van sqlserver van een aantal jaren geleden.
Ergo: lijkt me een typisch geval van "niet goed nagedacht". Blijf lekker bij sqlserver en vergeet postgresql
Dat is ook de reden waarom ik naar de mogelijkheden zit te kijken.

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Op donderdag 27 december 2001 16:55 schreef lnfinitive het volgende:
Explain? Wat heb je aan een userinterface als je de db via odbc gebruik? Als frontend zal nog steeds access/vb gebruikt blijven worden.
Een database moet ook beheerd worden toch? :)

Als je je daar niet druk om kan maken, vergeet dat hele punt dan maar ;)
Maar ik doel dus gewoon op bijvoorbeeld die SQL-manager van MSSQL, dat werkt voor beheren wel even wat makkelijker dan allerlei 3rd-party tools voor postgres, die net niet helemaal goed werken enzo...

Via de "postgres command line" kan je ook een hoop doen en er is ook wel een tooltje van postgres, maar das allemaal wat minder.

Verwijderd

Topicstarter
Ok, ik heb eens gepraat met degene die de oorspronkelijke database & frontend gemaakt heeft (wel, dat is de degene die bij ons klanten afhandeld en inkopen doet...(!)...maar wel ex leraar hbo...).

Goed, dat triggers, views en alles overnieuw moet was niet erg (dat was te verwachten). Bovendien komt ook het access frontent te vervallen.

In plaats daarvan een frontent in Internet Explorer (met als tussenlaag een stuk c/c++). (slik). Dat zal nog een hele klus worden denk ik. Voorlopig is het voor mij de bedoeling om de mogelijkheden te onderzoeken (ik denk dat ik eerst maar eens naar de verschillen in de triggers ga kijken en voor frontent maar eens naar mogelijkheden van XML en de div. utilities).

Dat de preformance wat lager is maakt niet uit. Nu draait de db op een PII met 256 Mb intern geheugen, en dat draait doorgaans wel aardig. Indien nodig zetten we er met postgres dan een dual PIII in met een gig aan geheugen. Dan zijn we nog goedkoper uit, want ik hoorde dat anders er een win2k licencie en sql2000 licentie gekocht moeten worden (draait nu nog op winnt en de voorganger van sql2000 (sql7 ofzo?)).

Administratie van de server/database en dergelijke hoeven op zich ook geen probleem te zijn. Ik heb net ff postgres geinstalleerd en je hebt een (3th party) windows utility voor het beheer. Bovendien zitten er ook een hele verzameling utilities bij... alleen replicatie/backup zal misschien wat lastig worden.

Dus ja, het blijft bij de vraag of we het systeem houden zoals het was. Dat werkte goed, maar dat zal op den duur kostbaar zijn wat licencies betreft.
Of de ambitieuse toer met opensource spul. Dat zal op den duur goedkoper uitvallen, maar er moet wel meer gedaan worden en ik heb dan ook een klein beetje het idee dat we ons dat op glad ijs gaan bevinden, vooral omdat je dan opeens afhankelijk bent van software die in de vrije tijd door mensen ontwikkeld wordt en die er dus zomaar mee op kunnen houden.
Pagina: 1