Rene Adelmann: Hex-Zufallswerte

Hallo,

ich benutze eine Funktion, die einen Zufallswert erzeugt, 0-9 und a-f, also zB sowas wie "fae03". Idee ist es, Indizes zu erzeugen, ohne eine DB zu nutzen.

Ohne DB kann ich aber nicht prüfen, ob der Wert schon erzeugt wurde, ohne jedesmal das Array zu durchforsten, was der Performance auf Dauer abträglich wäre.

Pro Session dürften so 10.000 Werte anfallen - jetzt kommt die Frage, denn ich bin mathematisch völlig unbegabt - wieviele Stellen sollte der Wert haben, um die Wahrscheinlichkeit der doppelten Vergabe so gering wie möglich zu halten? Sind die 5 ausreichend?

  1. ich benutze eine Funktion, die einen Zufallswert erzeugt, 0-9 und a-f, also zB sowas wie "fae03". Idee ist es, Indizes zu erzeugen, ohne eine DB zu nutzen.

    Wozu?

    Ohne DB kann ich aber nicht prüfen, ob der Wert schon erzeugt wurde, ohne jedesmal das Array zu durchforsten, was der Performance auf Dauer abträglich wäre.

    Du willst also doch eine Datenbank verwenden, die ID aber Hexadezimal haben und daher glaubst du, sie selbst generieren zu müssen?

    Pro Session dürften so 10.000 Werte anfallen - jetzt kommt die Frage, denn ich bin mathematisch völlig unbegabt - wieviele Stellen sollte der Wert haben, um die Wahrscheinlichkeit der doppelten Vergabe so gering wie möglich zu halten? Sind die 5 ausreichend?

    5-Stellen sind nichtmal ansatzweise ausreichend, bei 5 Hexadezimalstellen hast du 16.777.215 Werte - die und bevor du jetzt die Wahrscheinlichkeit einer Kollision ausrechnest, indem du den Wertbereich durch den benötigten Bereich teilst, weise ich dich auf das Geburtstagsparadoxon hin.

    Was hast du gegen das Session-Handling von PHP?

    Oder noch besser: was zur Hölle hast du vor?

    1. Hello,

      [...] weise ich dich auf das Geburtstagsparadoxon hin.

      So böse das klingt, aber das hätten die in Japan beachten sollen. Wenn man sechs Reaktoren in einer Farm so dicht nebeneinander baut, und dann sogar noch teilweise mit derselben Versorgungs- und Nottechnik betreibt, schreit man ja förmlich nach einem GAU.

      Liebe Grüße aus dem schönen Oberharz

      Tom vom Berg

      --
       ☻_
      /▌
      / \ Nur selber lernen macht schlau
      http://bergpost.annerschbarrich.de
      1. Grüße,

        [...] weise ich dich auf das Geburtstagsparadoxon hin.

        So böse das klingt, aber das hätten die in Japan beachten sollen. Wenn man sechs Reaktoren in einer Farm so dicht nebeneinander baut, und dann sogar noch teilweise mit derselben Versorgungs- und Nottechnik betreibt, schreit man ja förmlich nach einem GAU.

        klingelst du demnächst sonntags, um 6 früh an den türen von unbekannten leuten, um mit freundlichem lächeln "wollen sie über atomkraft reden?" zu sagen? oder ist das forced meme versuch?
        MFG
        bleicher

        --
        __________________________-

        FirefoxMyth
        1. Hello,

          [...] weise ich dich auf das Geburtstagsparadoxon hin.

          So böse das klingt, aber das hätten die in Japan beachten sollen. Wenn man sechs Reaktoren in einer Farm so dicht nebeneinander baut, und dann sogar noch teilweise mit derselben Versorgungs- und Nottechnik betreibt, schreit man ja förmlich nach einem GAU.

          klingelst du demnächst sonntags, um 6 früh an den türen von unbekannten leuten, um mit freundlichem lächeln "wollen sie über atomkraft reden?" zu sagen?

          Im Moment ist das, glaube ich, nicht notwendig. Aber ich werde mir Deine Idee gut merken, wenn in einem Jahr die meisten wieder alles verdrängt oder vergessen haben...

          Liebe Grüße aus dem schönen Oberharz

          Tom vom Berg

          --
           ☻_
          /▌
          / \ Nur selber lernen macht schlau
          http://bergpost.annerschbarrich.de
          1. Grüße,

            klingelst du demnächst sonntags, um 6 früh an den türen von unbekannten leuten, um mit freundlichem lächeln "wollen sie über atomkraft reden?" zu sagen?

            Im Moment ist das, glaube ich, nicht notwendig. Aber ich werde mir Deine Idee gut merken, wenn in einem Jahr die meisten wieder alles verdrängt oder vergessen haben...

            du bist so ein gauweiler!
            MFG
            bleicher

            --
            __________________________-

            FirefoxMyth
            1. Hello,

              klingelst du demnächst sonntags, um 6 früh an den türen von unbekannten leuten, um mit freundlichem lächeln "wollen sie über atomkraft reden?" zu sagen?

              Im Moment ist das, glaube ich, nicht notwendig. Aber ich werde mir Deine Idee gut merken, wenn in einem Jahr die meisten wieder alles verdrängt oder vergessen haben...

              du bist so ein gauweiler!

              Ich weiß zwar nicht, was das ist. Aber wenn es dich glücklich macht ;-P

              Ich hatte das Posting eigentlich wirklich nur auf die Wahrscheinlichkteitstheorie beziehen wollen. Warum Du da so zickig reagierst, verstehe ich jetzt nicht.

              Man würde im ersten Moment annehmen, dass die Wahrscheinlichkeit eines GAUs nur auf das sechsfache steigt, wenn man sechs Blöcke so dicht nebeneinander baut. Aber die Trefferwahrscheinlichkeit steigt eben auch hier nicht linear zur Anzahl der möglichen Kollisionspartner. Ob sie nun aber exponentiell steigt, weiß ich nicht. Ich nehme an, dass es "irgendwas dazwischen" ist.

              Liebe Grüße aus dem schönen Oberharz

              Tom vom Berg

              --
               ☻_
              /▌
              / \ Nur selber lernen macht schlau
              http://bergpost.annerschbarrich.de
  2. Hi!

    wieviele Stellen sollte der Wert haben, um die Wahrscheinlichkeit der doppelten Vergabe so gering wie möglich zu halten?

    So gering wie möglich ist nahe 0 und das erreichst du nicht mit Zufallszahlen. Die Zufallsalgorithmen sind nicht dafür ausgelegt, sich über lange Zeit nicht zu wiederholen. Dir nützt die Wahrscheinlichkeit von "gering" überhaupt nichts, wenn es doch mal doppelte Werte ergibt. Nimm besser uniqid().

    Lo!