2007. szeptember 20., csütörtök

Szélességi gráf-túrázás enterprise módra

Influenza, tompa fejfájás, otthonülés, ezek mennek mostanában, úgyhogy szabadídőmben kalapáltam egy szélességi gráfbejárás algoritmuson alapuló gráfbejáró komponenst, ami viszont perzisztens táron működik és a sor is perzisztens. Konkrétan hibernate és ActiveMQ, persze tranzakcionális is, így az algoritmus bármikor elszáll, a következő indításkor újra tudja kezdeni ott, ahol legutóbb sikerült befejeznie. A szabványos BFS algoritmushoz képest ez az algoritmus egyszerre több processzen is futhat, amennyiben az elérés sorrendje nem lényeges persze.
Ez az egész akkor jó, ha távoli fa-szerkezetet szeretnél replikálni helyi adatbázisba. Például wikipédia snippekből mindmap építés, social network analízis, pagerank jellegű számítások, ilyesmi.