no hilo and that are two different methods ... but you could pretty
easily put them together ...

hilo generates a base 2 number (usually displayed as a base 10 number)
just make it base 36 ....

Cheers,

Greg

On Wed, Apr 15, 2009 at 1:37 PM, Caio Kinzel Filho <cai...@gmail.com> wrote:
>
> Is there a way I ensure that HiLo will generate for the 80bit key,
> only combinations of letters/numbers?
>
> On Wed, Apr 15, 2009 at 2:18 PM, Greg Young <gregoryyou...@gmail.com> wrote:
>>
>> Assuming this is all so you can be occasionally connected and still
>> generate an id
>>
>> do id checkouts ... say each occasionally connected client has 1000
>> ids and when they run out they check out new ones ...
>>
>> use things with enough randomness ... using letters helps with
>> representing these ... you can fit a random 80 bit number into a much
>> smaller character field (numbers/characters). Your chance of collision
>> at 1/2^80 is small enough for most systems ...
>>
>> use something similar to nhibernate's hilo generator.
>>
>> Greg
>>
>> On Wed, Apr 15, 2009 at 1:12 PM, Caio Kinzel Filho <cai...@gmail.com> wrote:
>>>
>>> I agree with you on "generally they receive an id when they reach a
>>> central system",
>>>
>>> but my scenario is a little bit different:
>>> The "user" actually is a company operator, placing orders received by
>>> phone for a customer.
>>> The customer must receive an order id, for tracking purposes, etc
>>> The order is placed but its state is not yet "Confirmed" ( _that_ will
>>> happen when the order is processed by the central system)
>>>
>>>
>>> On Wed, Apr 15, 2009 at 2:02 PM, Greg Young <gregoryyou...@gmail.com> wrote:
>>>>
>>>> Thsoe types of numbers are not generally created assigned in an
>>>> occasionally connected system ... maybe I am misunderstanding you ...
>>>> generally they receive an id when they reach a central system.
>>>>
>>>> On Wed, Apr 15, 2009 at 1:00 PM, Caio Kinzel Filho <cai...@gmail.com> 
>>>> wrote:
>>>>>
>>>>> One scenario:
>>>>> A user post an order, and receives as a confirmation, an order number
>>>>> (which must be unique and so, it's my primary key).
>>>>> It would be akward to see something like:
>>>>>
>>>>> "Your order is:  3F2504E0-4F89-11D3-9A0C-0305E82C3301"
>>>>>
>>>>>
>>>>> On Wed, Apr 15, 2009 at 1:56 PM, Greg Young <gregoryyou...@gmail.com> 
>>>>> wrote:
>>>>>>
>>>>>> Why do you want human readable keys?
>>>>>>
>>>>>> On Wed, Apr 15, 2009 at 12:53 PM, caiokf <cai...@gmail.com> wrote:
>>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>> Which approach do you guys suggest to handle Primary Keys in an
>>>>>>> occasionally connected system?
>>>>>>>
>>>>>>> In my understanding, the options are:
>>>>>>>
>>>>>>> - GUIDs/UUIDs : which present a non-human readable key, which I want
>>>>>>> to avoid.
>>>>>>> - AppID, ID: difficult to mantain the AppID for all the clients, and I
>>>>>>> think it kind of polute my domain.
>>>>>>> - Some sort of Primary Key Pool: how could I integrate that with
>>>>>>> NHibernate in a (most) transparent way (as possible)?
>>>>>>>
>>>>>>> If someone has some other suggestion or stories about that matter, it
>>>>>>> would be very helpfull.
>>>>>>>
>>>>>>> Thanks,
>>>>>>> Caio
>>>>>>> >
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> It is the mark of an educated mind to be able to entertain a thought
>>>>>> without accepting it.
>>>>>>
>>>>>> >
>>>>>>
>>>>>
>>>>> >
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> It is the mark of an educated mind to be able to entertain a thought
>>>> without accepting it.
>>>>
>>>> >
>>>>
>>>
>>> >
>>>
>>
>>
>>
>> --
>> It is the mark of an educated mind to be able to entertain a thought
>> without accepting it.
>>
>> >
>>
>
> >
>



-- 
It is the mark of an educated mind to be able to entertain a thought
without accepting it.

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"nhusers" group.
To post to this group, send email to nhusers@googlegroups.com
To unsubscribe from this group, send email to 
nhusers+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/nhusers?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to