Я написал скрипт на python, который будет выполнять массовую выгрузку всех таблиц в схеме на s3, которая масштабируется до петабайт данных.Пока мой скрипт работал нормально, мой скрипт на python был прерван из-за отключения сети.
Теперь я нахожусь в разгрузочной работе, не зная, как возобновить работу с последней точки отказа.Пока я спорю о перезапуске всего с самого начала, я, очевидно, думаю об использовании раба Дженкинса для выполнения своей работы, однако я не хочу терять часы, которые уже были завершены.Есть ли способ возобновить с того места, где он остановился?Я думаю, что трудно определить точку возобновления, когда файлы поступают в виде ZIP.
Какие наилучшие практики я мог бы использовать, чтобы избежать этого в будущем?
Любые стратегии, чтобы иметь возможность забрать с того места, где он остановился?
Часть моего фрагмента кода, которая выгружается:
#function to unload the data from tables into s3
def unloadData(passed_tables,schema,cur):
#loop through each table from the specified schema
for table in passed_tables:
#extract the table name string and store it in a variable
i=(table[0])
try:
#unload query to migrate the table to s3
unload='''unload('select * from {0}.{1}') to 's3://<bucket>/{2}/{3}/'
iam_role 'arn:aws:iam::*****:role/***';'''.format(schema,i,schema,i)
cur.execute(unload)
print("Unload in progress! Check S3 bucket in a while to confirm.")
except Exception, e:
print("Failed to unload data! Try again or check the query.")
print(sys.stderr, "Exception: %s" % str(e))
sys.exit(1)