2008-11-20 12 views
5

Ich überlege, PostgreSQL mit einer .Net Web App zu verwenden. Grundsätzlich 3 Gründe:PostgreSQL oder MS SQL Server?

  1. Ältere Geo Abfragen
  2. Geringer Platzbedarf + Linux
  3. Preis

Ich bin ein wenig über Tools fragen, aber SQL Server Profiler und Abfragepläne und Performance-Monitore haben war hilfreich. Wie ist diese Welt mit Postgres? Einige andere Dinge, die ich berücksichtigen sollte?

Edit: Wird höchstwahrscheinlich verwenden NHibernate als ORM

Antwort

0

Ich würde MS SQL betrachten, weil von LINQ to SQL.

Es gibt dblinq, die immer noch im frühen Alpha ist, aber es funktioniert für sehr einfache Abfragen.

+1

NHibernate wird wahrscheinlich die ORM-Wahl – mmiika

6

Postgres wird mit pgAdmin geliefert, das grafisch erklärt, um Ihnen bei der Optimierung von Abfragen zu helfen. Wenn Sie Ihre Abfrage in einem SQL-Eingabefenster eingeben und F7 drücken, erhalten Sie einen sehr deutlichen Hinweis darauf, wie die Abfrage geplant und ausgeführt wird. Mehr dazu hier:

Graphical Explain Plans.

Wenn Sie eine Webanwendung erstellen und mit IP-Adressen arbeiten oder arbeiten, können Sie den Datentyp INET verwenden, mit dem Sie die IP-Adresse als echten Typ speichern und alle möglichen Operationen ausführen können direkt - Ist zum Beispiel eine IP-Adresse in einem verbotenen Subnetz. Es ist nicht nötig, 4 Chargen Quads zu speichern und sie im Code neu zu kombinieren oder in einer Zeichenkette zu speichern.

Läuft unter Linux ein Bonus, wenn es eine .NET App ist?

+0

Ich weiß nicht über MySQL, aber Postgres läuft viel schneller unter Linux, also ja, unabhängig davon, was Ihr Frontend geschrieben ist, ist das Ausführen von Pg unter Linux ein Bonus! –

2

Es gibt eine ganze Reihe von Tools für PostgreSQL, einige kostenlos, einige nicht ... PgAdmin + Erklären ANALYSE wird normalerweise geben Sie alles, was Sie brauchen, und es ist kostenlos.