{"id":80,"date":"2014-07-09T19:35:58","date_gmt":"2014-07-09T19:35:58","guid":{"rendered":"http:\/\/outworx.com\/blog\/?p=80"},"modified":"2017-01-20T11:11:45","modified_gmt":"2017-01-20T11:11:45","slug":"storage-policies-coming-to-openstack-swift","status":"publish","type":"post","link":"https:\/\/www.outworx.com\/blog\/storage-policies-coming-to-openstack-swift\/","title":{"rendered":"Storage Policies Coming to OpenStack Swift"},"content":{"rendered":"<p>The good folks at OpenStack recently announced two big new features in Swift for the Juno time frame: Storage Policies and Erase Codes. These new features are going to improve the accessibility\u00a0that functionability\u00a0of Swift. Here is all you need to know about these new features:<\/p>\n<h3><span style=\"color: #808080;\"><strong>Storage Policies:<\/strong><\/span><\/h3>\n<p>With Storage Policies, users can now select the set of disks that best suite their needs.\u00a0 For example, suppose the Swift Admin defines a Storage Policy for SSD disks.\u00a0 Users could specify this Storage Policy for objects that need rapid access.<\/p>\n<p>Internally, a Storage Policy maps a set of disks in the Swift cluster to the Storage Policy&#8217;s name.\u00a0 It is up to the Swift Administrator to define the mapping and the names.\u00a0 The Administrator then tells the users about the various Storage Policies that are available and what they do.<\/p>\n<p>Swift stores objects in containers.\u00a0 When a programmer creates a container, he can specify its Storage policy.\u00a0 All objects created in that container will then be located on the disks for that Policy.<\/p>\n<p>There are many use cases for Storage Policies.\u00a0 For example, you could use Storage Policies to constrain data to certain geographical regions for, say, regulatory compliance.\u00a0 You might have a Storage Policy for self-encrypting drives (SED) that offer more secure storage for sensitive data.\u00a0 You can also have Storage Policies that use different Replica counts.\u00a0 If you have data that you can afford to lose, you might a Storage Policy with a Replica count of 2 or even 1.<\/p>\n<h3><span style=\"color: #808080;\"><strong>Erasure Codes:<\/strong><\/span><\/h3>\n<p>The second big announcement was Swift support for Erasure Codes.<\/p>\n<p>Previously, Swift only supported Replicas to recover from failures.\u00a0 Each blob of data was typically written to three different disks.\u00a0 With Erasure Codes (EC), you can reduce the storage you use.\u00a0 The data is encoded and decoded transparently on the Swift proxy nodes.\u00a0 When a failure happens, the missing data is recovered from the surviving encoded chunks.<\/p>\n<p>Erasure codes do come at a price, though.\u00a0 They use more processing power on the proxy nodes than Replicas.\u00a0 Internally, Swift has to make more network connections when using Erase Codes, since the chunks are more spread out than Replicas.<\/p>\n<p>One nice feature is that a single Swift cluster can support both Replicas and Erasure Codes.\u00a0 You just specify which one you want in a Storage Policy.<\/p>\n<p>&nbsp;<\/p>\n<p>You can read more about these new features in the this\u00a0 <a href=\"http:\/\/superuser.openstack.org\/articles\/enterprises-and-app-developers-have-more-control-as-swift-gains-storage-policies\">OpenStack SuperUser article<\/a>.\u00a0\u00a0 Joe Arnold also has a nice <a href=\"https:\/\/swiftstack.com\/blog\/2013\/07\/17\/erasure-codes-with-openstack-swift-digging-deeper\/\">blog entry<\/a> describing Swift Erase Codes in more technical detail.\u00a0 The Juno release is October 2014, so the features should be generally available then.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The good folks at OpenStack recently announced two big new features in Swift for the Juno time frame: Storage Policies and Erase Codes. These new features are going to improve the accessibility\u00a0that functionability\u00a0of Swift. Here is all you need to know about these new features: Storage Policies: With Storage Policies, users can now select the &hellip; <a href=\"https:\/\/www.outworx.com\/blog\/storage-policies-coming-to-openstack-swift\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Storage Policies Coming to OpenStack Swift&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"xn-wppe-expiration":[],"xn-wppe-expiration-action":[],"xn-wppe-expiration-prefix":[],"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0},"categories":[11,12],"tags":[],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v17.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Storage Policies Coming to OpenStack Swift | OutworX<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.outworx.com\/blog\/storage-policies-coming-to-openstack-swift\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Storage Policies Coming to OpenStack Swift | OutworX\" \/>\n<meta property=\"og:description\" content=\"The good folks at OpenStack recently announced two big new features in Swift for the Juno time frame: Storage Policies and Erase Codes. These new features are going to improve the accessibility\u00a0that functionability\u00a0of Swift. Here is all you need to know about these new features: Storage Policies: With Storage Policies, users can now select the &hellip; Continue reading &quot;Storage Policies Coming to OpenStack Swift&quot;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.outworx.com\/blog\/storage-policies-coming-to-openstack-swift\/\" \/>\n<meta property=\"og:site_name\" content=\"OutworX\" \/>\n<meta property=\"article:published_time\" content=\"2014-07-09T19:35:58+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2017-01-20T11:11:45+00:00\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.outworx.com\/blog\/#website\",\"url\":\"https:\/\/www.outworx.com\/blog\/\",\"name\":\"OutworX\",\"description\":\"Blogs, News and Updates of IT Industry | OutworX\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.outworx.com\/blog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.outworx.com\/blog\/storage-policies-coming-to-openstack-swift\/#webpage\",\"url\":\"https:\/\/www.outworx.com\/blog\/storage-policies-coming-to-openstack-swift\/\",\"name\":\"Storage Policies Coming to OpenStack Swift | OutworX\",\"isPartOf\":{\"@id\":\"https:\/\/www.outworx.com\/blog\/#website\"},\"datePublished\":\"2014-07-09T19:35:58+00:00\",\"dateModified\":\"2017-01-20T11:11:45+00:00\",\"author\":{\"@id\":\"https:\/\/www.outworx.com\/blog\/#\/schema\/person\/4a222258173fdc00e104b30c5fc10632\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.outworx.com\/blog\/storage-policies-coming-to-openstack-swift\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.outworx.com\/blog\/storage-policies-coming-to-openstack-swift\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.outworx.com\/blog\/storage-policies-coming-to-openstack-swift\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.outworx.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Storage Policies Coming to OpenStack Swift\"}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.outworx.com\/blog\/#\/schema\/person\/4a222258173fdc00e104b30c5fc10632\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/www.outworx.com\/blog\/#personlogo\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/91f39a5ea2f90d0d957945f581465a21?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/91f39a5ea2f90d0d957945f581465a21?s=96&d=mm&r=g\",\"caption\":\"admin\"},\"description\":\"Outworx@Admin\",\"url\":\"https:\/\/www.outworx.com\/blog\/author\/admin\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Storage Policies Coming to OpenStack Swift | OutworX","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.outworx.com\/blog\/storage-policies-coming-to-openstack-swift\/","og_locale":"en_US","og_type":"article","og_title":"Storage Policies Coming to OpenStack Swift | OutworX","og_description":"The good folks at OpenStack recently announced two big new features in Swift for the Juno time frame: Storage Policies and Erase Codes. These new features are going to improve the accessibility\u00a0that functionability\u00a0of Swift. Here is all you need to know about these new features: Storage Policies: With Storage Policies, users can now select the &hellip; Continue reading \"Storage Policies Coming to OpenStack Swift\"","og_url":"https:\/\/www.outworx.com\/blog\/storage-policies-coming-to-openstack-swift\/","og_site_name":"OutworX","article_published_time":"2014-07-09T19:35:58+00:00","article_modified_time":"2017-01-20T11:11:45+00:00","twitter_misc":{"Written by":"admin","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebSite","@id":"https:\/\/www.outworx.com\/blog\/#website","url":"https:\/\/www.outworx.com\/blog\/","name":"OutworX","description":"Blogs, News and Updates of IT Industry | OutworX","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.outworx.com\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.outworx.com\/blog\/storage-policies-coming-to-openstack-swift\/#webpage","url":"https:\/\/www.outworx.com\/blog\/storage-policies-coming-to-openstack-swift\/","name":"Storage Policies Coming to OpenStack Swift | OutworX","isPartOf":{"@id":"https:\/\/www.outworx.com\/blog\/#website"},"datePublished":"2014-07-09T19:35:58+00:00","dateModified":"2017-01-20T11:11:45+00:00","author":{"@id":"https:\/\/www.outworx.com\/blog\/#\/schema\/person\/4a222258173fdc00e104b30c5fc10632"},"breadcrumb":{"@id":"https:\/\/www.outworx.com\/blog\/storage-policies-coming-to-openstack-swift\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.outworx.com\/blog\/storage-policies-coming-to-openstack-swift\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.outworx.com\/blog\/storage-policies-coming-to-openstack-swift\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.outworx.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Storage Policies Coming to OpenStack Swift"}]},{"@type":"Person","@id":"https:\/\/www.outworx.com\/blog\/#\/schema\/person\/4a222258173fdc00e104b30c5fc10632","name":"admin","image":{"@type":"ImageObject","@id":"https:\/\/www.outworx.com\/blog\/#personlogo","inLanguage":"en-US","url":"https:\/\/secure.gravatar.com\/avatar\/91f39a5ea2f90d0d957945f581465a21?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/91f39a5ea2f90d0d957945f581465a21?s=96&d=mm&r=g","caption":"admin"},"description":"Outworx@Admin","url":"https:\/\/www.outworx.com\/blog\/author\/admin\/"}]}},"_links":{"self":[{"href":"https:\/\/www.outworx.com\/blog\/wp-json\/wp\/v2\/posts\/80"}],"collection":[{"href":"https:\/\/www.outworx.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.outworx.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.outworx.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.outworx.com\/blog\/wp-json\/wp\/v2\/comments?post=80"}],"version-history":[{"count":7,"href":"https:\/\/www.outworx.com\/blog\/wp-json\/wp\/v2\/posts\/80\/revisions"}],"predecessor-version":[{"id":907,"href":"https:\/\/www.outworx.com\/blog\/wp-json\/wp\/v2\/posts\/80\/revisions\/907"}],"wp:attachment":[{"href":"https:\/\/www.outworx.com\/blog\/wp-json\/wp\/v2\/media?parent=80"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.outworx.com\/blog\/wp-json\/wp\/v2\/categories?post=80"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.outworx.com\/blog\/wp-json\/wp\/v2\/tags?post=80"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}