Недостаточно памяти для чтения и группировки CSV-файл содержит 300M количество строк и групп по dask.dataframe - PullRequest
0 голосов
/ 23 января 2019

Я новичок в Даске и у меня с ним некоторые проблемы. Панды не помещаются в памяти, поэтому я переключаюсь на использование Dask.dataframe. Я ожидаю, что Dask будет обрабатывать вещи небольшими порциями, которые могут поместиться в памяти. Но Даск все еще использует всю память. Это постоянно приводит к ' процессу, убитому '

#import pandas as pd
import dask.dataframe as dd
import numpy as np
import timeit
header =['DATE','IMSI','WEBSITE','LINKUP','LINKDOWN','COUNT','CONNECTION']
df = dd.read_csv('/home/mahmoudod/Desktop/to_dict/text1.txt'
                ,names = header
                ,header=0
                )
df.columns.str.strip()
df.DATE = dd.to_datetime(df.DATE, errors='coerce')
group = df.groupby(['IMSI','WEBSITE']).agg({'DATE':[max, min,'count']
    ,'LINKUP':'sum'
    , 'LINKDOWN':'sum'
    , 'COUNT':'sum'
    ,'CONNECTION':'sum'
            }).compute()
group.to_csv('/home/mahmoudod/Desktop/to_dict/output.txt')
print(df.info)
#print(group)

1 Ответ

0 голосов
/ 20 февраля 2019

Мое первое предположение состоит в том, что ваш выходной результат group довольно большой и не помещается в память. Это было бы так, если бы у вас было очень много групп.

...