Exemple #1
0
def main(direct, palabras):
    indice = IndexInterface(direct)
    indice.run()
    indice.ready.wait()

    if not palabras:
        for palabra, data in indice.listar():
            print "%s: %s" % (palabra.encode("utf8"), data)
    else:
        encontrado = indice.search(" ".join(palabras))
        for it in encontrado:
            print it
def main(direct):
    memant = usoMemoria()
    with Timer("Start up"):
        indice = IndexInterface(direct)
        indice.run()
        indice.ready.wait()
    memdesp = usoMemoria()

    print("               ocupa memoria:  %d KB" % (memdesp - memant))

    with Timer("Listado completo palabras"):
        palabras = [x.decode("utf8") for x in indice.listado_palabras()]
    print("               cant palabras:", len(palabras))

    # palabras completas
    azar = functools.partial(random.choice, palabras)

    # levantar los resultados
    pals = [azar() for i in range(BLOQUE)]
    with Timer("Buscar palabras completas, y obtener el resultado", BLOQUE):
        for p in pals:
            list(indice.search(p))

    # palabras completas, de a una
    pals = [azar() for i in range(BLOQUE)]
    with Timer("Palabras completas, de a una", BLOQUE):
        for p in pals:
            indice.search(p)

    # palabras completas de a 2
    pals = ["%s %s" % (azar(), azar()) for i in range(BLOQUE)]
    with Timer("Palabras completas, de a 2", BLOQUE):
        for p in pals:
            indice.search(p)

    # palabras completas de a 5
    pals = [("%s " * 5) % tuple(azar() for j in range(5))
            for i in range(BLOQUE)]
    with Timer("Palabras completas, de a 5", BLOQUE):
        for p in pals:
            indice.search(p)

    # palabras parciales
    def azar():
        pal = None
        while not pal:
            pal = random.choice(palabras)
            largo = len(pal)
            desde = random.randint(0, largo // 2)
            hasta = largo - random.randint(0, largo // 2)
            pal = pal[desde:hasta]
        return pal

    # palabras parciales, de a una
    pals = [azar() for i in range(BLOQUE)]
    with Timer("Palabras parciales, de a una", BLOQUE):
        for p in pals:
            indice.partial_search(p)

    # palabras parciales, de a 2
    pals = ["%s %s" % (azar(), azar()) for i in range(BLOQUE)]
    with Timer("Palabras parciales, de a 2", BLOQUE):
        for p in pals:
            indice.partial_search(p)

    # palabras parciales, de a 5
    pals = [("%s " * 5) % tuple(azar() for j in range(5))
            for i in range(BLOQUE)]
    with Timer("Palabras parciales, de a 5", BLOQUE):
        for p in pals:
            indice.partial_search(p)

    memdesp = usoMemoria()
    print("\nNuevo consumo de memoria:  %d KB" % (memdesp - memant))
Exemple #3
0
def main(direct):
    memant = usoMemoria()
    with Timer("Start up"):
        indice = IndexInterface(direct)
        indice.run()
        indice.ready.wait()
    memdesp = usoMemoria()

    print "               ocupa memoria:  %d KB" % (memdesp - memant)

    with Timer("Listado completo palabras"):
        palabras = [x.decode("utf8") for x in indice.listado_palabras()]
    print "               cant palabras:", len(palabras)

    # palabras completas
    azar = functools.partial(random.choice, palabras)

    # levantar los resultados
    pals = [azar() for i in range(BLOQUE)]
    with Timer("Buscar palabras completas, y obtener el resultado", BLOQUE):
        for p in pals:
            list(indice.search(p))

    # palabras completas, de a una
    pals = [azar() for i in range(BLOQUE)]
    with Timer("Palabras completas, de a una", BLOQUE):
        for p in pals:
            indice.search(p)

    # palabras completas de a 2
    pals = ["%s %s" % (azar(), azar()) for i in range(BLOQUE)]
    with Timer("Palabras completas, de a 2", BLOQUE):
        for p in pals:
            indice.search(p)

    # palabras completas de a 5
    pals = [("%s "*5) % tuple(azar() for j in range(5)) for i in range(BLOQUE)]
    with Timer("Palabras completas, de a 5", BLOQUE):
        for p in pals:
            indice.search(p)

    # palabras parciales
    def azar():
        pal = None
        while not pal:
            pal = random.choice(palabras)
            largo = len(pal)
            desde = random.randint(0, largo // 2)
            hasta = largo - random.randint(0, largo // 2)
            pal = pal[desde:hasta]
        return pal

    # palabras parciales, de a una
    pals = [azar() for i in range(BLOQUE)]
    with Timer("Palabras parciales, de a una", BLOQUE):
        for p in pals:
            indice.partial_search(p)

    # palabras parciales, de a 2
    pals = ["%s %s" % (azar(), azar()) for i in range(BLOQUE)]
    with Timer("Palabras parciales, de a 2", BLOQUE):
        for p in pals:
            indice.partial_search(p)

    # palabras parciales, de a 5
    pals = [("%s "*5) % tuple(azar() for j in range(5)) for i in range(BLOQUE)]
    with Timer("Palabras parciales, de a 5", BLOQUE):
        for p in pals:
            indice.partial_search(p)

    memdesp = usoMemoria()
    print "\nNuevo consumo de memoria:  %d KB" % (memdesp - memant)