Интерфейсы прикладного программирования (application programming interfaces, API) для связи облачных хранилищ с приложениями бывают различных типов. Портал ComputerWeekly рассказывает об особенностях работы таких API, ориентированных как на СМБ, так и крупный бизнес.

Можно утверждать, что современный мир Интернета построен не просто на API, а веб-API, которые позволяют веб-приложению получать доступ к услугам и информации из других источников. На объединении данных из различных онлайн-источников строится огромное количество веб-контента. Когда-то давно эту комбинацию называли «мэшапами» или «Интернет 2.0», но сегодня веб-приложения стало частью современного мира ИТ. Ниже рассмотрены API управления хранилищем, которые разработчики могут использовать для предоставления услуг хранения веб-приложениям.

Что такое API для хранения данных

Потенциально существует некоторая двусмысленность в отношении того, что подразумевается под API для хранения данных. Это связано с тем, что в самом общем смысле API — это просто код, который позволяет одной части ПО подключаться к другой. Например, если мы говорим об «API для систем хранения», то это может подразумевать API, предоставляемые производителем массивов хранения для обеспечения мониторинга и управления своими продуктами для ПО, которое пишут разработчики. Можно также упомянуть о веб-интерфейсе разработки localStorage, который позволяет браузерным приложениям сохранять данные локально, и который считается небезопасным. Но вместо этого лучше рассмотреть API, которые предоставляют стороннее хранилище или сервисы хранения данных (базы, озера и хранилища данных), к которым разработчики могут подключаться через API, встроенные в код приложений.

API для хранения данных можно разделить на несколько категорий, включая:

  • API, которые подключаются к облачным сервисам синхронизации файлов и облачным дискам, а также к приложениям для повышения продуктивности, таким как Google Workspace или Microsoft 365 через Graph API;
  • API для подключения веб-приложений к службам хранения данных облачных провайдеров;
  • API, позволяющие использовать сервисы, связанные с хранением данных, такие как базы, озера и хранилища данных.

В каких случаях используются API для хранения данных

При подключении через API к сервисам, таким как облачные диски, приложения для повышения продуктивности и т. п., имеется в виду возможность создавать, читать, обновлять и удалять (create, read, update and delete, CRUD) данные, обычно с помощью HTTP-методов, таких как Get, Post, Put и т. д. Это сценарии, которые больше всего подходят для СМБ. На начальном уровне для доступа к файлам, э-таблицам, э-почте, документам, календарям, аналитике можно подключаться к таким службам, как Google Workspace или Microsoft 365.

Кроме того, через API можно подключаться к облачным хранилищам провайдеров — обычно объектным, — чтобы использовать данные и управлять ими в соответствии с бизнес-сценарием. В корпоративном сегменте также существует широкий спектр сервисов данных, доступных через API. К ним относятся базы данных (SQL и NoSQL), а также сервисы более высокого уровня, часто основанные на них, такие как озера и хранилища данных.

Кто предоставляет API для хранения данных и сколько они стоят

Box и Dropbox предлагают API, позволяющие выполнять множество операций CRUD с данными, хранящимися в их системах, на основе HTTP, которые разработчики могут внедрять в свои приложения. Они позволяют использовать различные способы управления файлами и метаданными, а также упорядочивать файлы. При определенных ограничениях по пропускной способности доступ к ним и разработка с использованием API бесплатны.

Microsoft Graph — это платформа API для разработчиков, которая позволяет получить доступ к широкому спектру продуктов Microsoft. Компания предлагает разработчикам бесплатную учетную запись 365. После этого стоимость зависит от количества объектов Graph, к которым осуществляется доступ. На данный момент она составляет 0,375 долл. за 1000 объектов.

Google Workspace (ранее G-Suite) предлагает API-доступ к широкому спектру приложений для повышения продуктивности и не только. Сюда входит доступ к э-почте, календарям и э-таблицам как элементарной форме базы данных. Существует бесплатная пробная подписка, но она длится всего 14 дней.

Доступ к хранилищам основных облачных провайдеров — AWS, Microsoft Azure и Google Cloud — по сути, основан на API, причем используются команды Rest и HTTP. Доступ к объектным хранилищам гиперскейлеров, таких как Amazon S3 и Azure Blob, осуществляется с помощью привычных API-методов для операций CRUD.

Зачастую доступ к ним осуществляется приложениями, работающими в облаке, но это необязательно, поскольку API предоставляют доступ к хранилищу приложениям, работающим и в других местах.

Доступ к базам данных, например, AWS RDS (SQL) и DynamoDB (NoSQL), также осуществляется через API. Аналогично можно сказать про Azure SQL Database и Cosmos DB, а также NoSQL Cloud SQL и Datastore, которые предлагает Google. Кроме того, в облаках большой тройки гиперскейлеров можно использовать базы данных MongoDB, Scylla и PostGreSQL. У всех облачных провайдеров есть бесплатный уровень, но он предназначен для небольших компаний и разработчиков.

Fauna, DataStax, Couchbase и MongoDB Atlas предлагают нечто похожее на облачные точечные решения баз данных, иногда стилизованные под DBaaS (и обычно NoSQL). Помимо этого, большой тройкой предлагаются доступные через API более сложные решения — озера и хранилища. К ним относятся Azure Data Lake, Amazon Redshift и Google BigQuery.