<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="/stylesheets/rss.css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>Jaros&#322;aw Zabie&#322;&#322;o - BLOG: PostgreSQL vs MySQL vs MSSQL2K</title>
    <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description>moje notatki, linki, komentarze</description>
    <item>
      <title>PostgreSQL vs MySQL vs MSSQL2K</title>
      <description>&lt;p&gt;Zawsze dziwi&#322;em si&#281; dlaczego aplikacje komunikuj&#261;ce si&#281; z &lt;span class="caps"&gt;MSSQL&lt;/span&gt; chodz&#261; tak niemrawo. Zrobi&#322;em sobie szybki test szybko&#347;ci. Na tym samym komputerze zainstalowa&#322;em: &lt;span class="caps"&gt;MSSQL 2000 SP4&lt;/span&gt;, MySQL 5.0.27 i PostgreSQL 8.2.3. Zadanie by&#322;o proste, pobra&#263; list&#281; tabel w bazie.&lt;/p&gt;


	&lt;p&gt;U&#380;yto nast&#281;puj&#261;cego kodu w Pythonie:&lt;/p&gt;


&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="ident"&gt;import&lt;/span&gt; &lt;span class="ident"&gt;adodbapi&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="constant"&gt;MySQLdb&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="ident"&gt;odbc&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="ident"&gt;psycopg2&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="ident"&gt;time&lt;/span&gt;
&lt;span class="ident"&gt;conn&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="punct"&gt;[&lt;/span&gt;
  &lt;span class="punct"&gt;(&lt;/span&gt; &lt;span class="punct"&gt;'&lt;/span&gt;&lt;span class="string"&gt;mysql&lt;/span&gt;&lt;span class="punct"&gt;',&lt;/span&gt; &lt;span class="constant"&gt;MySQLdb&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;connect&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;user&lt;/span&gt;&lt;span class="punct"&gt;='&lt;/span&gt;&lt;span class="string"&gt;root&lt;/span&gt;&lt;span class="punct"&gt;',&lt;/span&gt; &lt;span class="ident"&gt;db&lt;/span&gt;&lt;span class="punct"&gt;='&lt;/span&gt;&lt;span class="string"&gt;test&lt;/span&gt;&lt;span class="punct"&gt;'),&lt;/span&gt; &lt;span class="punct"&gt;'&lt;/span&gt;&lt;span class="string"&gt;SHOW TABLES&lt;/span&gt;&lt;span class="punct"&gt;'),&lt;/span&gt;
  &lt;span class="punct"&gt;('&lt;/span&gt;&lt;span class="string"&gt;pgsql&lt;/span&gt;&lt;span class="punct"&gt;',&lt;/span&gt; &lt;span class="ident"&gt;psycopg2&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;connect&lt;/span&gt;&lt;span class="punct"&gt;(&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;user='postgres' password='test''&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;),&lt;/span&gt; &lt;span class="punct"&gt;'&lt;/span&gt;&lt;span class="string"&gt;SELECT * FROM pg_tables jdb273&lt;/span&gt;&lt;span class="punct"&gt;'),&lt;/span&gt;
  &lt;span class="punct"&gt;('&lt;/span&gt;&lt;span class="string"&gt;mssql ado&lt;/span&gt;&lt;span class="punct"&gt;',&lt;/span&gt; &lt;span class="ident"&gt;adodbapi&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;connect&lt;/span&gt;&lt;span class="punct"&gt;('&lt;/span&gt;&lt;span class="string"&gt;Provider=SQLNCLI.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=test&lt;/span&gt;&lt;span class="punct"&gt;'),&lt;/span&gt; &lt;span class="punct"&gt;'&lt;/span&gt;&lt;span class="string"&gt;EXEC sp_tables&lt;/span&gt;&lt;span class="punct"&gt;'),&lt;/span&gt;
  &lt;span class="punct"&gt;('&lt;/span&gt;&lt;span class="string"&gt;mssql odbc&lt;/span&gt;&lt;span class="punct"&gt;',&lt;/span&gt; &lt;span class="ident"&gt;odbc&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;odbc&lt;/span&gt;&lt;span class="punct"&gt;('&lt;/span&gt;&lt;span class="string"&gt;DRIVER={SQL Server};SERVER=localhost;DATABASE=test;UID=sa;PWD=test&lt;/span&gt;&lt;span class="punct"&gt;'),&lt;/span&gt; &lt;span class="punct"&gt;'&lt;/span&gt;&lt;span class="string"&gt;EXEC sp_tables&lt;/span&gt;&lt;span class="punct"&gt;'),&lt;/span&gt;
  &lt;span class="punct"&gt;]&lt;/span&gt;
&lt;span class="keyword"&gt;def &lt;/span&gt;&lt;span class="method"&gt;test&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;repeat&lt;/span&gt;&lt;span class="punct"&gt;=&lt;/span&gt;&lt;span class="number"&gt;100&lt;/span&gt;&lt;span class="punct"&gt;):&lt;/span&gt;
  &lt;span class="keyword"&gt;for&lt;/span&gt; &lt;span class="ident"&gt;c&lt;/span&gt; &lt;span class="keyword"&gt;in&lt;/span&gt; &lt;span class="ident"&gt;conn&lt;/span&gt;&lt;span class="punct"&gt;:&lt;/span&gt;
    &lt;span class="ident"&gt;dbtype&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="ident"&gt;db&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="ident"&gt;sql&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="ident"&gt;c&lt;/span&gt;
    &lt;span class="ident"&gt;print&lt;/span&gt; &lt;span class="ident"&gt;dbtype&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt;
    &lt;span class="ident"&gt;t&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="ident"&gt;time&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;time&lt;/span&gt;&lt;span class="punct"&gt;()&lt;/span&gt;
    &lt;span class="keyword"&gt;for&lt;/span&gt; &lt;span class="ident"&gt;i&lt;/span&gt; &lt;span class="keyword"&gt;in&lt;/span&gt; &lt;span class="ident"&gt;range&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;repeat&lt;/span&gt;&lt;span class="punct"&gt;):&lt;/span&gt;
      &lt;span class="ident"&gt;cursor&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="ident"&gt;db&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;cursor&lt;/span&gt;&lt;span class="punct"&gt;()&lt;/span&gt;
      &lt;span class="ident"&gt;cursor&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;execute&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;sql&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt;
      &lt;span class="ident"&gt;rows&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="ident"&gt;cursor&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;fetchall&lt;/span&gt;&lt;span class="punct"&gt;()&lt;/span&gt;
      &lt;span class="ident"&gt;cursor&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;close&lt;/span&gt;&lt;span class="punct"&gt;()&lt;/span&gt;
    &lt;span class="ident"&gt;print&lt;/span&gt; &lt;span class="punct"&gt;'&lt;/span&gt;&lt;span class="string"&gt;%d req/s&lt;/span&gt;&lt;span class="punct"&gt;'&lt;/span&gt; &lt;span class="punct"&gt;%&lt;/span&gt; &lt;span class="ident"&gt;round&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;repeat&lt;/span&gt; &lt;span class="punct"&gt;/&lt;/span&gt; &lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;time&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;time&lt;/span&gt;&lt;span class="punct"&gt;()&lt;/span&gt; &lt;span class="punct"&gt;-&lt;/span&gt; &lt;span class="ident"&gt;t&lt;/span&gt;&lt;span class="punct"&gt;))&lt;/span&gt;
&lt;span class="keyword"&gt;if&lt;/span&gt; &lt;span class="ident"&gt;__name__&lt;/span&gt; &lt;span class="punct"&gt;==&lt;/span&gt; &lt;span class="punct"&gt;'&lt;/span&gt;&lt;span class="string"&gt;__main__&lt;/span&gt;&lt;span class="punct"&gt;':&lt;/span&gt;
  &lt;span class="ident"&gt;test&lt;/span&gt;&lt;span class="punct"&gt;()&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

	&lt;p&gt;U&#380;yta konfiguracja:&lt;/p&gt;


	&lt;ul&gt;
	&lt;li&gt;WinXP Pro 2000 &lt;span class="caps"&gt;SP2&lt;/span&gt;, P4 3.2GHz, 1GB &lt;span class="caps"&gt;RAM&lt;/span&gt;.&lt;/li&gt;
		&lt;li&gt;Python 2.5&lt;/li&gt;
		&lt;li&gt;MySQL v5.0. 27, driver: MySQLdb v1.2.2&lt;/li&gt;
		&lt;li&gt;PostgreSQL v8.2.3, driver: psycopg2 v2.0.6b1 (dec dt ext pq3)&lt;/li&gt;
		&lt;li&gt;&lt;span class="caps"&gt;MSSQL 2000 SP4&lt;/span&gt;, driver: &lt;span class="caps"&gt;ADO&lt;/span&gt;&lt;/li&gt;
	&lt;/ul&gt;


	&lt;p&gt;Wyniki:&lt;/p&gt;


&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="constant"&gt;C&lt;/span&gt;&lt;span class="punct"&gt;:\&lt;/span&gt;&lt;span class="ident"&gt;home\app\bench\scripts&lt;/span&gt;&lt;span class="punct"&gt;&amp;gt;&lt;/span&gt;&lt;span class="ident"&gt;bench_db&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;py&lt;/span&gt;
&lt;span class="ident"&gt;mysql&lt;/span&gt; &lt;span class="number"&gt;457&lt;/span&gt; &lt;span class="ident"&gt;req&lt;/span&gt;&lt;span class="punct"&gt;/&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;
&lt;span class="ident"&gt;pgsql&lt;/span&gt; &lt;span class="number"&gt;581&lt;/span&gt; &lt;span class="ident"&gt;req&lt;/span&gt;&lt;span class="punct"&gt;/&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;
&lt;span class="ident"&gt;mssql&lt;/span&gt; &lt;span class="ident"&gt;ado&lt;/span&gt; &lt;span class="number"&gt;6&lt;/span&gt; &lt;span class="ident"&gt;req&lt;/span&gt;&lt;span class="punct"&gt;/&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;
&lt;span class="ident"&gt;mssql&lt;/span&gt; &lt;span class="ident"&gt;odbc&lt;/span&gt; &lt;span class="number"&gt;9&lt;/span&gt; &lt;span class="ident"&gt;req&lt;/span&gt;&lt;span class="punct"&gt;/&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;

&lt;span class="constant"&gt;C&lt;/span&gt;&lt;span class="punct"&gt;:\&lt;/span&gt;&lt;span class="ident"&gt;home\app\bench\scripts&lt;/span&gt;&lt;span class="punct"&gt;&amp;gt;&lt;/span&gt;&lt;span class="ident"&gt;bench_db&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;py&lt;/span&gt;
&lt;span class="ident"&gt;mysql&lt;/span&gt; &lt;span class="number"&gt;457&lt;/span&gt; &lt;span class="ident"&gt;req&lt;/span&gt;&lt;span class="punct"&gt;/&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;
&lt;span class="ident"&gt;pgsql&lt;/span&gt; &lt;span class="number"&gt;581&lt;/span&gt; &lt;span class="ident"&gt;req&lt;/span&gt;&lt;span class="punct"&gt;/&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;
&lt;span class="ident"&gt;mssql&lt;/span&gt; &lt;span class="ident"&gt;ado&lt;/span&gt; &lt;span class="number"&gt;9&lt;/span&gt; &lt;span class="ident"&gt;req&lt;/span&gt;&lt;span class="punct"&gt;/&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;
&lt;span class="ident"&gt;mssql&lt;/span&gt; &lt;span class="ident"&gt;odbc&lt;/span&gt; &lt;span class="number"&gt;10&lt;/span&gt; &lt;span class="ident"&gt;req&lt;/span&gt;&lt;span class="punct"&gt;/&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;

&lt;span class="constant"&gt;C&lt;/span&gt;&lt;span class="punct"&gt;:\&lt;/span&gt;&lt;span class="ident"&gt;home\app\bench\scripts&lt;/span&gt;&lt;span class="punct"&gt;&amp;gt;&lt;/span&gt;&lt;span class="ident"&gt;bench_db&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;py&lt;/span&gt;
&lt;span class="ident"&gt;mysql&lt;/span&gt; &lt;span class="number"&gt;457&lt;/span&gt; &lt;span class="ident"&gt;req&lt;/span&gt;&lt;span class="punct"&gt;/&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;
&lt;span class="ident"&gt;pgsql&lt;/span&gt; &lt;span class="number"&gt;578&lt;/span&gt; &lt;span class="ident"&gt;req&lt;/span&gt;&lt;span class="punct"&gt;/&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;
&lt;span class="ident"&gt;mssql&lt;/span&gt; &lt;span class="ident"&gt;ado&lt;/span&gt; &lt;span class="number"&gt;9&lt;/span&gt; &lt;span class="ident"&gt;req&lt;/span&gt;&lt;span class="punct"&gt;/&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;
&lt;span class="ident"&gt;mssql&lt;/span&gt; &lt;span class="ident"&gt;odbc&lt;/span&gt; &lt;span class="number"&gt;11&lt;/span&gt; &lt;span class="ident"&gt;req&lt;/span&gt;&lt;span class="punct"&gt;/&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;

&lt;span class="constant"&gt;C&lt;/span&gt;&lt;span class="punct"&gt;:\&lt;/span&gt;&lt;span class="ident"&gt;home\app\bench\scripts&lt;/span&gt;&lt;span class="punct"&gt;&amp;gt;&lt;/span&gt;&lt;span class="ident"&gt;bench_db&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;py&lt;/span&gt;
&lt;span class="ident"&gt;mysql&lt;/span&gt; &lt;span class="number"&gt;457&lt;/span&gt; &lt;span class="ident"&gt;req&lt;/span&gt;&lt;span class="punct"&gt;/&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;
&lt;span class="ident"&gt;pgsql&lt;/span&gt; &lt;span class="number"&gt;581&lt;/span&gt; &lt;span class="ident"&gt;req&lt;/span&gt;&lt;span class="punct"&gt;/&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;
&lt;span class="ident"&gt;mssql&lt;/span&gt; &lt;span class="ident"&gt;ado&lt;/span&gt; &lt;span class="number"&gt;8&lt;/span&gt; &lt;span class="ident"&gt;req&lt;/span&gt;&lt;span class="punct"&gt;/&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;
&lt;span class="ident"&gt;mssql&lt;/span&gt; &lt;span class="ident"&gt;odbc&lt;/span&gt; &lt;span class="number"&gt;11&lt;/span&gt; &lt;span class="ident"&gt;req&lt;/span&gt;&lt;span class="punct"&gt;/&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;

&lt;span class="constant"&gt;C&lt;/span&gt;&lt;span class="punct"&gt;:\&lt;/span&gt;&lt;span class="ident"&gt;home\app\bench\scripts&lt;/span&gt;&lt;span class="punct"&gt;&amp;gt;&lt;/span&gt;&lt;span class="ident"&gt;bench_db&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;py&lt;/span&gt;
&lt;span class="ident"&gt;mysql&lt;/span&gt; &lt;span class="number"&gt;455&lt;/span&gt; &lt;span class="ident"&gt;req&lt;/span&gt;&lt;span class="punct"&gt;/&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;
&lt;span class="ident"&gt;pgsql&lt;/span&gt; &lt;span class="number"&gt;641&lt;/span&gt; &lt;span class="ident"&gt;req&lt;/span&gt;&lt;span class="punct"&gt;/&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;
&lt;span class="ident"&gt;mssql&lt;/span&gt; &lt;span class="ident"&gt;ado&lt;/span&gt; &lt;span class="number"&gt;9&lt;/span&gt; &lt;span class="ident"&gt;req&lt;/span&gt;&lt;span class="punct"&gt;/&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;
&lt;span class="ident"&gt;mssql&lt;/span&gt; &lt;span class="ident"&gt;odbc&lt;/span&gt; &lt;span class="number"&gt;10&lt;/span&gt; &lt;span class="ident"&gt;req&lt;/span&gt;&lt;span class="punct"&gt;/&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

	&lt;p&gt;Mit o rzekomej szybko&#347;ci MySQL ju&#380; jest nieaktualny. Nowy PostgreSQL 8 bije go pod ka&#380;dym wzgl&#281;dem. Zar&#243;wno wydajno&#347;ciowo i jak i znacznie wi&#281;kszymi mozliwo&#347;ciami (o tym mo&#380;e kiedy indziej).  Dziwi s&#322;aba, a raczej n&#281;dzna, wydajno&#347;&#263; produktu firmy Microsoft. Nie sprawdza&#322;em nowego &lt;span class="caps"&gt;MSSQL 2005&lt;/span&gt;, ale wszystko wskazuje na to, &#380;e przynajmniej &lt;span class="caps"&gt;MSSQL2K&lt;/span&gt; to kompletne dno!&lt;/p&gt;</description>
      <pubDate>Mon, 02 Apr 2007 17:14:00 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:43ae7c94-8984-4c09-86f1-fa0bf007d58c</guid>
      <author>Jaros&#322;aw Zabie&#322;&#322;o</author>
      <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k</link>
      <category>mysql</category>
      <category>postgresql</category>
      <category>mssql</category>
      <category>benchmark</category>
    </item>
    <item>
      <title>"PostgreSQL vs MySQL vs MSSQL2K" by Mike</title>
      <description>&lt;p&gt;hehe, dobry test.
Podstawa to DBA przymajmniej przy MySQL. Jako&#347; do tej pory 4 razy migruj&#261;c z Postgre na MySQL uzyskiwa&#322;em znacznie lepszy performance. Dla mnie to &#380;aden mit. Najpierw trzeba dobrze pozna&#263; te dystrybucje, kt&#243;re chce si&#281; testowa&#263;, a potem zamieszcza&#263; wyniki. To, &#380;e to nie jest takie &#322;atwe &#347;wiadczy fakt ilo&#347;ci podobnych tekst&#243;w o podobnej warto&#347;ci merytorycznej w sieci.&lt;/p&gt;


	&lt;p&gt;blee&amp;#8230;&lt;/p&gt;</description>
      <pubDate>Wed, 12 Mar 2008 17:30:09 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:582c6258-1cd9-4d66-998f-0d3a90db0942</guid>
      <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k#comment-1489</link>
    </item>
    <item>
      <title>"PostgreSQL vs MySQL vs MSSQL2K" by kj</title>
      <description>&lt;p&gt;Pragn&#281; zauwa&#380;y&#263;, &#380;e PostgreSQL lepiej si&#281; skaluje przy wi&#281;kszej liczbie procesor&#243;w.
&lt;a href="http://tweakers.net/reviews/657/6" rel="nofollow"&gt;http://tweakers.net/reviews/657/6&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Tue, 29 Jan 2008 20:27:14 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:2e0f1c87-f2f6-468f-b90f-83135ec973e2</guid>
      <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k#comment-1386</link>
    </item>
    <item>
      <title>"PostgreSQL vs MySQL vs MSSQL2K" by Jaros&#322;aw Zabie&#322;&#322;o</title>
      <description>&lt;p&gt;Niestety MSSQL chodzi tylko z windoz&#261;, co w praktyce oznacza &#380;e w wypadku aplikacji internetowej pozostaje tylko asp.net, g&#243;wniany IIS, ci&#261;g&#322;e dziury w systemie i du&#380;e koszta hostingu. Dla firm uzale&#380;nionych od win32 to nie problem. Ale tylko dla nich.&lt;/p&gt;</description>
      <pubDate>Sun, 06 Jan 2008 23:48:29 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:0df610ee-3b1e-497d-9f56-b09085d0bb83</guid>
      <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k#comment-1337</link>
    </item>
    <item>
      <title>"PostgreSQL vs MySQL vs MSSQL2K" by M.</title>
      <description>&lt;p&gt;Rownie dobrze mozna powiedziec, ze MySQL jest the best bo sie najszybciej sciaga z sieci, a MSSQL trzeba kupic na plytce:)
Albo badac czas potrzebny, aby przecietny prawnik zrozumial zapisy licencji kazdej z tych baz.&lt;/p&gt;</description>
      <pubDate>Sun, 06 Jan 2008 18:22:53 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:3c8a1413-b748-4a59-a28a-761f4363439c</guid>
      <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k#comment-1336</link>
    </item>
    <item>
      <title>"PostgreSQL vs MySQL vs MSSQL2K" by Bartek</title>
      <description>&lt;p&gt;Przegl&#261;danie listy tabel to operacja z kategorii refleksji struktury bazy danych &amp;#8211; takie operacje z za&#322;o&#380;enia s&#261; wolne i w &#380;aden spos&#243;b nie optymalizowane. Test, ciekawostka &amp;#8211; nic wi&#281;cej.&lt;/p&gt;</description>
      <pubDate>Thu, 13 Dec 2007 23:11:08 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:32dce311-0a40-4234-8afd-0d233ec35e2b</guid>
      <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k#comment-1287</link>
    </item>
    <item>
      <title>"PostgreSQL vs MySQL vs MSSQL2K" by piotr</title>
      <description>&lt;p&gt;Ok. Mam pytanie. Czy moze ktos robil testy w/w baz i porownal MySQL w srodowisku Linux? Mysle ze w/w produkty wypadna bardzo kiepsko oprocz MySQL. Ale napewno wasze kochane produkty pod Win XX sa i jeszcze beda dlugo komercyje. Skad moja zlosliwosc? Moze i MySQL wypada nie znacznie lepiej lub i gorzej, ale czy warto wydac za ta drobna roznice pare set tys zlotych? Mysle ze dalsze testy nie maja wiekszego sensu. Wazne jest ja duza jaest korporacja i jak duza bedzie w przyszlosc oraz jakie ma zasoby finansowe. Sorry ale ja na to patrze pod tym katem. Pozdrawiam i czekam na reprymendy ;-)&lt;/p&gt;</description>
      <pubDate>Fri, 07 Sep 2007 14:31:16 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:b2959773-4dea-44a8-8271-bb5a733132c0</guid>
      <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k#comment-968</link>
    </item>
    <item>
      <title>"PostgreSQL vs MySQL vs MSSQL2K" by ryszard</title>
      <description>&lt;p&gt;Nie znam pythona. Dodalem do petli dwie linie:
print rows
print len(rows)&lt;/p&gt;


	&lt;p&gt;ta pierwsza generuje duzo tekstu dla mssql, ta druga: dla mysql daje 0, dla mssql 296 (tylko te dwie bazy porownalem)&lt;/p&gt;


	&lt;p&gt;Domyslam sie, ze mssql przesyla wielokrotnie wiecej danych, dlatego taka roznica w ilosci wykonanych zapytan.
Podrawiam&lt;/p&gt;</description>
      <pubDate>Wed, 04 Jul 2007 17:01:53 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:f44fe611-00d3-43e9-b8b3-75066e09fc1f</guid>
      <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k#comment-856</link>
    </item>
    <item>
      <title>"PostgreSQL vs MySQL vs MSSQL2K" by Krzysztof Kaczkowski</title>
      <description>&lt;p&gt;Importowalem olbrzymi schemat z MSSQL do PostgreSQL w sposob automatyczny. Sprowadzalem schemat bazy do pseudo ORM&amp;#8217;a a z niego generowalem specyficzny SQL dla postgresa. Stwierdzam ze akurat pobieranie  definicji tabel, indeksow, funkcji w MSSQL jest koszmarnie wolne bez wzgledu na zastosowana metode. Taki urok tej bazy. Import kilkuset tabel trwal kilka godzin na Centrino1.4 512MB.&lt;/p&gt;</description>
      <pubDate>Sat, 21 Apr 2007 22:12:06 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:94ec3216-ccb2-4262-bbf3-298a168cae37</guid>
      <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k#comment-690</link>
    </item>
    <item>
      <title>"PostgreSQL vs MySQL vs MSSQL2K" by Jaros&#322;aw Zabie&#322;&#322;o</title>
      <description>&lt;p&gt;Dane by&#322;y wk&#322;adane do tabel bez indeks&#243;w (nie licz&#261;c pk). Dla MYSQL &amp;#8211; InnoDB. Chc&#281; por&#243;wna&#263; dla r&#243;&#380;nych bibliotek, np. pymsssql, adodbapi, psycopg2, MySQLdb oraz odbc w ka&#380;dym przypadku. Struktura tabeli jest prosta, pola typu INT, VARCHAR i TEXT. Wkr&#243;tce podam kod i wyniki.&lt;/p&gt;</description>
      <pubDate>Thu, 05 Apr 2007 07:36:25 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:2f4afadd-539a-4cb5-85be-320a7c732f33</guid>
      <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k#comment-674</link>
    </item>
    <item>
      <title>"PostgreSQL vs MySQL vs MSSQL2K" by Piotr Meyer</title>
      <description>&lt;p&gt;JZ: M&#243;g&#322;by&#347; wklei&#263; definicj&#281; tabeli, kt&#243;rej u&#380;y&#322;e&#347; do testu? G&#322;&#243;wnie ciekawi&#261; mnie indeksy. No i co do MySQL pytanie: InnoDB czy MyISAM?&lt;/p&gt;</description>
      <pubDate>Wed, 04 Apr 2007 23:09:30 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:34ea6d2e-c73f-441b-a8e2-4070d4dcb294</guid>
      <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k#comment-673</link>
    </item>
    <item>
      <title>"PostgreSQL vs MySQL vs MSSQL2K" by Ronald Kuczek</title>
      <description>&lt;p&gt;Jarku,
Oprogramowanie por&#243;wnuj&#261;ce pisa&#322;em na w&#322;asne potrzeby i na w&#322;asny koszt.
Ch&#281;tnie napisz&#281; Ci takie narz&#281;dzie je&#347;li sprecyzujesz:
1. Schemat testowej bazy danych.
2. Zapytania jakie maj&#261; by&#263; wykonywane &amp;#8211; z zastrze&#380;eniem &amp;#8211; mog&#281; je zoptymalizowa&#263; pod wzgl&#281;dem wydajno&#347;ci.
3. Docelowe obci&#261;&#380;enie.
BTW. nie zgadzam si&#281; z Tob&#261;. Platforma (a raczej interfejs) ma kolosalne zdarzenie.
Je&#347;li u&#380;yjemy np. ODBC lub .NET PostgreSQL wypadnie na tle MSSQL s&#322;abiej ni&#380; powinien. Nie jest to win&#261; wspomnianych baz a jedynie implementacji sterownik&#243;w.&lt;/p&gt;</description>
      <pubDate>Wed, 04 Apr 2007 21:13:13 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:45e85ebf-f3eb-4237-83a5-fbc58f5d8e08</guid>
      <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k#comment-672</link>
    </item>
    <item>
      <title>"PostgreSQL vs MySQL vs MSSQL2K" by Jaros&#322;aw Zabie&#322;&#322;o</title>
      <description>&lt;p&gt;Nied&#322;ugo uzupe&#322;ni&#281; artyku&#322; o troszk&#281; dok&#322;adniejsze informacje. Na razie tylko kr&#243;tka zajawka: &#322;adowanie 37 tys. rekord&#243;w za pomoc&#261; SQLAlchemy: PostgreSQL=4 min, MSSQL=15 min, MySQL=8 min. Ale sprawdz&#281; to na szybszej maszynie, bo P4 3.2GHz ca&#322;y czas pracowa&#322; na 100% i nie wiem na ile to ma wp&#322;yw na wyniki.&lt;/p&gt;</description>
      <pubDate>Wed, 04 Apr 2007 16:34:25 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:b782e538-43bc-43d1-ac2e-09069a662d05</guid>
      <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k#comment-671</link>
    </item>
    <item>
      <title>"PostgreSQL vs MySQL vs MSSQL2K" by rsz</title>
      <description>&lt;p&gt;Dobra, jak b&#281;dzie chwila czasu to sprawdz&#281;. Na razie po p&#243;&#322; godziny pr&#243;b skonfigurowania SQL expresa 2005 si&#281; poddaj&#281;. Nota bene: mo&#380;e kto&#347; ma jaki&#347; tutorial dla lamer&#243;w jak to skonfigurowa&#263; krok po kroku, tak &#380;eby dzia&#322;a&#322;o np. z adodbapi?&lt;/p&gt;</description>
      <pubDate>Wed, 04 Apr 2007 12:40:56 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:9194a1df-7e71-4758-8c72-8e4a27570f9b</guid>
      <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k#comment-670</link>
    </item>
    <item>
      <title>"PostgreSQL vs MySQL vs MSSQL2K" by Yar</title>
      <description>&lt;p&gt;Na marginesie &amp;#8211; jest tyle innych ciekawych informacji na tym blogu a komentarzy niezbyt wiele; zatem jak rozumi&#281; &amp;#8211; jak co&#347; jest dobrego i ciekawego wygrzebane przez Jarka to nie ma co komentowa&#263; (wg zasady Bismarcka &amp;#8211; za dobre rzeczy si&#281; nie chwali, bo to w pe&#322;ni normalne i oczekiwane zachowanie, za z&#322;e lub niefortunne &amp;#8211; od razu mo&#380;na bluzga&#263;). To tylko moje nic nie znacz&#261;ce zdanie :)
Pozdr. dla wszystkich RoRowc&#243;w :)&lt;/p&gt;</description>
      <pubDate>Wed, 04 Apr 2007 12:05:48 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:54cebd7d-0224-4cfa-85f8-10d20f24b69f</guid>
      <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k#comment-669</link>
    </item>
    <item>
      <title>"PostgreSQL vs MySQL vs MSSQL2K" by Yar</title>
      <description>&lt;p&gt;&amp;gt;&amp;gt; rsz   said 1 day later:
&amp;gt;&amp;gt;@Yar: Jarek napisa&#322; &#8220;wszystko wskazuje 
&amp;gt;&amp;gt;na to, &#380;e przynajmniej MSSQL2K to 
&amp;gt;&amp;gt;kompletne dno&#8221; oraz &#8220;&#322;aba, a raczej 
&amp;gt;&amp;gt;n&#281;dzna, wydajno&#347;&#263; produktu firmy 
&amp;gt;&amp;gt;Microsoft&#8221; &#8211; to nie brzmi zbyt 
&amp;gt;&amp;gt;obiektywnie w kontek&#347;cie zakresu jego 
&amp;gt;&amp;gt;test&#243;w, nieprawda&#380;?&lt;/p&gt;


	&lt;p&gt;Ja to rozumi&#281; w ten spos&#243;b:
kompletne dno, s&#322;aba a raczej n&#281;dzna wydajno&#347;&#263; produkty MS &amp;#8211; ale nie ca&#322;o&#347;ciowo a w zakresie tego miniminitestu &amp;#8211; czyli pobierania tabel. No w tym obszarze, rzeczywi&#347;cie tak to wygl&#261;da i nie udowadniajmy co jest wielb&#322;&#261;dem. Czy ten test jest supercomperativemegatest ;) ? Nie, na podstawie testu pobierania tabel MSSQL w wersji (fakt &#380;e nie najnowszej, ale ca&#322;y czas do&#347;&#263; popularnej) jest bardzo wolny, czyli w tym aspekcie &amp;#8220;kompletne dno i n&#281;dzna wydajno&#347;&#263;&amp;#8221;. Tak na m&#243;j rozum&amp;#8230;&lt;/p&gt;</description>
      <pubDate>Wed, 04 Apr 2007 12:02:48 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:1b76d65c-9c93-415e-a2d0-eae51673a748</guid>
      <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k#comment-668</link>
    </item>
    <item>
      <title>"PostgreSQL vs MySQL vs MSSQL2K" by Jaros&#322;aw Zabie&#322;&#322;o</title>
      <description>&lt;p&gt;Robert, napisz mo&#380;e jakie&#347; bardziej obiektywne testy zamiast czepia&#263; si&#281; moich uwag.&lt;/p&gt;</description>
      <pubDate>Wed, 04 Apr 2007 10:37:03 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:827a3084-c8bb-42fe-ba93-a0ec705c97d5</guid>
      <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k#comment-667</link>
    </item>
    <item>
      <title>"PostgreSQL vs MySQL vs MSSQL2K" by rsz</title>
      <description>&lt;p&gt;@Yar: Jarek napisa&#322; &amp;#8220;wszystko wskazuje na to, &#380;e przynajmniej MSSQL2K to kompletne dno&amp;#8221; oraz &amp;#8220;&#322;aba, a raczej n&#281;dzna, wydajno&#347;&#263; produktu firmy Microsoft&amp;#8221; &amp;#8211; to nie brzmi zbyt obiektywnie w kontek&#347;cie zakresu jego test&#243;w, nieprawda&#380;?&lt;/p&gt;</description>
      <pubDate>Wed, 04 Apr 2007 08:50:21 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:3fa02f5f-790e-4908-a3e7-e2cf4a041e58</guid>
      <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k#comment-666</link>
    </item>
    <item>
      <title>"PostgreSQL vs MySQL vs MSSQL2K" by Yar</title>
      <description>&lt;p&gt;Na moje si&#281; czepiacie. Nie chodzi o pe&#322;ny test, super benchmark. Na moje Jarek chcia&#322; wykaza&#263; jedno: w zakresie pobierania listy tabel, na standardowych konfiguracjach, bez tuningu MSSQL nie wypada za dobrze.&lt;/p&gt;


	&lt;p&gt;Czy napisa&#322; gdzie&#347;, &#380;e w zwi&#261;zku z tym MSSQL mo&#380;na wyrzuci&#263; ? Nie, po prostu w tym aspekcie tak to wygl&#261;da. Czy cz&#281;sto pobiera si&#281; list&#281; table ? Na pewno nie. Tylko co to zmienia, gdy autor napisa&#322; &amp;#8220;postanowi&#322;em zrobi&#263; sobie SZYBKI test&amp;#8221;. Gdybanie zostawmy filozofom &amp;#8211; zatem jak kto&#347; mo&#380;e to niech zrobi ten wspomniany test milionokrotkowy i da wyniki.
Marudzi&#263; ka&#380;dy potrafi&amp;#8230;&lt;/p&gt;</description>
      <pubDate>Tue, 03 Apr 2007 23:18:45 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:eff0d236-d7f1-420a-a9cf-4afbe568ba2f</guid>
      <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k#comment-665</link>
    </item>
    <item>
      <title>"PostgreSQL vs MySQL vs MSSQL2K" by Piotr Meyer</title>
      <description>&lt;p&gt;Jaros&#322;aw Zabie&#322;&#322;o: Rozumiem, &#380;e tuning jest wa&#380;ny, ale jak widz&#281; r&#243;&#380;nic&#281; rz&#281;du 60x to nie za bardzo wierz&#281; i&#380; tunning wywr&#243;ci tak&#261; proporcj&#281; do g&#243;ry nogami.&lt;/p&gt;


	&lt;p&gt;A ja wierz&#281; &amp;#8211; np. silnik InnoDB w MySQL jest strasznie wra&#380;liwy na ilo&#347;&#263; dost&#281;pnej pami&#281;ci i na domy&#347;lnych ustawieniach potrafi si&#281; pot&#281;&#380;nie zamuli&#263;. Ostatnio eksperymentowa&#322;em na przero&#347;ni&#281;tej tabeli token&#243;w spamassassina (jakie&#347; 3 miliony rekord&#243;w) &amp;#8211; lekki tuning skr&#243;ci&#322; czas potrzebny na dodanie kolejnego rekordu z 14 (czternastu) do 0.2 sekundy&amp;#8230;&lt;/p&gt;</description>
      <pubDate>Tue, 03 Apr 2007 21:50:14 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:83d25f76-06db-4858-a463-39f6f0061bf5</guid>
      <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k#comment-664</link>
    </item>
    <item>
      <title>"PostgreSQL vs MySQL vs MSSQL2K" by Jaros&#322;aw Zabie&#322;&#322;o</title>
      <description>&lt;p&gt;To napisz to sam zamiast &#347;ciemnia&#263; i klepa&#263; po pr&#243;&#380;nicy. Kogo obchodzi jaka platforma jest u&#380;yta? A wybierz sobie co chcesz, byle te testy by&#322;y przeprowadzane na sprz&#281;cie o tej samej mocy, najlepiej tym samym komputerze. Skoro ty kwestionujesz to &#380;e mssql okaza&#322; si&#281; wolny, to wyka&#380; &#380;e jest odwrotnie. Onus probandi ci&#261;&#380;y po twojej stronie.&lt;/p&gt;</description>
      <pubDate>Tue, 03 Apr 2007 20:14:03 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:5875f2ad-eacd-4a68-85e4-6f4487739ab9</guid>
      <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k#comment-663</link>
    </item>
    <item>
      <title>"PostgreSQL vs MySQL vs MSSQL2K" by Ronald Kuczek</title>
      <description>&lt;p&gt;Jarku,
To Ty powiniene&#263; u&#380;y&#263; Mocy i napisa&#263; solidniejszy test. Sk&#261;d mamy wiedzie&#263; jak ma wygl&#261;da&#263; docelowa platforma, jakie interfejsy, obci&#261;&#380;enie bazy itp ?
Napisa&#322;em Ci ju&#380;, programik testowy -
napisz p&#281;tl&#281; ( w docelowej technologii, cokolwiek to jest):
1. Wstaw po milionie wylosowanych krotek do tabel w zaprojektowanej bazie danych.
2. Wykonaj update na milionie losowych krotek.
3. Usu&#324; milion razy losowe krotki z wybranych tabel.
4. Operacje 1-3 powt&#243;rz 10 razy i zapisz czasy.
4. Por&#243;wnaj statystyki dla r&#243;&#380;nych silnik&#243;w.
Takie to trudne ? Czasoch&#322;onne na pewno, ale nie niewykonalne.&lt;/p&gt;</description>
      <pubDate>Tue, 03 Apr 2007 19:29:12 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:ccaab6be-5c63-4c45-a8a1-e90759c4efe8</guid>
      <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k#comment-662</link>
    </item>
    <item>
      <title>"PostgreSQL vs MySQL vs MSSQL2K" by Jaros&#322;aw Zabie&#322;&#322;o</title>
      <description>&lt;p&gt;Muzealny? Chyba troch&#281; przesadasz. Ten MSSQL2K ca&#322;kiem popularny w wielu firmach i sam go u&#380;ywam na codzie&#324; w pracy (oczywi&#347;cie ma zaplikowany SP4). Powtarzam: dlaczego nikt z was nie ruszy dupy i nie napisze solidniejszych test&#243;w zamiast marudzi&#263; i roni&#263; tu krokodyle &#322;zy? Takie trudne, czy co?&lt;/p&gt;</description>
      <pubDate>Tue, 03 Apr 2007 17:39:52 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:3edcd197-59bd-40cf-b709-9936803af181</guid>
      <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k#comment-661</link>
    </item>
    <item>
      <title>"PostgreSQL vs MySQL vs MSSQL2K" by Kamil</title>
      <description>&lt;p&gt;Dlaczego do testow uzyles najnowszych wersji mysqla i postgresqla oraz jakies muzealnej wersji mssql? Nie lepiej byloby wziac mssql 2k5? albo jakis mysql 3? kilka lat czasu miedzy wydaniami silnikow jednak swoje robi.&lt;/p&gt;</description>
      <pubDate>Tue, 03 Apr 2007 17:34:56 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:d42641ec-276d-4711-ba59-93971f451413</guid>
      <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k#comment-660</link>
    </item>
    <item>
      <title>"PostgreSQL vs MySQL vs MSSQL2K" by Ronald Kuczek</title>
      <description>&lt;p&gt;Jarku, nikt nie napada. Robi&#322;em niejeden projekt i przeprowadza&#322;em dob&#243;r bazy. Raz lepszy by&#322; Firebird, innym razem PostgreSQL a w jeszcze innym wypadku MSSQL. Chcia&#322;em Ci jedynie powiedzie&#263;, aby&#347; nie wyci&#261;ga&#322; pochopnych wniosk&#243;w.
Warto posiedzie&#263; nad benchmarkiem bo jak projekt ju&#380; si&#281; zacznie trudno b&#281;dzie raz dokonany wyb&#243;r zmieni&#263;. Zazwyczaj pisa&#322;em programy testowe dzia&#322;aj&#261;ce na zaprojektowanej strukturze tabel (zbli&#380;onej do tej ostatecznej, zaakceptowanej w projekcie). Po testach trwaj&#261;cych co najmniej kilka dni dla jednej bazy &amp;#8211; analizowa&#322;em zebrane statystyki i wyci&#261;ga&#322;em wnioski.
Tylko tak przekona&#322;em si&#281; np., &#380;e w przypadku PostgreSQL i dost&#281;pu przez .NET lepiej u&#380;y&#263; komercyjnego sterownika crlab (najszybszy) lub npgsql (por&#243;wnywalny, ale wolniejszy o jakie&#347; 25%)ni&#380; np. ODBC (r&#243;&#380;nica w wydajno&#347;ci oko&#322;o trzykrotna). Okaza&#322;o si&#281; te&#380; przy .NET MSSQL jest szybszy od PostgreSQl, ale w przypadku u&#380;ycia natywnych interfejs&#243;w r&#243;&#380;nica nie by&#322;a ju&#380; tak oczywista. Oracle dzia&#322;a&#322; po ODBC o wiele wolniej ni&#380; przy u&#380;yciu napisanego wrappera na OCI itd.&lt;/p&gt;</description>
      <pubDate>Tue, 03 Apr 2007 14:08:56 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:a89979e1-d429-408c-8f57-1936e0d6fe60</guid>
      <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k#comment-659</link>
    </item>
    <item>
      <title>"PostgreSQL vs MySQL vs MSSQL2K" by Jaros&#322;aw Zabie&#322;&#322;o</title>
      <description>&lt;p&gt;Ronald Kuczek: Rozumiem, &#380;e tuning jest wa&#380;ny, ale jak widz&#281; r&#243;&#380;nic&#281; rz&#281;du 60x to nie za bardzo wierz&#281; i&#380; tunning wywr&#243;ci tak&#261; proporcj&#281; do g&#243;ry nogami. Faktycznie lepiej by&#322;oby sprawdzi&#263; czytanie rekord&#243;w. Mo&#380;e przygotuj&#281; jaki&#347; prosty kod &amp;#8211; ale to wszystko, bo nie mam czasu na dok&#322;adn&#261; analiz&#281; ani &#380;adne tuningi. (btw, mam pewn&#261; hipotez&#281; dlaczego to mog&#322;o mi to dzia&#322;a&#263; tak wolno, ale o tym p&#243;&#378;niej). Zamiast mnie tu napada&#263;, niech kto&#347; lepiej sam zrobi bardziej profesjonalne por&#243;wnanie.&lt;/p&gt;</description>
      <pubDate>Tue, 03 Apr 2007 13:41:21 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:740d0a09-28ef-4a89-8121-f6f131c2222b</guid>
      <link>http://blog.zabiello.com/articles/2007/04/02/postgresql-vs-mysql-vs-mssql2k#comment-658</link>
    </item>
  </channel>
</rss>
