November 25, 2024

PAPERS

A volte la vita ti colpirà alla testa con un mattone

Cosa sono e cosa si può fare con loro?

Si potrebbe sostenere che il mondo contemporaneo del web sia costruito su interfacce di programmazione applicativa (API) – o, più specificamente, API Web che consentono a un’applicazione Web di accedere a servizi e informazioni da altrove.

Un’enorme quantità di contenuti web si basa su questa combinazione di dati provenienti da diverse fonti online. Molto tempo fa, erano chiamati “mashup” e la gente lo salutava “Internet 2.0”. Ma questa sciocchezza ora è scomparsa e l’uso delle API fa semplicemente parte del tessuto dell’IT contemporaneo.

Ecco, guardiamo gestione dell’archiviazione API che gli sviluppatori possono utilizzare per fornire servizi di archiviazione per applicazioni web-centriche.

Che cos’è un’API di archiviazione?

C’è potenzialmente qualche ambiguità su cosa si intende per API di archiviazione. Questo perché, nei termini più fondamentali, un’API è solo un codice che consente a un software di connettersi a un altro.

Ad esempio, se parliamo di “API di archiviazione”, ciò potrebbe includere API fornite da un produttore di array di archiviazione per esporre il monitoraggio e il controllo dei propri prodotti al software scritto dagli sviluppatori. Potremmo anche parlare di memoria locale interfaccia di sviluppo web che consente alle applicazioni basate su browser di conservare i dati localmente e che è considerata imprecisa dal punto di vista della sicurezza.

Ma non è su questo che ci concentreremo qui. Invece, esamineremo le API che forniscono storage di terze parti o servizi di storage (database, data lake, data warehouse) a cui gli sviluppatori possono connettersi tramite API scritte nel codice dell’applicazione.

Quali tipi di API di archiviazione esistono?

Le API di archiviazione possono essere classificate in una serie di aree, tra cui:

  • API che si connettono alla sincronizzazione dei file cloud e ai servizi di tipo drive e alle app di produttività come Google Workspace o Microsoft 365 tramite il suo API del grafico.
  • API per connettere le app Web ai servizi di archiviazione dei provider cloud.
  • API che consentono l’utilizzo di servizi relativi allo storage come database, data lake e data warehouse.

Quali casi d’uso ci sono per le API di archiviazione?

Le categorie di cui parleremo qui possono probabilmente essere definite più adatte a scenari di piccola scala e piccole e medie imprese (PMI) – nel caso della connettività API per guidare i servizi connessi alle app di archiviazione e produttività – e tutto altro.

Quando parliamo di “connessione” a tali servizi, in realtà stiamo parlando della capacità di creare, leggere, aggiornare ed eliminare (CRUD) dati, di solito tramite metodi HTTP come Ottieni, Post, Metti e così via.

A livello di ingresso, è possibile connettersi a servizi come Google Workspace o Microsoft 365 per accedere a file, fogli di calcolo, posta elettronica, documenti, calendari, analisi e così via.

Oltre a ciò, è possibile connettersi alla capacità di archiviazione dei fornitori di cloud, solitamente archiviazione di oggetti, tramite API per utilizzare e manipolare i dati in base allo scenario.

A livello aziendale, c’è anche un’ampia gamma di servizi dati accessibili tramite API. Questi includono database (SQL e NoSQL) e livelli di servizio di livello superiore spesso basati su questi, come data lake e data warehousing.

Chi fornisce le API di archiviazione e quanto costano?

Box e Dropbox rendono disponibili le API per consentire numerose operazioni CRUD basate su HTTP sui dati contenuti nei loro sistemi e per consentire agli sviluppatori di incorporare nelle applicazioni. Questi consentono una serie di modi per manipolare file e metadati e per organizzare i file. L’accesso e lo sviluppo tramite le loro API sono gratuiti al di sotto di determinati limiti di capacità.

Microsoft Graph è la piattaforma API dello sviluppatore che può accedere a un’ampia gamma di prodotti Microsoft. L’azienda offre agli sviluppatori un account 365 gratuito. Oltre a ciò, i costi si basano sul numero di oggetti Graph a cui si accede, con il costo al momento della scrittura di $ 0,375 per 1.000 oggetti.

Spazio di lavoro Google (precedentemente G-Suite) offre l’accesso tramite API a un’ampia gamma di app per la produttività e oltre. Questi includono l’accesso a e-mail, calendari e fogli di calcolo come forma rudimentale di database. C’è un abbonamento di prova gratuito, ma dura solo 14 giorni.

La capacità di archiviazione dei principali fornitori di cloud – Amazon Web Services (AWS), Microsoft Azure e Google Cloud – è essenzialmente basata su API, con i comandi Rest e HTTP utilizzati per accedere alla capacità di archiviazione del cloud. L’accesso alle offerte di storage di oggetti degli hyperscaler, come Amazon S3 e Azure Blob, avviene tramite metodi API familiari per le operazioni CRUD.

Spesso, queste saranno accessibili dalle applicazioni in esecuzione nel cloud, ma non è necessario e le API forniscono un modo per esporre lo storage ad applicazioni in esecuzione altrove.

I servizi di database sono accessibili anche tramite API, come RDS di AWS (SQL) e DynamoDB (NoSQL) banche dati. Esistono anche Database SQL e Cosmos DB di Azure e le controparti Cloud SQL e Datastore NoSQL di Google.

Inoltre, puoi eseguire strumenti come MongoDB, Scylla e PostGreSQL nei cloud dei tre grandi.

Con tutti questi database cloud, l’accesso può avvenire tramite API. Tutti i provider cloud hanno un livello gratuito, ma per casi d’uso su piccola scala e per sviluppatori.

Qualcosa di più simile a soluzioni di database di punti cloud – a volte in stile DBaaS – (e di solito NoSQL) sono disponibili da Fauna, DataStax, Couchbase e Atlas di MongoDB.

Oltre a questo, soluzioni di database e storage di dati ancora più complesse, come data lake e data warehouse, sono accessibili tramite API e disponibili dai tre grandi. Questi includono Azure Data Lake, Amazon Redshift e le offerte di data warehouse di Google BigQuery.