{"id":587,"date":"2006-02-17T11:36:43","date_gmt":"2006-02-17T01:36:43","guid":{"rendered":"http:\/\/www.flamingspork.com\/blog\/2006\/02\/17\/ndb-disk-io-patterns-redo-and-undo-logs\/"},"modified":"2006-02-17T11:36:43","modified_gmt":"2006-02-17T01:36:43","slug":"ndb-disk-io-patterns-redo-and-undo-logs","status":"publish","type":"post","link":"https:\/\/www.flamingspork.com\/blog\/2006\/02\/17\/ndb-disk-io-patterns-redo-and-undo-logs\/","title":{"rendered":"NDB Disk IO patterns &#8211; REDO and UNDO Logs"},"content":{"rendered":"<p>(stolen out of Mikael&#8217;s post to the cluster list &#8211; <a href=\"http:\/\/lists.mysql.com\/cluster\/2396\">http:\/\/lists.mysql.com\/cluster\/2396<\/a>)<\/p>\n<blockquote><p>Both REDO and UNDO logs are stored in buffers but are sent after a while to disk.<\/p><\/blockquote>\n<blockquote><p>For REDO the disk write happens when 256 kByte of buffer is filled up or when a GCP requests synching the data (the 256 kByte write is without synch<br \/>\nbut every 4 MByte gets synched even without GCP occurring.<\/p><\/blockquote>\n<blockquote><p>\nFor UNDO similar algorithm that write when 256 kByte of buffer is filled, synch after 4 MByte or when the local checkpoint is completed.<\/p><\/blockquote>\n<p>I wonder if we should be tuning more? I honestly don&#8217;t know the answer to this &#8211; but I don&#8217;t think it&#8217;s a limiting factor at the moment :)<\/p>\n","protected":false},"excerpt":{"rendered":"<p>(stolen out of Mikael&#8217;s post to the cluster list &#8211; http:\/\/lists.mysql.com\/cluster\/2396) Both REDO and UNDO logs are stored in buffers but are sent after a while to disk. For REDO the disk write happens when 256 kByte of buffer is &hellip; <a href=\"https:\/\/www.flamingspork.com\/blog\/2006\/02\/17\/ndb-disk-io-patterns-redo-and-undo-logs\/\">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_post_was_ever_published":false,"_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}},"categories":[1],"tags":[],"class_list":["post-587","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-9t","jetpack-related-posts":[{"id":3801,"url":"https:\/\/www.flamingspork.com\/blog\/2014\/09\/19\/mysql-architecture\/","url_meta":{"origin":587,"position":0},"title":"Some current MySQL Architecture writings","author":"Stewart Smith","date":"2014-09-19","format":false,"excerpt":"So, I've been looking around for a while (and a few times now) for any good resources that cover a bunch of MySQL architecture and technical details aimed towards the technically proficient but not MySQL literate audience. I haven't really found anything. I mean, there's the (huge and very detailed)\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":586,"url":"https:\/\/www.flamingspork.com\/blog\/2006\/02\/17\/ndb-disk-requirements\/","url_meta":{"origin":587,"position":1},"title":"NDB Disk Requirements","author":"Stewart Smith","date":"2006-02-17","format":false,"excerpt":"up to 3 copies of data (3*DataMemory) + 64MB * NoOfFragLogFiles (default=8) + UNDO log (dependent on update speed) For example: DataMemory=1024MB idea on disk usage= 1024*3 + 64 * 8 =\u00c2\u00a0 3584MB + UNDO log It's very tempting to have a \"SHOW ESTIMATES\" command in the management client\/server that\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":854,"url":"https:\/\/www.flamingspork.com\/blog\/2007\/06\/27\/run-backup-run\/","url_meta":{"origin":587,"position":2},"title":"Run Backup, Run!","author":"Stewart Smith","date":"2007-06-27","format":false,"excerpt":"Over the past N weeks\/couple of months, we've been making a number of improvements to how backups are done in MySQL Cluster. Once you get to large data sets, you start to really care about how long a backup takes. Traditionally, MySQL Cluster has been in-memory only. The way to\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":334,"url":"https:\/\/www.flamingspork.com\/blog\/2005\/01\/06\/effective-bk-usage\/","url_meta":{"origin":587,"position":3},"title":"effective bk usage","author":"Stewart Smith","date":"2005-01-06","format":false,"excerpt":"(inspired by jimw talking about it on Planet MySQL) I take a bit of a different approach... I've got directories for 4.0, 4.1 and 5.0, and within them, i have clones of the main ndb tree (called ndb, so there's a path like \"MySQL\/5.0\/ndb\"). I don't ever edit in this\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":759,"url":"https:\/\/www.flamingspork.com\/blog\/2006\/11\/13\/disk-allocation-xfs-ndb-disk-data-and-more\/","url_meta":{"origin":587,"position":4},"title":"Disk allocation, XFS, NDB Disk Data and more&#8230;","author":"Stewart Smith","date":"2006-11-13","format":false,"excerpt":"I've talked about disk space allocation previously, mainly revolving around XFS (namely because it's what I use, a sensible choice for large file systems and large files and has a nice suite of tools for digging into what's going on).Most people write software that just calls write(2) (or libc things\u2026","rel":"","context":"In &quot;linux-kernel&quot;","block_context":{"text":"linux-kernel","link":"https:\/\/www.flamingspork.com\/blog\/category\/linux-kernel\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":814,"url":"https:\/\/www.flamingspork.com\/blog\/2007\/04\/03\/qa-with-mysql-cluster-content-my-2c-thrown-in\/","url_meta":{"origin":587,"position":5},"title":"Q&#038;A with MySQL Cluster content (my 2c thrown in)","author":"Stewart Smith","date":"2007-04-03","format":false,"excerpt":"Ivan mentions the Q and As from a Q&A session in which MySQL Cluster is mentioned - I thought I'd add my perspective here as well: Q from Matthew: When are we likely to see disk based indexing for ndb? Disk based indexing is planned in one of the future\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":[]}],"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts\/587","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=587"}],"version-history":[{"count":0,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts\/587\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/media?parent=587"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/categories?post=587"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/tags?post=587"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}