DigiFarm: Ottimizza la produzione agricola utilizzando i modelli di rete neurale su Oracle Cloud
DigiFarm esegue la propria piattaforma cloud nativa per l'agricoltura di precisione su Oracle Cloud Infrastructure (OCI), aiutando gli agricoltori e altre aziende agricole a determinare i confini acre predefiniti.
Grazie ai approfonditi modelli di rete neurale in esecuzione sulle GPU di Oracle Bare Metal, DigiFarm ingloba le immagini ottiche satellitari dell'Agenzia spaziale europea (ESA), ne aumenta la risoluzione e fornisce una mappa georeference, che finora ha aiutato circa 14.000 produttori in 30 paesi a delineare i limiti predefiniti dell'ACre sul campo con una precisione del 92%.
Architettura
Dopo aver acquisito le immagini satellitari dall'Agenzia spaziale europea (ESA) utilizzando un bucket pubblico in Amazon Web Services (AWS), le immagini introdotte in un'istanza su Oracle Cloud Infrastructure (OCI) e inserite in Oracle Cloud Infrastructure Object Storage.
DigiFarm quindi allena il proprio modello di rete neurale profonda per classificare e migliorare la risoluzione di tali immagini in una subnet privata su sette server Bare Metal Oracle.
Utilizzando una combinazione di GPU NVIDIA Tesla A100, V100 e P100, DigiFarm applica i propri modelli di inferenza per analizzare le immagini migliorate e determinare i limiti precisi degli acri popolati da un agricoltore. Una volta delimitati i confini, le immagini vengono memorizzate in memoria a blocchi e poi trasformate in mappe di georeferenza e rese disponibili per i clienti di DigiFarm.
I client DigiFarm possono accedere alle mappe di georeferenza utilizzando Oracle API Gateway, che indica a Oracle Cloud Infrastructure Functions di estrarre le immagini definite dallo storage a blocchi.
I seguenti diagrammi illustrano l'architettura. La prima immagine mostra il flusso di lavoro di formazione e inferenza dell'apprendimento automatico e la seconda immagine mostra il flusso di lavoro dei servizi client.
- Il provisioning delle istanze di formazione per la definizione dei campi (bare metal e storage a blocchi) viene eseguito mediante immagini Docker.
- Le istanze di formazione sulla delimitazione del campo scaricano i dati delle immagini satellitari dall'ESA o da altre fonti utilizzando il gateway NAT (Network Address Translation) e memorizzano i dati nello storage a blocchi.
- Le istanze di formazione sulla delineazione dei campi migliorano le immagini utilizzando l'algoritmo di rete neurale di Digifarm in esecuzione sulle GPU NVIDIA su Bare Metal recuperando i metadati dal sistema di database condiviso. Una volta completato il miglioramento dell'immagine, le istanze di addestramento per la delineazione del campo vengono disattivate.
- Le immagini avanzate vengono salvate nello storage degli oggetti.
- La definizione del campo e i motori di inferenza ad alta risoluzione recuperano i dati dallo storage degli oggetti, applicano la vettorizzazione e creano mappe georeferenziate.
- I client di Digifarm accedono alle proprie mappe georeferenziate utilizzando un'API esposta mediante il gateway API OCI.
- L'API consente ai client di accedere a una libreria di funzioni di servizio utente basate sulla piattaforma Oracle Cloud Infrastructure Functions.
- Le funzioni di manutenzione utente consentono di estrarre le immagini satellitari ottimizzate dallo storage degli oggetti e di accedere ai poligoni e ai metadati delimitati sul campo.
L'architettura prevede i componenti elencati di seguito.
- Area
Un'area Oracle Cloud Infrastructure è un'area geografica localizzata contenente uno o più data center, denominati domini di disponibilità. Le regioni sono indipendenti da altre regioni e le grandi distanze possono separarle (tra paesi o addirittura continenti).
- Compartimento
I compartimenti sono partizioni logiche tra più aree all'interno di una tenancy Oracle Cloud Infrastructure. Utilizzare i compartimenti per organizzare le risorse in Oracle Cloud, controllare l'accesso alle risorse e impostare le quote di utilizzo. Per controllare l'accesso alle risorse in un determinato compartimento, puoi definire criteri che specificano gli utenti che possono accedere alle risorse e le azioni che possono eseguire.
- Gestione delle identità e degli accessi (IAM)
Oracle Cloud Infrastructure Identity and Access Management (IAM) è il piano di controllo dell'accesso per Oracle Cloud Infrastructure (OCI) e Oracle Cloud Applications. L'interfaccia API IAM e l'interfaccia utente consentono di gestire i domini di Identity e le risorse all'interno del dominio di Identity. Ogni dominio di identità IAM OCI rappresenta una soluzione standalone di gestione delle identità e degli accessi o una popolazione di utenti diversa.
- Dominio di disponibilità
I domini di disponibilità sono data center indipendenti e standalone all'interno di un'area geografica. Le risorse fisiche presenti in ciascun dominio di disponibilità sono isolate dalle risorse presenti negli altri domini di disponibilità, il che garantisce la tolleranza agli errori. I domini di disponibilità non condividono l'infrastruttura, ad esempio l'alimentazione o il raffreddamento, né la rete interna del dominio di disponibilità. Pertanto, è improbabile che un errore di un dominio di disponibilità influisca sugli altri domini di disponibilità nell'area.
- Dominio di errore
Un dominio di errore è un raggruppamento di hardware e infrastruttura all'interno di un dominio di disponibilità. Ogni dominio di disponibilità dispone di tre domini di errore con alimentazione e hardware indipendenti. Quando distribuisci le risorse su più domini di errore, le applicazioni possono tollerare errori del server fisico, manutenzione del sistema e errori di alimentazione all'interno di un dominio di errore.
- Rete cloud virtuale (VCN) e subnet
Una VCN è una rete personalizzabile e definita dal software impostata dall'utente in un'area Oracle Cloud Infrastructure. Come le reti di data center tradizionali, le VCN offrono il controllo completo sull'ambiente di rete. Una VCN può avere più blocchi CIDR non sovrapposti che è possibile modificare dopo aver creato la VCN. È possibile segmentare una VCN in subnet, che può essere definita in un'area o in un dominio di disponibilità. Ogni subnet è costituita da un intervallo contiguo di indirizzi che non si sovrappongono con le altre subnet nella VCN. Puoi modificare la dimensione di una subnet dopo la creazione. Una subnet può essere pubblica o privata.
- Lista di sicurezza
Per ogni subnet, puoi creare regole di sicurezza che specificano l'origine, la destinazione e il tipo di traffico che devono essere consentiti all'interno e all'esterno della subnet.
- Gateway di instradamento dinamico (DRG)
DRG è un router virtuale che fornisce un percorso per il traffico di rete privato tra VCN nella stessa area, tra una VCN e una rete esterna all'area, come una VCN in un'altra area Oracle Cloud Infrastructure, una rete in locale o una rete in un altro provider cloud.
- Gateway NAT (Network Address Translation)
Un gateway NAT consente alle risorse private in una VCN di accedere agli host su Internet, senza esporre tali risorse alle connessioni Internet in entrata.
- Gateway Internet
Il gateway Internet consente il traffico tra le subnet pubbliche in una VCN e la rete Internet pubblica.
- Gateway API
Oracle API Gateway ti consente di pubblicare le API con endpoint privati accessibili dall'interno della tua rete e che puoi esporre alla rete Internet pubblica, se necessario. Gli endpoint supportano la convalida delle API, la trasformazione delle richieste e delle risposte, CORS, l'autenticazione e l'autorizzazione e il limite delle richieste.
- Host bastion
L'host bastion è un'istanza di computazione che funge da punto di accesso sicuro e controllato alla topologia dall'esterno del cloud. Il provisioning dell'host bastion viene eseguito in genere in una zona demilitarizzata (DMZ). Consente di proteggere le risorse sensibili collocandole in reti private a cui non è possibile accedere direttamente dall'esterno del cloud. La topologia ha un singolo punto di accesso conosciuto che è possibile monitorare e controllare regolarmente. Pertanto, è possibile evitare di esporre i componenti più sensibili della topologia senza compromettere l'accesso ad essi.
- Virtual Machine
Il servizio Oracle Cloud Infrastructure Compute consente di eseguire il provisioning e la gestione degli host di calcolo nel cloud. Puoi avviare le istanze di computazione con le navi che soddisfano i requisiti delle tue risorse in termini di CPU, memoria, larghezza di banda della rete e storage. Dopo aver creato un'istanza di computazione, puoi accedervi in modo sicuro, riavviarla, collegare e scollegare i volumi e arrestarli quando non ne hai più bisogno.
- Istanze di formazione: vengono utilizzate per sviluppare e verificare il modello di applicazione, ad esempio una simulazione di rete neurale. I nodi di formazione sono istanze potenti che recuperano i dati da Oracle Cloud Infrastructure Object Storage, eseguono le operazioni sui dati in base al modello utilizzato e memorizzano i dati in Oracle Cloud Infrastructure Block Volumes condivisi collegati.
- Server di riferimento: queste istanze preparano i dati elaborati dai nodi di formazione e memorizzati nei volumi a blocchi per l'utilizzo da parte delle applicazioni utente.
- Bare Metal: la forma Bare Metal può ridurre del 50% la durata del calcolo rispetto alle istanze di virtual machine su cui sono in esecuzione carichi di lavoro meno impegnativi per la computazione.
- Funzioni
Oracle Cloud Infrastructure Functions è una piattaforma completamente gestita, multi-tenant, altamente scalabile, on-demand e Functions-as-a-Service (FaaS). Si basa sul motore open source di Fn Project. Le funzioni consentono di distribuire il codice e di chiamarlo direttamente o attivarlo in risposta agli eventi. Oracle Functions utilizza i container Docker ospitati in Oracle Cloud Infrastructure Registry.
- Sistema di database
Il sistema di database ti consente di creare, scalare e proteggere i database Oracle con prezzi inclusi nella licenza in Oracle Cloud. Inoltre, puoi utilizzare Oracle Cloud Infrastructure per gestire i database Oracle nel tuo data center insieme ai tuoi database cloud.
- Storage degli oggetti
Lo storage degli oggetti consente un accesso rapido a grandi quantità di dati strutturati e non strutturati di qualsiasi tipo di contenuto, inclusi backup del database, dati analitici e contenuti avanzati quali immagini e video. Puoi memorizzare e quindi recuperare i dati direttamente da Internet o dall'interno della piattaforma cloud. È possibile scalare perfettamente lo storage senza compromettere le prestazioni o l'affidabilità dei servizi. Utilizzare lo storage standard per lo storage "hot" necessario per accedere rapidamente, immediatamente e di frequente. Utilizzare lo storage di archivio per lo storage "freddo" che si conserva per lunghi periodi di tempo e raramente o raramente si accede.
- Volume a blocchi
Grazie ai volumi di storage a blocchi, puoi creare, collegare, connettere e spostare i volumi di storage e modificare le prestazioni dei volumi per soddisfare i requisiti di storage, prestazioni e applicazioni. Dopo aver collegato un volume a un'istanza, è possibile utilizzare il volume come un normale disco rigido. Puoi anche disconnettere un volume e collegarlo a un'altra istanza senza perdere i dati.
Acquisito e distribuito in primo piano
Vuoi mostrare cosa hai costruito su Oracle Cloud Infrastructure? Ti invitiamo a condividere le lezioni apprese, le best practice e le architetture di riferimento con la nostra community globale di architetti cloud? Vi aiutiamo a iniziare.
- Scarica il modello (PPTX)
Illustrare l'architettura di riferimento trascinando le icone nel wireframe di esempio.
- Guarda l'esercitazione sull'architettura
Ottieni istruzioni dettagliate su come creare un'architettura di riferimento.
- Sottomettere il diagramma
Inviaci un'e-mail con il tuo diagramma. I nostri architetti cloud esamineranno il diagramma e ti contatteranno per discutere della tua architettura.