disk_engine = create_engine('sqlite:///311_8M.db')
chunksize = 20000
index_start = 1
for df in pd.read_csv('311_100M.csv', chunksize=chunksize, iterator=True,
    encoding='utf-8'):
    df.index += index_start
df.to_sql('data', disk_engine, if_exists='append')
index_start = df.index[-1] + 1
Sorting in pandas for large datasets