The ring is the beating heart of Swift. It's what defines cluster membership and ensures disperse and balanced placement. Therefore, understanding the ring means you understand a whole lot of how Swift works.
Good luck on the journey! There's been quite a few words written and spoken about the ring over the years, and, in fact, we've made significant improvements as well. Although the basic concept hasn't changed, we've gotten better at doing the right thing at the right time. That is to say, if you find stuff online about how the ring works, even if it's old info, it's likely still accurate in general. Here's some further things to look at: https://www.openstack.org/videos/video/forget-everything-you-knew-about-swift-rings-heres-everything-you-need-to-know-about-swift-rings https://www.swiftstack.com/blog/2012/11/21/how-the-ring-works-in-openstack-swift/ http://docs.openstack.org/developer/swift/ring_background.html http://docs.openstack.org/developer/swift/overview_ring.html http://www.florentflament.com/blog/openstack-swift-ring-made-understandable.html https://www.openstack.org/blog/2012/02/1997/ Hope these help. Please ask if you have more questions, or drop by #openstack-swift. --John On 9 Feb 2017, at 23:19, Mark Kirkwood wrote: > Hi Sameer, > > A good question - the docs do mention a 'far apart as possible' distribution > algorithm. If you study the code (in swift/common/ring*.py) there is a > discussion of tiers (zone and region) which relate to this concept. Now I've > not studied this in enough detail myself (yet) to give you a good/fast > summary (maybe some others can) but this is the area to look at if you want > do understand how it works! > > > Cheers > > > Mark > > > On 10/02/17 19:34, Sameer Kulkarni wrote: >> Hi All, >> >> I was trying to understand the Ring Algorithm for Openstack Swift. I have >> went through official docs. I found that it uses Consistent Hashing Ring[1]. >> >> But the problem is, It doesn't mention about the features of Swift like >> Given 3 regions, Each file should go to different regions etc. >> >> If I have 8 nodes with equal weights, then a couple of nodes are always >> empty even after inserting 20 files [with each of 3 replicas]. I feel that >> this doesn't happen in Swift Algorithm, But only in Consistent Hashing Ring. >> * >> * >> *So, what other things Swift Ring Algorithm have apart from Consistent >> Hashing Ring?* >> >> Thank you >> >> Sameer Kulkarni >> > > > _______________________________________________ > Mailing list: http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack > Post to : openstack@lists.openstack.org > Unsubscribe : http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Mailing list: http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack Post to : openstack@lists.openstack.org Unsubscribe : http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack