Программная эмуляция «gsutil mv» на облачном хранилище appengine в python

Я хотел бы реализовать операцию mv (копирование в облаке) в облачном хранилище Google, аналогичную тому, как это делает gsutil (http://developers.google.com/storage/docs/gsutil/commands/mv).

Я где-то читал ранее, что это связано с чтением и записью (загрузкой и повторной загрузкой) данных, но я не могу снова найти отрывки.

Это правильный способ перемещения файла в облачном хранилище, или нужно перейти на уровень ниже к библиотеке boto, чтобы избежать копирования данных по сети для переименования файла?

istream = cloudstorage.open(src, mode='r')
ostream = cloudstorage.open(dst, content_type=src_content, mode='w')

while True:
    buf = istream.read(500000)
    if not buf:
        break

    ostream.write(buf)

istream.close()
ostream.close()

Обновление: я нашел остальные API, которые поддерживают операции копирования и создания и многое другое. Кажется, есть надежда, что нам не нужно копировать данные на разных континентах, чтобы что-то переименовать.

Полезные ссылки я нашел софар ...

Бото-основанный подход:https://developers.google.com/storage/docs/gspythonlibraryGCS Clinet Lib:https://developers.google.com/appengine/docs/python/googlecloudstorageclient/GCS Lib:https://code.google.com/p/appengine-gcs-clientRAW JSON API:https://developers.google.com/storage/docs/json_api

Ответы на вопрос(1)

Ваш ответ на вопрос