Välj en stordatalagringsteknik i Azure

Kommentar

Den 29 februari 2024 dras Azure Data Lake Storage Gen1 tillbaka. Mer information finns i det officiella meddelandet. Om du använder Azure Data Lake Storage Gen1 måste du migrera till Azure Data Lake Storage Gen2 före det datumet. Mer information finns i Migrera Azure Data Lake Storage från Gen1 till Gen2 med hjälp av Azure-portalen.

Om du inte redan har ett Azure Data Lake Storage Gen1-konto kan du inte skapa nya.

I det här avsnittet jämförs alternativ för datalagring för stordatalösningar – särskilt datalagring för massdatainmatning och batchbearbetning, i motsats till analysdatalager eller direktuppspelning i realtid.

Vilka alternativ har du när du väljer datalagring i Azure?

Det finns flera alternativ för att mata in data i Azure, beroende på dina behov.

Fillagring:

NoSQL-databaser:

Analysdatabaser:

Azure-datautforskaren

Azure Storage-blobar

Azure Storage är en hanterad lagringstjänst som är mycket tillgänglig, säker, hållbar, skalbar och redundant. Microsoft tar hand om underhåll och hanterar kritiska problem åt dig. Azure Storage är den mest allestädes närvarande lagringslösningen som Azure tillhandahåller på grund av antalet tjänster och verktyg som kan användas med den.

Det finns olika Azure Storage-tjänster som du kan använda för att lagra data. Det mest flexibla alternativet för att lagra blobar från många datakällor är Blob Storage. Blobar är i princip filer. De lagrar bilder, dokument, HTML-filer, virtuella hårddiskar (VHD), stordata som loggar, databassäkerhetskopior – i stort sett vad som helst. Blobar lagras i containrar som liknar mappar. En container tillhandahåller en gruppering av en uppsättning blobar. Ett lagringskonto kan innehålla ett obegränsat antal containrar, och varje container kan lagra ett obegränsat antal blobbar.

Azure Storage är ett bra val för stordata- och analyslösningar på grund av flexibilitet, hög tillgänglighet och låg kostnad. Den tillhandahåller lagringsnivåer för frekvent, lågfrekvent och arkivlagring för olika användningsfall. Mer information finns i Lagringsnivåer för Azure Blob Storage: Frekvent, lågfrekvent lagring och arkivlagring.

Azure Blob Storage kan nås från Hadoop (tillgängligt via HDInsight). HDInsight kan använda en blobcontainer i Azure Storage som standardfilsystem för klustret. Genom ett HDFS-gränssnitt (Hadoop distributed file system) som tillhandahålls av en WASB-drivrutin kan den fullständiga uppsättningen komponenter i HDInsight fungera direkt på strukturerade eller ostrukturerade data som lagras som blobar. Azure Blob Storage kan också nås via Azure Synapse Analytics med hjälp av dess PolyBase-funktion.

Andra funktioner som gör Azure Storage till ett bra val är:

Azure Data Lake Storage Gen1

Azure Data Lake Storage Gen1 är en företagsomfattande hyperskalalagringsplats för analysarbetsbelastningar med stordata. Med Data Lake kan du samla in data av valfri storlek, typ och inmatningshastighet på en enda säker plats för driftsanalys och undersökande analys.

Azure Data Lake Storage Gen1 har inga begränsningar för kontostorlekar, filstorlekar eller mängden data som kan lagras i en datasjö. Data lagras på ett lämpligt sätt genom att göra flera kopior och det finns ingen gräns för hur länge data kan lagras i Data Lake. Förutom att göra flera kopior av filer för att skydda mot oväntade fel sprider Data lake delar av en fil över ett antal enskilda lagringsservrar. Detta förbättrar läsgenomströmning vid läsning av filen parallellt för att utföra dataanalyser.

Azure Data Lake Storage Gen1 kan nås från Hadoop (tillgängligt via HDInsight) med hjälp av WebHDFS-kompatibla REST-API:er. Du kan överväga att använda detta som ett alternativ till Azure Storage när dina enskilda eller kombinerade filstorlekar överskrider det som stöds av Azure Storage. Det finns dock riktlinjer för prestandajustering som du bör följa när du använder Azure Data Lake Storage Gen1 som primär lagring för ett HDInsight-kluster, med specifika riktlinjer för Spark, Hive och MapReduce. Kontrollera även Azure Data Lake Storage Gen1:s regionala tillgänglighet eftersom den inte är tillgänglig i så många regioner som Azure Storage och måste finnas i samma region som ditt HDInsight-kluster.

Tillsammans med Azure Data Lake Analytics är Azure Data Lake Storage Gen1 utformat för att möjliggöra analys av lagrade data och är justerat för prestanda för dataanalysscenarier. Azure Data Lake Storage Gen1 kan också nås via Azure Synapse med hjälp av dess PolyBase-funktion.

Azure Cosmos DB

Azure Cosmos DB är Microsofts globalt distribuerade databas för flera modeller. Azure Cosmos DB garanterar svarstider med ensiffrig millisekunder på den 99:e percentilen var som helst i världen, erbjuder flera väldefinierade konsekvensmodeller för att finjustera prestanda och garanterar hög tillgänglighet med funktioner för flera värdar.

Azure Cosmos DB är schemaagnostisk. Den indexerar automatiskt alla data utan att du behöver hantera schema- och indexhantering. Det är också flera modeller, som har inbyggt stöd för datamodeller för dokument, nyckelvärde, diagram och kolumnfamilj.

Azure Cosmos DB-funktioner:

HBase på HDInsight

Apache HBase är en NoSQL-databas med öppen källkod som bygger på Hadoop och modelleras efter Google BigTable. HBase ger slumpmässig åtkomst och stark konsekvens för stora mängder ostrukturerade och halvstrukturerade data i en schemalös databas som ordnas efter kolumnfamiljer.

Data lagras i tabellens rader och data i raderna grupperas per kolumnfamilj. HBase är schemalöst i den meningen att varken kolumnerna eller typen av data som lagras i dem behöver definieras innan de används. Den öppna källkoden skalas linjärt för att hantera petabyte med data på tusentals noder. Den kan utgå ifrån dataredundans, batchbearbetning och andra funktioner som tillhandahålls av distribuerade program i Hadoop-miljön.

HDInsight-implementeringen utnyttjar den utskalningsarkitekturen för HBase för att tillhandahålla automatisk horisontell partitionering av tabeller, stark konsekvens för läsningar och skrivningar samt automatisk redundans. Prestanda utökas av cachelagring i minnet för läsning och snabb strömning för skrivning. I de flesta fall vill du skapa HBase-klustret i ett virtuellt nätverk så att andra HDInsight-kluster och -program kan komma åt tabellerna direkt.

Öppna Azure-datautforskaren

Azure Data Explorer är en snabb och mycket skalbar datautforskningstjänst för logg- och telemetridata. Det hjälper dig att hantera de många dataströmmar som genereras av modern programvara så att du kan samla in, lagra och analysera data. Azure Data Explorer är perfekt för att analysera stora volymer av olikartade data från olika datakällor, till exempel webbplatser, program, IoT-enheter med mera. Dessa data används för diagnostik, övervakning, rapportering, maskininlärning och ytterligare analysfunktioner. Azure Data Explorer gör det enkelt att mata in dessa data och gör att du kan göra komplexa ad hoc-frågor på data på några sekunder.

Azure Data Explorer kan skalas ut linjärt för att öka dataflödet för inmatning och frågebearbetning. Ett Azure Data Explorer-kluster kan distribueras till ett virtuellt nätverk för att aktivera privata nätverk.

Kriterier för nyckelval

För att begränsa alternativen börjar du med att svara på följande frågor:

  • Behöver du hanterad molnbaserad lagring med hög hastighet för någon typ av text eller binära data? Om ja väljer du något av alternativen för fillagring eller analys.

  • Behöver du fillagring som är optimerad för parallella analysarbetsbelastningar och högt dataflöde/IOPS? Om ja väljer du ett alternativ som är justerat för analys av arbetsbelastningsprestanda.

  • Behöver du lagra ostrukturerade eller halvstrukturerade data i en schemalös databas? I så fall väljer du något av alternativen för icke-relationell analys eller analys. Jämför alternativ för indexering och databasmodeller. Beroende på vilken typ av data du behöver lagra kan de primära databasmodellerna vara den största faktorn.

  • Kan du använda tjänsten i din region? Kontrollera regional tillgänglighet för varje Azure-tjänst. Läs Produkttillgänglighet per region.

Kapacitetsmatris

I följande tabeller sammanfattas de viktigaste skillnaderna i funktioner.

Fillagringsfunktioner

Kapacitet Azure Data Lake Storage Gen1 Azure Blob Storage-containrar
Syfte Optimerad lagring för stordataanalysarbetsbelastningar Objektarkiv för generell användning för en mängd olika lagringsscenarier
Användningsfall Batch, strömmande analys och maskininlärningsdata, till exempel loggfiler, IoT-data, klickströmmar, stora datamängder Alla typer av text eller binära data, till exempel programserverdel, säkerhetskopieringsdata, medielagring för direktuppspelning och allmänna data
Struktur Hierarkiskt filsystem Objektarkiv med platt namnrymd
Autentisering Baserat på Microsoft Entra-identiteter Baserat på kontoåtkomstnycklar för delade hemligheter och signaturnycklar för delad åtkomst och rollbaserad åtkomstkontroll i Azure (Azure RBAC)
Autentiseringsprotokoll OAuth 2.0. Anrop måste innehålla en giltig JWT (JSON-webbtoken) som utfärdats av Microsoft Entra ID Hash-baserad kod för meddelandeautentisering (HMAC). Anrop måste innehålla en Base64-kodad SHA-256-hash över en del av HTTP-begäran.
Auktorisering POSIX-åtkomstkontrollistor (ACL: er). ACL:er baserade på Microsoft Entra-identiteter kan ställas in på fil- och mappnivå. För auktorisering på kontonivå använder du kontoåtkomstnycklar. För konto-, container- eller blobauktorisering använder du signaturnycklar för delad åtkomst.
Granskning Tillgängligt. Tillgängligt
Kryptering i vila Transparent, serversidan Transparent, serversidan; Kryptering på klientsidan
SDK:er för utvecklare .NET, Java, Python, Node.js .NET, Java, Python, Node.js, C++, Ruby
Analys av arbetsbelastningsprestanda Optimerad prestanda för parallella analysarbetsbelastningar, högt dataflöde och IOPS Inte optimerad för analysarbetsbelastningar
Storleksbegränsningar Inga begränsningar för kontostorlekar, filstorlekar eller antal filer Specifika gränser som dokumenteras här
Geo-redundans Lokalt redundant (LRS), globalt redundant (GRS), skrivskyddad globalt redundant (RA-GRS), zonredundant (ZRS). Lokalt redundant (LRS), globalt redundant (GRS), skrivskyddad globalt redundant (RA-GRS), zonredundant (ZRS). Mer information finns här

NoSQL-databasfunktioner

Kapacitet Azure Cosmos DB HBase på HDInsight
Primär databasmodell Dokumentarkiv, diagram, nyckel/värde-arkiv, stort kolumnarkiv Brett kolumnarkiv
Sekundära index Ja Nej
Stöd för SQL-språk Ja Ja (med hjälp av Phoenix JDBC-drivrutinen)
Konsekvens Stark, begränsad föråldring, session, konsekvent prefix, eventuell Stark
Intern Azure Functions-integrering Ja Nej
Automatisk global distribution Ja IngenHBase-klusterreplikering kan konfigureras mellan regioner med slutlig konsekvens
Prismodell Elastiskt skalbara enheter för begärande (RU:er) debiteras per sekund efter behov, elastiskt skalbar lagring Priser per minut för HDInsight-kluster (horisontell skalning av noder), lagring

Analysdatabasfunktioner

Kapacitet Öppna Azure-datautforskaren
Primär databasmodell Relationsarkiv (kolumnarkiv), telemetri och tidsseriearkiv
Stöd för SQL-språk Ja
Prismodell Elastiskt skalbara klusterinstanser
Autentisering Baserat på Microsoft Entra-identiteter
Kryptering i vila Kundhanterade nycklar som stöds
Analys av arbetsbelastningsprestanda Optimerad prestanda för parallella analysarbetsbelastningar
Storleksbegränsningar Linjärt skalbar

Deltagare

Den här artikeln underhålls av Microsoft. Det har ursprungligen skrivits av följande medarbetare.

Huvudförfattare:

Nästa steg