私は今、次を使用してテキストファイル内の行をカウントする非常に単純なスクリプトを持っていますenumerate()
:
i = 0
f = open("C:/Users/guest/Desktop/file.log", "r")
for i, line in enumerate(f):
pass
print i + 1
f.close()
これには、約 3,000 万行の 15 GB のログ ファイルを処理するのに約 3 分半かかります。これらは毎日のログであり、毎月の分析を行いたいため、これを 2 分以内で取得できれば素晴らしいことです。そのため、コードは最大 15 GB のログを 30 個処理する必要があり、1 時間半以上かかる可能性があります。 、サーバーの時間とメモリの負荷を最小限に抑えたいと考えています。
また、適切な近似/推定方法で解決しますが、約4シグフィグの精度である必要があります...
ありがとうございました!