Re: Random-looking primary keys in the range 100000..999999

Поиск
Список
Период
Сортировка
От hubert depesz lubaczewski
Тема Re: Random-looking primary keys in the range 100000..999999
Дата
Msg-id CAKrjmhdW=+yJWnM=t+UjZAKpdvfT-NjKD5HzamGF8pHvP6_RbA@mail.gmail.com
обсуждение исходный текст
Ответ на Random-looking primary keys in the range 100000..999999  (Kynn Jones <kynnjo@gmail.com>)
Ответы Re: Random-looking primary keys in the range 100000..999999  (Kynn Jones <kynnjo@gmail.com>)
Список pgsql-general
How many rows do you plan on having in this table? Why this particular key range?

depesz


On Fri, Jul 4, 2014 at 3:24 PM, Kynn Jones <kynnjo@gmail.com> wrote:
I'm looking for a way to implement pseudorandom primary keys in the range 100000..999999.

The randomization scheme does not need to be cryptographically strong.  As long as it is not easy to figure out in a few minutes it's good enough.

My starting point for this is the following earlier message to this list:

http://www.postgresql.org/message-id/49F96730.4000706@postnewspapers.com.au

The answer given to it here

http://www.postgresql.org/message-id/448163db-cac5-4e99-8c4c-57cbc6f6af78@mm

...is really cool, but I don't see how to modify it for the case where the domain of the permutation has a cardinality that is not a power of 2, as it is in my case (cardinality = 900000).

---

(In the crypto world there are "format preserving encryption" techniques that probably could do what I want to do, but their focus on cryptographic strength makes learning and implementing them tough going, plus, the performance will probably be poor, since high workloads are an asset for such crypto applications.  Since cryptographic strength is not something I need, I'm trying to find non-crypt-grade alternatives.)

Thanks in advance!

kynn


В списке pgsql-general по дате отправления:

Предыдущее
От: Kynn Jones
Дата:
Сообщение: Random-looking primary keys in the range 100000..999999
Следующее
От: Tom Lane
Дата:
Сообщение: Re: pg_dump slower than pg_restore