Thanks for your answer. I know that the numeric ID comes "for free" on
the side of the db.key key, that is the king. I also know that IDs are
unique only across entities with the same parent, which is compatible
with what I need to do.

I still lack that information I originally asked for, though. Imagine
I was writing a Bit.ly clone, with 6 letter short URLs over a set of
RFC-1738 allowed characters, that is made of 74 case-sensitive
characters. The total number of short URLs I can have is Math.pow(74,
6) = 164,206,490,176 .

If I knew that numeric IDs were made of unconstrained 64 bit integers,
I would be ok. But if it's 32 bit integers, than it's not enough (max
is Math.pow(2, 32) - 1 = 4,294,967,295, unsigned).

I would also like to be able to do the reverse calculation. E.g. if
the max table size in the datastore is as big as a 64 bit integer
gets, what's the longest short URL I can support? It's
Math.log(Math.pow(2, 64)) / Math.log(74) = 10 ...

How do I know that a datastore table can get to that size, and how
numeric IDs will look like?

Thanks!

Giacecco


On Jul 28, 12:57 am, Geoffrey Spear <[email protected]> wrote:
> db.Key is the type of the key, not the numeric ID; the ID is an
> integer.  I believe they're limited to 64 bits, the same as an
> IntegerProperty.
>
> Note that a key isn't required to have a numeric ID; it could have a
> key name instead.  And IDs aren't unique across the datastore; only
> within a Kind for entities with the same parent.
>
> On Jul 27, 4:15 pm, Giacecco <[email protected]> wrote:
>
>
>
> > Dear all, I have searched the answer to this in the group and in the
> > FAQ but was not successful, although it seems quite a trivial
> > question: what's the max numeric id I could find in the datastore if I
> > kept adding data to it?
>
> > I need to base part of my algorithms on the key numeric value, so I
> > need to know what I can expect from it: min, max values etc.. The
> > documentation says that it is of type "db.key" but nothing more than
> > that. And, even knowing its type, are there any logic constraints to
> > its value that I should know about?
>
> > Am I missing something perhaps?
>
> > Thanks!
>
> > Giacecco

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.

Reply via email to