sqlite3: подключение к базе данных в облаке (S3) - PullRequest
0 голосов
/ 26 июня 2019

У меня есть небольшая база данных sqlite (110 КБ) в корзине s3. Я хочу подключаться к этой базе данных каждый раз, когда запускаю свое приложение python .

Можно просто загружать базу данных каждый раз, когда я запускаю приложение python и подключаю его как обычно. Но Я хочу знать, существует ли способ подключения к этой базе данных sqlite через память, используя S3FileSystem и open. Я использую sqlite3 библиотеку и Python 3.6

1 Ответ

2 голосов
/ 26 июня 2019

Нет, невозможно напрямую подключиться к базе данных sqlite, хранящейся в облаке. Даже если вы хотите разместить базу данных в памяти, она все равно должна быть полностью загружена перед загрузкой в ​​память. Для этого по-прежнему требуется сначала загрузить базу данных из файла на диске или с помощью команд DDL, чтобы создать ее непосредственно в памяти. Насколько мне известно, нет способа загрузить поток данных как базу данных sqlite в памяти (см. Пример 1. Загрузка и сохранение баз данных в памяти ).

В этом случае после отключения базы данных ее необходимо будет повторно загрузить в облачное хранилище. S3FileSystem.open просто возвращает поток данных. Все, что вам позволит поток - это загрузить файл в локальное хранилище, чтобы его можно было открывать / манипулировать локально.

Если вам действительно нужна облачная база данных, вам нужно посмотреть другую базу данных.

...