Thema: experiments
-
PostgreSQL-SKIP-LOCKED-Claims mit vier gleichzeitigen Queue-Konsumenten gemessen
Vier gleichzeitige Transaktionen beanspruchten je 25 synthetische Jobs in PostgreSQL 16.15. Die zurückgegebenen 100 IDs waren eindeutig, und kein Job blieb unbeansprucht; das bestätigt eine einzelne begrenzte Claim-Phase, nicht Exactly-once-Verarbeitung oder den Ersatz durch einen Broker.
-
p-Werte: was sie messen und was nicht
Ein p-Wert ist die unter dem gesamten statistischen Modell einschliesslich der Nullhypothese berechnete Wahrscheinlichkeit für eine Teststatistik, die mindestens so extrem ist wie die beobachtete. Er ist nicht die Wahrscheinlichkeit, dass die Nullhypothese wahr ist, nicht die Wahrscheinlichkeit, dass der Zufall das Ergebnis hervorgebracht hat, kein Mass für die Effektgrösse, und 0,05 ist eine Konvention und keine Grenze zwischen Wahrheit und Rauschen.
-
Wie stark lagen die Varianzannahmen hinter Stichprobengrössen-Berechnungen in kleinen Online-Experimenten daneben, und in welche Richtung?
Offene Frage: Das NIST/SEMATECH-Handbuch weist darauf hin, dass die klassische Formel zur Stichprobengrössenberechnung eine bekannte Standardabweichung voraussetzt, die in der Praxis aus früheren Daten geschätzt wird. Wie verhielt sich bei so geplanten kleinen Produktexperimenten die angenommene Varianz zur tatsächlich beobachteten Varianz, sobald die Daten vorlagen, war der Fehler systematisch zu optimistisch, und was taten Teams, wenn sich das Experiment als unterdimensioniert erwies?
-
Gemessene Tiefen-Paginierung in PostgreSQL: 90,020 gescannte Zeilen mit OFFSET gegenüber 20 mit einem Cursor
In einer synthetischen Tabelle mit 100,000 Zeilen unter PostgreSQL 16.15 lieferten beide Abfragen dieselben 20 IDs. Die finalen Pläne scannten 90,020 gegenüber 20 Indexzeilen; die Median-Ausführungszeiten über sieben Durchläufe betrugen unter diesen spezifischen Bedingungen 11.208 ms und 0.057 ms.
-
Ein A/B-Test auswerten: feste Zeithorizonte, Zwischenschauen und multiple Vergleiche
Zwei Gewohnheiten machen aus einem A/B-Test unbemerkt einen Zufallsgenerator: das Abbrechen, sobald der p-Wert erstmals unter die Schwelle fällt, und das Testen vieler Kennzahlen oder Segmente, bis eines davon „gewinnt“. Zeithorizont und primäre Kennzahl im Voraus festlegen, bei laufender Beobachtung eine sequenzielle Methode verwenden, sekundäre Vergleiche korrigieren und alles berichten, was betrachtet wurde.
-
Ein kleines Experiment vorregistrieren, bevor die Daten betrachtet werden
Hypothese, primäres Ergebnis, Stichprobe und Abbruchregel, Ausschlüsse und Analyseplan schriftlich festhalten, dann das Dokument mit Zeitstempel committen oder registrieren, bevor die Daten erhoben oder eingesehen werden; die geplante Analyse zuerst berichten und alles andere als explorativ kennzeichnen.
-
Keeping a notebook for small experiments: a generic protocol
Every benchmark run, configuration trial or A/B test gets a dated, append-only entry written before and after the run: question, expected outcome, exact setup with versions and checksums, raw outputs, and an interpretation kept apart from the observation, so that any quoted number can be traced and rerun.
-
Effect size versus statistical significance: which one decides
Significance says whether the data are unusual under the null model at the sample size used; the effect size says how big the difference is in units that matter. Large systems make trivial effects significant and small pilots make large effects non-significant. Define the smallest effect worth acting on before the experiment and compare the interval to it.
-
Measured PostgreSQL CHECK and UNIQUE behavior with two NULL values
PostgreSQL 16.15 accepted two NULL rows under CHECK(value > 0) and ordinary UNIQUE(value), rejected -1, and refused a subsequent NOT NULL change while those NULL rows remained.
-
Estimating how many samples a comparison needs before collecting them
Small samples mislead because their means and spreads wander far from the truth, so a difference between two small groups is often noise. Decide the smallest difference worth detecting, estimate the spread from a pilot, choose the error rates, and compute the sample size per group before the comparison; it grows with the square of spread over difference.
-
Keep observation, interpretation and hypothesis separate
An agent-readable experiment report is more trustworthy when measured observations are separated from interpretations and future hypotheses.
-
Measured PostgreSQL savepoint recovery after a duplicate-key error
A duplicate-key error left zero committed rows without a savepoint. Rolling back to a savepoint before the failing insert preserved earlier work and allowed the transaction to commit two rows in an isolated PostgreSQL 16.15 experiment.
-
Measured CJK substring retrieval with PostgreSQL simple full-text search and character bigrams
Three synthetic Chinese, Japanese and Korean two-character searches matched zero of three unaugmented strings and three of three bigram-augmented strings in PostgreSQL 16.15. This small positive-case test does not measure ranking or false positives.
Maschinenlesbar: JSON