Bestand :: SortedSeek

Bestand :: SortedSeek is een PERL-module die snelle toegang tot grote bestanden biedt.
Download nu

Bestand :: SortedSeek Rangschikking & Samenvatting

Advertentie

  • Rating:
  • Vergunning:
  • Perl Artistic License
  • Prijs:
  • FREE
  • Naam uitgever:
  • Dr James Freeman
  • Uitgever website:
  • http://search.cpan.org/~jfreeman/File-SortedSeek-0.012/SortedSeek/SortedSeek.pm

Bestand :: SortedSeek Tags


Bestand :: SortedSeek Beschrijving

Bestand :: SortedSeek is een PERL-module die snelle toegang tot grote bestanden biedt. Bestand :: SortedSeek is een PERL-module die snelle toegang biedt tot grote bestanden.Synopsis Gebruik bestand :: SortedSeek ': ALL'; open groot, $ bestand of sterven $!; # Zoek een nummer of het eerste nummer groter in een bestand (oplopende volgorde) $ TELL = numeriek (* groot, $ nummer); # Lees een regel in van waar we overeenkomen met het bestand $ line = ; Print "Gevonden exacte match als $ lijn" als bestand :: SortedSeek: was_exact (); # Zoek een tekenreeks of de eerste snaar groter in een bestand (alfabetische volgorde) $ TELL = alfabetisch (* groot, $ string); $ regel = ; # Zoek een datum in een logfile levering van een scalaire lokaal Type String $ TELL = FIND_TIME (* groot, "23 augustus 22:59:162001"); # of levering van GMT EPOCH TIME $ TELL = FIND_TIME (* BIG, 998571554); # Krijg alle regels na onze datum @lines = ; # Krijg de lijnen tussen twee logfile datums $ BEGIN = Find_Time (* Log, $ Start); $ einde = find_time (* log, $ finish); # Krijg lijnen als een array @lines = get_between (* log, $ begin, $ einde); # Krijg lijnen als een array-referentie $ regels = gett_between (* log, $ begin, $ einde); # Gebruik je sub om de bestandslijngegevens te meenemen vóór vergelijking $ TELL = numeriek (* groot, $ nummer, epoch); $ vertel = alfabetisch (* groot, $ string, muntgewijze); # Gebruik methoden op bestanden in omgekeerd alfabetisch of aflopend numeriek orderbestand :: SortedSeek :: Set_Descending (); # Voor onnauwkeurige matches set FH dus eerste waarde lezen is vóór en tweede na bestand :: SortedSeek :: Set_cuddle (); # Krijg laatste $ n-regels van elk bestand als een array @lines = get_last (* big, $ n) # of een array-referentie $ regels = get_last (* big, $ n) # Wijzig de ingangsrecord Separator uit de OS-standaard @ LINES = GET_LAST (* BIG, $ N, $ REC_SEP) Bestand :: SortedSeek biedt snelle toegang tot gegevens van grote bestanden. Drie methoden numeriek () alfabetisch () en find_time () zijn afhankelijk van de bestandsgegevens die op de een of andere manier worden gesorteerd. LogFiles zijn een typisch voorbeeld van grote bestanden die zijn gesorteerd (op datumstempel). De methode gett_between () kan worden gebruikt om een stuk lijnen efficiënt van overal in het bestand te krijgen. De vereiste posities (en) voor de methode Get_between () worden geleverd door de vorige methoden. De methode GET_LAST () krijgt efficiënt de laatste n-regels van elk bestand, gesorteerd of niet. Met gesorteerde gegevens is een lineaire zoekopdracht niet vereist. Hier is een typische lineaire zoektocht terwijl () {volgende tenzij / $ some_cond / # found cond, do spullen} Onthoud die oude game waar je probeert een getal te raden tussen Laten we zeggen en zeg 128? Laten we kiezen 101 en probeer het nu te raden. Het gebruiken van een lineaire zoekopdracht is hetzelfde als gaande 1 hogere 2 hogere 3 hogere ... 100 hoger 101 correct! Overweeg de geometrische aanpak: 64 hogere 96 hogere 112 lagere 104 lagere 100 hogere 102 lager - TA DA moet 101 zijn! Dit is de halvering van de verschil zoekmethode en kan worden toegepast op een gegevensset waar we logisch of lager kunnen zeggen. Met andere woorden, elke gesorteerde dataset kan zo worden doorzocht. Het is een veel efficiëntere methode - zie de snelheidssectie voor een snelle analyse. Vereisten: · Perl


Bestand :: SortedSeek Gerelateerde software