Я читаю некоторые данные из файла avro, используя библиотеку avro. Загрузка 33K объектов из файла занимает около минуты. Это кажется мне очень медленным, особенно когда версия Java читает тот же файл примерно за 1 секунду.
Вот код, я что-то не так делаю?
import avro.datafile
import avro.io
from time import time
def load(filename):
fo = open(filename, "rb")
reader = avro.datafile.DataFileReader(fo, avro.io.DatumReader())
for i, record in enumerate(reader):
pass
return i + 1
def main(argv=None):
import sys
from argparse import ArgumentParser
argv = argv or sys.argv
parser = ArgumentParser(description="Read avro file")
start = time()
num_records = load("events.avro")
end = time()
print("{0} records in {1} seconds".format(num_records, end - start))
if __name__ == "__main__":
main()