

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Applicazione di esempio
<a name="sample-app"></a>

Questa sezione fornisce linee guida per i team che stanno valutando una migrazione dal loro sistema di gestione di database relazionali (RDBMS) a un database NoSQL e si concentra su Amazon DynamoDB come database NoSQL di destinazione. Risolve le due sfide seguenti, sulla base di un case study di un'applicazione migrata da Microsoft SQL Server a DynamoDB:
+ Mappatura dei dati relazionali da più tabelle in RDBMS a una struttura di documento e a una raccolta chiave-valore in DynamoDB
+ Modifica del livello di accesso ai dati nell'applicazione per eseguire operazioni di creazione, lettura, aggiornamento ed eliminazione (CRUD) in DynamoDB

La discussione e la guida includono esempi di codice scritti in C\#, utilizzando l' AWS SDK for .NET. 

L'applicazione Web di esempio mantiene la configurazione per centinaia di applicazioni utilizzate in un'organizzazione, inclusi utenti e host consentiti (Web, dispositivi mobili, desktop) per ogni applicazione, metadati, parole chiave di ricerca e così via. L'applicazione fornisce funzionalità di configurazione, manutenzione e ricerca per diverse versioni di varie applicazioni utilizzate nell'organizzazione. Le modifiche alla configurazione vengono tracciate utilizzando tabelle di controllo. Ecco un tipico flusso di lavoro per l'applicazione di esempio:

1. Crea una configurazione per l'applicazione di test. 

1. Promuovi la configurazione dell'applicazione di test alla produzione (ovvero crea una configurazione dell'applicazione di produzione). 

1. Aggiorna e controlla le modifiche (crea un record di controllo, richiama la configurazione dell'applicazione modificata).

## Vecchio schema di accesso ai dati
<a name="source-stack"></a>

Lo stack tecnologico di origine era composto da quanto segue:
+ Controller API Web ASP.NET 
+ Oggetti aziendali 
+ ASP.NET Entity Framework (EF) 
+ Servizi dati ADO.NET
+ Microsoft SQL Server 2016

 ![Source RDBMS technology stack and data access pattern](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/modernization-rdbms-dynamodb/images/source-tech-stack.png) 

## Nuovo modello di accesso ai dati
<a name="target-stack"></a>

L'applicazione migrata supporta sia SQL Server che DynamoDB in base alla chiave di configurazione `UseSqlDataSource` () fornita nel file di configurazione. Come illustrato nel diagramma seguente, se il valore di `UseSqlDataSource` è`true`, l'applicazione si connette a SQL Server. Se il valore è`false`, l'applicazione si connette a DynamoDB.

Il nuovo stack tecnologico è composto da quanto segue:
+ Controller API Web ASP.NET: accetta richieste HTTP su vari endpoint API.
+ Oggetti e servizi aziendali: classi e oggetti che dispongono della logica aziendale necessaria per elaborare input e dati recuperati dal database.
+ Entità e modelli NoSQL: classi che mappano agli elementi archiviati in DynamoDB.
+ AWS SDK: fornisce l'accesso programmatico a DynamoDB e ad altri servizi. AWS 
+ DynamoDB — Database per l'archiviazione dei dati delle applicazioni.

 ![Target NoSQL technology stack and data access pattern](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/modernization-rdbms-dynamodb/images/target-tech-stack.png) 