46

Sto appena iniziando ad apprendere Azure e non riesco a visualizzare troppi scenari in cui si desidera inserire qualcosa in una tabella di archiviazione Azure anziché in SQL. Immagino che forse sono abituato a lavorare in ambienti in cui ho bisogno di dati correlati?Tabelle di archiviazione Azure vs SQL

Quando è meglio inserire qualcosa in una tabella di archiviazione Azure e non in una tabella in un database SQL di Azure?

risposta

53

SQL Azure è grande quando si desidera lavorare con dati strutturati utilizzando le relazioni, indici, vincoli, ecc

tabella di archiviazione Azure è grande quando si ha bisogno di lavorare con dati strutturati centralizzati, senza rapporti e di solito con grandi volumi .

Il Prezzo: SQL Azure: $ 25.98/mo per 5GB

tavolo di stoccaggio: $ 21.88/m per 175 GB (senza operazioni o la larghezza di banda) Quindi, quando si memorizzano grandi quantità di dati, tabella di archiviazione è molto meno costoso ... pensa ad esempio alla registrazione.

La centralizzazione: Windows Azure è un ambiente distribuito per i server, quindi se si salva qualcosa su una macchina, gli altri non sanno su di esso, quindi tabella di archiviazione è una buona soluzione per Loggins centralizzati, gestione delle sessioni, le impostazioni o qualsiasi altra cosa (tieni presente che c'è latenza anche in un datacenter)

La velocità: Se la si progetta correttamente, in molti casi la tabella di memoria dovrebbe essere più veloce di sql azzurro ma probabilmente dipende da casi d'uso e io non ho davvero provato questo

0

Si consiglia di leggere sui vantaggi di 'NoSQL' http://en.wikipedia.org/wiki/NoSQL

non relazionali DB di, nessuno schema, big data, scala per citarne alcuni!

+0

Controlla il post del mio blog su questo argomento: http://gavinstevens.com/2016/11/30/sql-server-vs-azure-sql/ –

9

userei allways utilizzare le tabelle azzurro tanto soluzione più economica se:

  • mi esibisco tavolo seleziona solo da PK (selezionare, all'interno della struttura è lento a causa della di tutta la deserializzazione)
  • posso vivere con limitata set Linq (Query Operators (Table Service Support)
  • non ho bisogno di unire le tabelle ed eseguire query complessa sul server
  • ho bisogno horizonatal partizionamento "sharding" dei miei dati (SQL Azure Federazioni i Un passo in quella direzione da Tabelle ha PartionKey dal giorno 0
+0

Le tabelle di Azure sono meno costose di SQL Azure se il modello di accesso ai dati è relativamente leggero, poiché le tabelle hanno un costo per transazione e SQL Azure no. – RickNZ

+1

@RickNZ Vale la pena notare che al momento della stesura di questo documento la commissione è molto bassa: $ 0,005 per 100.000 transazioni. –

26

Mentre aggiungo tardi a questo post, ho voluto menzionare una cosa che sembra non essere stata coperta. SQL di Azure ha limiti di dati (presto per salire sospetto). 5 GB per Web Edition e 150 GB per Business Edition. Per alcune soluzioni questo è perfettamente adeguato. Ma per gli altri, potrebbe non esserlo e l'ho incontrato personalmente.

I limiti del disco superiore dei tavoli in azzurro sono molto più alti. Credo che sia 100 TB.

Inoltre, mentre NoSQL non è relazionale per sua natura, non è necessariamente una cosa negativa. Spesso pensiamo che abbiamo bisogno di relazioni quando, in effetti, se pensiamo diversamente ai nostri problemi, potremmo non farlo altrettanto. È possibile rafforzare le relazioni all'interno del codice stesso, il che sospetto che la maggior parte degli sviluppatori faccia molto più di quello che pensa realmente.

+2

Altre persone dovrebbero leggere fino in fondo :) –

Problemi correlati