back to article AWS outgrows its own resource numbering scheme

Amazon Web Services has extended its resource numbering scheme, after last year warning that without a new scheme it would “start to run low on IDs for certain EC2 and EBS resources within a year or so.” Every AWS resource gets a unique identifier. For most of the service's history those were eight characters in length. But …

  1. Ralph B

    Mathematics

    So, it was 8 characters, and now it's 17. Was the thinking any more scientific than: "Is doubling it enough? Probably, but let's add an extra character, just to be sure."

    1. Adam 1

      Re: Mathematics

      It's doubling of powers though. Just going from 8 to 9 would increase it by 36 fold. Not sure what I'm missing here but there should be about 2.8 trillion combinations of 8 character lower alpha + digit

      = (26 + 10) ^ 8

      Just going to 9 characters gives you 101 quadrillion possibilities, which grabbing my not really Bill Gates hat ought to be enough for anyone.

      I don't follow what they are running out of because these are already big numbers. [citation needed]. My suspicion is that they are concatenating more info into those identifiers (first x characters means y, etc) but that's just a guess.

    2. Anonymous Coward
      Anonymous Coward

      Re: Mathematics

      Why limit the length at all?

      1. TheVogon

        Re: Mathematics

        "Why limit the length at all?"

        Because of potential buffer overflow vulnerabilities? Database schema requirements? Software tool support? That they are not likely to need more possible resource labels than there are particles in the universe?

  2. Tomato42

    Statistics

    Because of the birthday paradox, if the identifiers are assigned at random (and they better be or the whole system is insecure) that after assigning about square root number of all available means you have a 50% chance every time you assign a new one to pick already selected one.

    In other words, they prepare for a more modest number of about 1.69266 * 10^13 (16 trillion short scale, 16 billion long scale) tracked items.

  3. BrowserUk
    Paris Hilton

    It isn't 0-9and a-z (36) but rather 0-9a-f (16) Ie. Hexadecimal.

    Since it takes 2 hex digits to make a byte, and 17 digits isn't divisible by 2; the odds are that they are simply 64-bit (8-byte) integers, displayed in hex and with a single digit checksum.

    And unsigned 64-bit integers gives 2^64 = 18,446,744,073,709,551,616; or ~18e18

    Which is ten orders of magnitude less than your calculation, but still sufficient that every person on the planet could deploy 2.5 billion of each resource type and still leave change.

    (An IT correspondent that doesn't recognise hex? )

  4. Version 1.0 Silver badge

    AWS - too big to fail?

    Well, I for one, am looking forward to the day when their services "experience" technical difficulties.

    I have no particular Luddite view of this, it's just the idea that we seem to be thinking that it's a good idea to put all our eggs in one basket. We're just one curious squirrel away from disaster.

    1. Adam 52 Silver badge

      Re: AWS - too big to fail?

      To strech your already tenuous metaphor, why would you put all your eggs in one basket when you can distribute the between Ireland, Frankfurt and Sydney? Or if you really care, add in soft microfibre bag in Hong Kong too.

      Never has multi-continent resilience been so easy.

      1. smartypants

        Re: AWS - too big to fail?

        ...and even without multi-region, AWS encourages spreading your implementation across availability zones within a single region. An 'AZ' may then often split into multiple data centres.

        And there are advantages of using a 'single basket', including:

        1) Optimised data transfer between different parts of the infrastructure (and it's often free too - e.g. you won't pay for data transfer between EC2 and S3 / Cloudfront) for example, which you would if the transfer hit the public internet)

        2) A single set of APIs to learn, no matter which datacentre you're using.

        3) If things aren't working, a single port of call in determining the issue, rather than having to deal with multiple companies all saying "not me guv"

        ...and if you are choosing a single 'basket', then AWS is a great choice, which is why their business is doing so well.

  5. JeffyPoooh
    Pint

    Tom Scott 'Will YouTube Ever Run Out Of Video IDs?'

    YouTube's ID Space explained

  6. Anonymous Coward
    Anonymous Coward

    birthday paradox doesn't apply

    this is because the birthday paradox presupposes 23 randomly chosen birthdays. this is equivalent to choosing them all at once with a random function.

    in this case we have n *distinct* identifiers and are choosing one more. we can't take advantage of a collision in the pre-allocated numbers because there isn't one. given n randomly distributed allocated numbers in a field of m size, the probability of a collisionis n/m.

    otherwise of course, the previously chosen values would pre-dispose the next choice. but we know numbers aren't calvinist.

  7. Bronek Kozicki
    Coat

    17 characters, bah

    such an odd number

    if 15 or 16 was used

    it would be much nicer

    1. Goopy

      Re: 17 characters, bah

      This number isn't just odd, it's Prime.

POST COMMENT House rules

Not a member of The Register? Create a new account here.

  • Enter your comment

  • Add an icon

Anonymous cowards cannot choose their icon

Other stories you might like