views:

671

answers:

3

I'm considering using PostgreSQL with a .Net web app. Basically 3 reasons:

  1. Mature Geo Queries
  2. Small footprint + Linux
  3. Price

I'm wondering a bit about tools though, SQL Server Profiler and query plans and performance monitors have been helpful. How is this world with Postgres? Some other things I should consider?

Edit: Will most likely use NHibernate as ORM

A: 

I would consider MS SQL because of LINQ to SQL.

There is dbLinq which is still in early alpha, but it works for very simple queries.

Alan
NHibernate will most likely be the ORM choice
mmiika
+4  A: 

Postgres comes with pgAdmin, which does graphical explains to help you optimise queries. Entering your query in an SQL entry pane and pressing F7 gives you a really clear indication of how the query is planned and executed. More on this, here:

Graphical Explain Plans.

If you're doing a web app and are storing or working with IP Addresses, you can use the INET data type, which allows you to store the IP Address as a real type, and do all sorts of operations on it directly - Is an IP address in banned subnet, for example. No need to store 4 lots of quads and recombine them in code, or store it in a string.

Is running on Linux a bonus, if it's a .NET app?

majelbstoat
I don't know about mySQL but Postgres runs a lot faster on Linux, so yes, regardless of what your front end is written in, running pg on Linux is a bonus!
Mr Shoubs
A: 

There are a whole slew of tools for PostgreSQL, some free, some not... PgAdmin + Explain ANALYZE normally will give you everything you need and it is free.

Joshua D. Drake