Как разбить огромный файл на маленькие куски и параллельно загрузить в Dynamodb с помощью Boto3 - PullRequest
0 голосов
/ 27 ноября 2018

Как разбить огромный файл (предположим, 5 миллионов записей) на маленькие куски (предположим, что каждый блок может иметь 100 тыс. Записей) и загрузить параллельно в Dynamodb с помощью Boto3.

Возможно ли это с помощью Boto3, в настоящее время янекоторые требования, как это.Любое руководство или пример кода очень помогают.

Спасибо.

1 Ответ

0 голосов
/ 27 ноября 2018

Вы можете сделать это:

tot_lines = 100000

with open('myfile.txt') as f:
    fout = open('out0.txt','wb')
    for c,i in enumerate(f):
      fout.write(i)
      if (c+1)%tot_lines == 0:
        fout.close()
        fout = open('out%d.txt'%(c/tot_lines+1),'wb')
    fout.close()

Это создаст n количество файлов, в каждом файле которых будет 100k записей.Затем вы можете загрузить их так, как вы хотите.

...