{"id":616,"date":"2006-03-11T20:09:40","date_gmt":"2006-03-11T10:09:40","guid":{"rendered":""},"modified":"2010-05-27T17:13:13","modified_gmt":"2010-05-27T07:13:13","slug":"correcting-some-incorrect-information-about-cluster","status":"publish","type":"post","link":"https:\/\/www.flamingspork.com\/blog\/2006\/03\/11\/correcting-some-incorrect-information-about-cluster\/","title":{"rendered":"Correcting some incorrect information about Cluster"},"content":{"rendered":"<p>While googling this morning, I came across: <a href=\"http:\/\/docs.moodle.org\/en\/index.php?title=Arguments_in_favour_of_PostgreSQL&#038;printable=yes\">Arguments in favour of PostgreSQL &#8211; MoodleDocs<\/a>. Unfortunately, there&#8217;s some factual errors about both <a href=\"http:\/\/www.mysql.com\">MySQL<\/a> and <a href=\"http:\/\/www.mysql.com\/products\/database\/cluster\/\">MySQL Cluster<\/a>.<\/p>\n<p>For a start, it seems as though the comparison is Postgresql versus MyISAM. Now, this isn&#8217;t exactly a fair comparison when it comes to some loads &#8211; especially anything when you want crash safety or transactions.<\/p>\n<p>With InnoDB however, COMMIT means that the transaction is on disk and durable.<\/p>\n<p>So, onto Cluster. The replication between nodes in a cluster is <strong>not <\/strong>asynchronous. When a transaction is COMMITTED, it&#8217;s in the main memory of more than one data node. I.e. the D for Durability. We are durable across node failure. A failure of the entire cluster can loose you some transactions, but only those since the last Global Checkpoint.A whole cluster failure should be a very rare event (read: never).<\/p>\n<p>The comparison to Postgresql async writes is incorrect as in this case on COMMIT the transaction is not durable (unlike with MySQL Cluster).<\/p>\n","protected":false},"excerpt":{"rendered":"<p>While googling this morning, I came across: Arguments in favour of PostgreSQL &#8211; MoodleDocs. Unfortunately, there&#8217;s some factual errors about both MySQL and MySQL Cluster. For a start, it seems as though the comparison is Postgresql versus MyISAM. Now, this &hellip; <a href=\"https:\/\/www.flamingspork.com\/blog\/2006\/03\/11\/correcting-some-incorrect-information-about-cluster\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[1],"tags":[],"class_list":["post-616","post","type-post","status-publish","format-standard","hentry","category-general"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p5a6n8-9W","jetpack-related-posts":[{"id":805,"url":"https:\/\/www.flamingspork.com\/blog\/2007\/03\/17\/ndb-online-add-node-progress-or-rather-testing-it\/","url_meta":{"origin":616,"position":0},"title":"NDB Online Add Node Progress (or rather, testing it)","author":"Stewart Smith","date":"2007-03-17","format":false,"excerpt":"So, the sitch as of today: Added ndb_mgm_set_configuration() call to the mgmapi - which is not-so-casually evil API call that sends a packed ndb_mgm_configuration object (like what you get from ndb_mgm_get_configuration) to the management server, who then resets its lists of nodes for event reporting and for ClusterMgr and starts\u2026","rel":"","context":"In &quot;mysql&quot;","block_context":{"text":"mysql","link":"https:\/\/www.flamingspork.com\/blog\/category\/work-et-al\/mysql\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":3899,"url":"https:\/\/www.flamingspork.com\/blog\/2014\/11\/11\/mysql-cluster-on-power8\/","url_meta":{"origin":616,"position":1},"title":"MySQL Cluster on POWER8","author":"Stewart Smith","date":"2014-11-11","format":false,"excerpt":"So, I've written previously on MySQL on POWER, and today is a quick bit of news about MySQL Cluster on POWER - specifically MySQL Cluster 7.3.7. I ran into three main issues in getting some flexAsync benchmark results. One of them was the fact that I wanted to do this\u2026","rel":"","context":"In &quot;code&quot;","block_context":{"text":"code","link":"https:\/\/www.flamingspork.com\/blog\/category\/code\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":800,"url":"https:\/\/www.flamingspork.com\/blog\/2007\/03\/10\/code-size-of-an-engine-versus-test-suite\/","url_meta":{"origin":616,"position":2},"title":"Code size of an engine versus test suite","author":"Stewart Smith","date":"2007-03-10","format":false,"excerpt":"If you count the lines of code in the MySQL Cluster (NDB) test suite (mysql-5.1\/storage\/ndb\/test - and exclude the old ODBC stuff) you come up with about 104000 lines of code. This is in contrast to the approximate other 350,000 lines of code for the NDB engine (excluding the handler,\u2026","rel":"","context":"In &quot;mysql&quot;","block_context":{"text":"mysql","link":"https:\/\/www.flamingspork.com\/blog\/category\/work-et-al\/mysql\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":855,"url":"https:\/\/www.flamingspork.com\/blog\/2007\/06\/27\/ndb_mgm-pr0n\/","url_meta":{"origin":616,"position":3},"title":"ndb_mgm pr0n","author":"Stewart Smith","date":"2007-06-27","format":false,"excerpt":"ndb_mgm> all report MemoryUsage Node 1: Data usage is 11%(632 32K pages of total 5440) Node 1: Index usage is 22%(578 8K pages of total 2592) Node 2: Data usage is 61%(3331 32K pages of total 5440) Node 2: Index usage is 40%(1039 8K pages of total 2592) ndb_mgm> Oh,\u2026","rel":"","context":"In &quot;mysql&quot;","block_context":{"text":"mysql","link":"https:\/\/www.flamingspork.com\/blog\/category\/work-et-al\/mysql\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":767,"url":"https:\/\/www.flamingspork.com\/blog\/2006\/12\/11\/online-online-online-or-restarts-are-for-wusses\/","url_meta":{"origin":616,"position":4},"title":"online online online! (or restarts are for wusses)","author":"Stewart Smith","date":"2006-12-11","format":false,"excerpt":"I often see things go past my eyes where customers (and users - i.e. those that don't send wads of cash our way and hence are not financially supporting my beer, curry and photography habits) have amazing uptime and reliability requirements. When talking to businesses that use MySQL, it's not\u2026","rel":"","context":"In &quot;mysql&quot;","block_context":{"text":"mysql","link":"https:\/\/www.flamingspork.com\/blog\/category\/work-et-al\/mysql\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":3901,"url":"https:\/\/www.flamingspork.com\/blog\/2014\/11\/12\/preliminary-mysql-cluster-benchmark-results-on-power8\/","url_meta":{"origin":616,"position":5},"title":"Preliminary MySQL Cluster benchmark results on POWER8","author":"Stewart Smith","date":"2014-11-12","format":false,"excerpt":"Yesterday, I got the basics going for MySQL Cluster on POWER. Today, I finished up a couple more patches to improve performance and ran some benchmarks. This is on a 3.7Ghz POWER8 machine with non-balanced memory (only 2 of the 4 NUMA nodes have memory, so we have less total\u2026","rel":"","context":"In &quot;code&quot;","block_context":{"text":"code","link":"https:\/\/www.flamingspork.com\/blog\/category\/code\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts\/616","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/comments?post=616"}],"version-history":[{"count":1,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts\/616\/revisions"}],"predecessor-version":[{"id":1995,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts\/616\/revisions\/1995"}],"wp:attachment":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/media?parent=616"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/categories?post=616"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/tags?post=616"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}