Re: Re: Mapping output from a SEQUENCE into something non-repeating/colliding but random-looking? - Mailing list pgsql-general

From Erik Jones
Subject Re: Re: Mapping output from a SEQUENCE into something non-repeating/colliding but random-looking?
Date
Msg-id AB5B0C2A-4A20-48B8-9054-656878CB6E43@engineyard.com
Whole thread Raw
In response to Re: Re: Mapping output from a SEQUENCE into something non-repeating/colliding but random-looking?  (Craig Ringer <craig@postnewspapers.com.au>)
List pgsql-general
On May 1, 2009, at 6:06 AM, Craig Ringer wrote:

<snip>

> What I'm looking for is a function that, given an input within a
> constrained range (say, a 32 bit integer) produces a different output
> within the same range. For any given input, the output should be the
> same each time, and for any given output there should only be one
> input
> that results in that output.

I think you drop the idea of a repeatable mapping you may have some
success with the Knuth (aka Fisher-Yates) shuffle algorithm:  http://en.wikipedia.org/wiki/Fisher%E2%80%93Yates_shuffle

   Why does anything need to be repeatable when you only need to make
sure that each number is only generated once?

Erik Jones, Database Administrator
Engine Yard
Support, Scalability, Reliability
866.518.9273 x 260
Location: US/Pacific
IRC: mage2k






pgsql-general by date:

Previous
From: Terry Lee Tucker
Date:
Subject: Re: Two Questions Re: Warm Backup
Next
From: Jasen Betts
Date:
Subject: Re: Mapping output from a SEQUENCE into something non-repeating/colliding but random-looking?