Jiras Lexorank-Algorithmus für neue Geschichten

9

Ich möchte eine große Liste von Elementen erstellen, die das einfache Einfügen neuer Elemente und das einfache Ändern der Position von Elementen in dieser Liste ermöglichen. Wenn ich die Position eines Artikels aktualisiere, möchte ich so wenig Felder wie möglich bezüglich der Reihenfolge der Artikel ändern.

Nach einigen Recherchen fand ich heraus, dass Jiras Lexorank-Algorithmus alle diese Anforderungen erfüllt. Jede Geschichte in Jira hat ein 'Rangfeld', das eine Zeichenfolge enthält, die aus 3 Teilen besteht: <bucket>|<rank>:<sub-rank> . (Ich weiß nicht, ob diese Teile tatsächliche Namen haben, das ist, was ich sie zur Erleichterung der Bezugnahme nennen werde)

Beispiele für gültige Rangfelder:

  • 0|vmis7l:hl4
  • 0|i000w8:
  • 0|003fhy:zzzzzzzzzzzw68bj

Wenn Sie eine Karte über 0|vmis7l:hl4 ziehen, erhält die neue Karte den Rang 0|vmis7l:hl2 , was bedeutet, dass nur das Rangfeld für diese neue Karte aktualisiert werden muss, während die gesamte Liste immer nach diesem Rang sortiert werden kann. Feld. Das ist ziemlich clever, und ich kann mir nicht vorstellen, dass Lexorank der einzige Algorithmus ist, der das verwendet.

  1. Gibt es einen Namen für diese Sortiermethode, die im Unterrang verwendet wird?

Meine Frage bezieht sich auf die Erstellung neuer Karten in Jira. Jede neue Karte beginnt mit einem leeren Unterrang, und der Rang wird immer so gewählt, dass die neue Karte am Ende der Liste steht. Ich habe eine Menge neuer Geschichten erstellt, nur um zu sehen, wie sich der Rang ändern würde, und es scheint, dass der Rang immer um 8 erhöht wird (in Basis 36).

  1. Weiß jemand genauer, wie der Rang für neue Karten generiert wird? Warum wird es um 8 erhöht?

Ich kann mir nur vorstellen, dass nach einiger Zeit (270 Millionen Karten) keine Ränge mehr generiert werden müssen und das System das Rangfeld aller Karten neu berechnen muss, um Platz für zusätzliche Ränge zu schaffen.

  1. Gibt es andere Trigger, die eine Neuberechnung aller Rangfelder erfordern?
  2. Ich nehme an, der Bucket spielt bei dieser Neuberechnung eine Rolle. Ich würde gerne wissen wie?
Pruik 21.11.2016, 11:20
quelle

0 Antworten

Tags und Links