Azure'da bir analitik veri deposu seçmeChoosing an analytical data store in Azure

İçinde bir büyük veri mimari var. genellikle bir gereksinim analiz araçları kullanılarak sorgulanabilecek yapılandırılmış bir biçimde hizmet etmesi işlenen verileri bir analitik veri depolamak için.In a big data architecture, there is often a need for an analytical data store that serves processed data in a structured format that can be queried using analytical tools. Her iki sık erişimli-yolunu sorgulama desteği analitik veri depoları ve yol soğuk verileri topluca için Hizmet katmanını veya veri depolama hizmet olarak adlandırılır.Analytical data stores that support querying of both hot-path and cold-path data are collectively referred to as the serving layer, or data serving storage.

Hizmet katmanını sık kullanılan yol hem Durgun yol ile işlenmiş verileri işler.The serving layer deals with processed data from both the hot path and cold path. İçinde lambda mimarisi, hizmet katmanını halinde bölünmüştür bir sunma hızını artımlı olarak işlenen veri depolayan bir katman ve _batch hizmeti_batch işlenen çıkışı içeren katman.In the lambda architecture, the serving layer is subdivided into a speed serving layer, which stores data that has been processed incrementally, and a batch serving layer, which contains the batch-processed output. Hizmet katmanını, rastgele okuma için düşük gecikme süresi ile güçlü desteği gerektirir.The serving layer requires strong support for random reads with low latency. Bu depolama alanına veri yükleme batch istenmeyen gecikmelere çünkü veri depolama alanı için hız katmanının için rastgele yazmaları ayrıca desteklemelidir.Data storage for the speed layer should also support random writes, because batch loading data into this store would introduce undesired delays. Öte yandan, rastgele yazmaları desteklemek veri depolama için toplu iş katmanı gerekmez, ancak bunun yerine batch yazar.On the other hand, data storage for the batch layer does not need to support random writes, but batch writes instead.

Hiçbir tek için en iyi veri yönetim seçenek tüm veri depolama görevlerini yoktur.There is no single best data management choice for all data storage tasks. Farklı veri yönetimi çözümleri, farklı görevler için en iyi duruma getirilir.Different data management solutions are optimized for different tasks. Çoğu gerçek hayatta kullanılan bulut uygulamaları ve büyük veri süreçleri çeşitli veri depolama gereksinimleri vardır ve çoğunlukla veri depolama çözümleri bileşimini kullanır.Most real-world cloud apps and big data processes have a variety of data storage requirements and often use a combination of data storage solutions.

Analitik veri deposu seçilirken seçenekleri nelerdir?What are your options when choosing an analytical data store?

Veri depolama, gereksinimlerinize bağlı olarak, Azure'da hizmet için birkaç seçenek vardır:There are several options for data serving storage in Azure, depending on your needs:

Bu seçenekler, farklı tür görevleri için iyileştirilen çeşitli veritabanı modeli sağlar:These options provide various database models that are optimized for different types of tasks:

  • Anahtar/değer veritabanlarını tutmak için her bir anahtar değeri tek bir serileştirilmiş nesne.Key/value databases hold a single serialized object for each key value. Bunlar büyük hacimli burada belirli bir anahtar değeri için bir öğe almak istediğiniz ve yoksa verileri depolamak için iyi öğenin diğer özelliklerine bağlı sorgu için.They're good for storing large volumes of data where you want to get one item for a given key value and you don't have to query based on other properties of the item.
  • Belge veritabanlarıdır değerleri olan anahtar/değer veritabanları belgeleri.Document databases are key/value databases in which the values are documents. Bu bağlamda "belge" adlandırılmış alanlar ve değerleri koleksiyonudur.A "document" in this context is a collection of named fields and values. Veritabanı genellikle XML, YAML, JSON veya BSON gibi bir biçim veri depolar, ancak düz metin kullanabilir.The database typically stores the data in a format such as XML, YAML, JSON, or BSON, but may use plain text. Belge veritabanlarını sorgulama anahtar olmayan alanları ve sorgulama daha verimli hale getirmek için ikincil dizinleri tanımlar.Document databases can query on non-key fields and define secondary indexes to make querying more efficient. Bu belge veritabanı belge anahtarını değerinden daha karmaşık ölçütlere göre veri alması gereken uygulamalar için daha uygun hale getirir.This makes a document database more suitable for applications that need to retrieve data based on criteria more complex than the value of the document key. Örneğin, ürün kimliği, müşteri kimliği veya müşteri adı gibi alanlarda sorgulayabilir.For example, you could query on fields such as product ID, customer ID, or customer name.
  • Sütun ailesi sütun ailesi adlı ilgili sütunları koleksiyonlara veri depolama yapısı anahtar/değer veri depoları veritabanlarıdır.Column-family databases are key/value data stores that structure data storage into collections of related columns called column families. Örneğin, görselleştirmenizdeki veritabanı sütunları bir kişinin adı için bir grup olabilir (ilk olarak, son Orta), kişinin adresi için bir grup ve kullanıcının profil bilgilerini (veri Doğum, cinsiyet) için bir grup.For example, a census database might have one group of columns for a person's name (first, middle, last), one group for the person's address, and one group for the person's profile information (data of birth, gender). Veritabanı her sütun ailesi, tek bir kişi aynı anahtar için ilgili verilerin tümünü korurken ayrı bir bölümde depolayabilirsiniz.The database can store each column family in a separate partition, while keeping all of the data for one person related to the same key. Bir uygulama, bir varlığın verilerini tümünün üzerinden okumadan bir tek sütun ailesi okuyabilirsiniz.An application can read a single column family without reading through all of the data for an entity.
  • Graf veritabanları, nesneleri ve ilişkileri koleksiyonu bilgi depolar.Graph databases store information as a collection of objects and relationships. Bir grafik veritabanı nesneleri ve ilişkileri ağı arasında çapraz geçiş sorguların verimli bir şekilde gerçekleştirebilirsiniz.A graph database can efficiently perform queries that traverse the network of objects and the relationships between them. Örneğin, çalışan bir insan kaynakları veritabanındaki nesneler olabilir ve isteyebileceğiniz kolaylaştırmak için sorgular gibi "doğrudan veya dolaylı olarak çalışan tüm çalışanlar için Scott bulur."For example, the objects might be employees in a human resources database, and you might want to facilitate queries such as "find all employees who directly or indirectly work for Scott."

Temel seçim ölçütlerineKey selection criteria

Seçimleri daraltmak için bu soruyu yanıtlayarak başlatın:To narrow the choices, start by answering these questions:

  • Verileriniz için etkin bir yolu olarak hizmet verebilen depolama hizmet veren gerekiyor mu?Do you need serving storage that can serve as a hot path for your data? Yanıt Evet ise, seçeneklerinizi hızı hizmet katmanı için optimize edilmiş kişilere daraltın.If yes, narrow your options to those that are optimized for a speed serving layer.

  • Yüksek düzeyde işleme (MPP) desteği, sorgular otomatik olarak çeşitli işlemler veya düğümler arasında dağıtıldığı paralel?Do you need massively parallel processing (MPP) support, where queries are automatically distributed across several processes or nodes? Yanıt Evet ise, sorgu ölçeği genişletme destekleyen bir seçenek belirleyin.If yes, select an option that supports query scale out.

  • İlişkisel bir veri deposu kullanmayı tercih ediyorsunuz?Do you prefer to use a relational data store? Bu durumda, bir ilişkisel veritabanı modeli olanlarla seçeneklerinizi daraltın.If so, narrow your options to those with a relational database model. Ancak, ilişkisel olmayan bazı depoları sorgulama için SQL söz dizimi desteklediğini unutmayın ve PolyBase ilişkisel olmayan veri depolarını sorgular kullanılabilir gibi araçlar.However, note that some non-relational stores support SQL syntax for querying, and tools such as PolyBase can be used to query non-relational data stores.

Özellik MatrisiCapability matrix

Aşağıdaki tablolarda, Özellikler'deki temel farklılıklar özetlenmektedir.The following tables summarize the key differences in capabilities.

Genel özellikleriGeneral capabilities

SQL VeritabanıSQL Database SQL Veri AmbarıSQL Data Warehouse Hdınsight'ta HBase/PhoenixHBase/Phoenix on HDInsight HDInsight üzerinde LLAP hiveHive LLAP on HDInsight Azure Analysis ServicesAzure Analysis Services Cosmos DBCosmos DB
Olan yönetilen hizmetIs managed service EvetYes EvetYes Evet 1Yes 1 Evet 1Yes 1 EvetYes EvetYes
Birincil veritabanı modeliPrimary database model İlişkisel (columnstore dizinleri kullanırken aynı zamanda sütunlu biçimi)Relational (columnar format when using columnstore indexes) Sütunlu depolama alanındaki ilişkisel tablolarıRelational tables with columnar storage Geniş bir sütun deposuWide column store Hive/bellek içiHive/In-Memory Sekmeli/MOLAP anlam modelleriTabular/MOLAP semantic models Belge deposu, grafik, anahtar-değer deposu, geniş sütun deposuDocument store, graph, key-value store, wide column store
SQL dil desteğiSQL language support EvetYes EvetYes Evet (kullanarak Phoenix JDBC sürücüsü)Yes (using Phoenix JDBC driver) EvetYes HayırNo EvetYes
Hizmet katmanı hızı için iyileştirilmişOptimized for speed serving layer Evet 2Yes 2 HayırNo EvetYes EvetYes HayırNo EvetYes

[1] el ile yapılandırma ve ölçeklendirme ile.[1] With manual configuration and scaling.

[2] kullanarak bellek için iyileştirilmiş tablolar ve karma veya kümelenmemiş dizinler.[2] Using memory-optimized tables and hash or nonclustered indexes.

Ölçeklenebilirliği özellikleriScalability capabilities

SQL VeritabanıSQL Database SQL Veri AmbarıSQL Data Warehouse Hdınsight'ta HBase/PhoenixHBase/Phoenix on HDInsight HDInsight üzerinde LLAP hiveHive LLAP on HDInsight Azure Analysis ServicesAzure Analysis Services Cosmos DBCosmos DB
Yüksek kullanılabilirlik için bölgesel olarak yedekli sunucularRedundant regional servers for high availability EvetYes EvetYes EvetYes HayırNo HayırNo EvetYes
Desteklediği sorgu ölçeği genişletmeSupports query scale out HayırNo EvetYes EvetYes EvetYes EvetYes EvetYes
Dinamik ölçeklenebilirlik (büyütme)Dynamic scalability (scale up) EvetYes EvetYes HayırNo HayırNo EvetYes EvetYes
Bellek içi verileri önbelleğe almayı desteklerSupports in-memory caching of data EvetYes EvetYes HayırNo EvetYes EvetYes HayırNo

Güvenlik özellikleriSecurity capabilities

SQL VeritabanıSQL Database SQL Veri AmbarıSQL Data Warehouse Hdınsight'ta HBase/PhoenixHBase/Phoenix on HDInsight HDInsight üzerinde LLAP hiveHive LLAP on HDInsight Azure Analysis ServicesAzure Analysis Services Cosmos DBCosmos DB
Kimlik DoğrulamasıAuthentication SQL / Azure Active Directory (Azure AD)SQL / Azure Active Directory (Azure AD) SQL / Azure ADSQL / Azure AD Yerel / Azure AD 1local / Azure AD 1 Yerel / Azure AD 1local / Azure AD 1 Azure ADAzure AD Veritabanı kullanıcıları / Azure AD yoluyla erişim denetimi (IAM)database users / Azure AD via access control (IAM)
Bekleme sırasında veri şifrelemesiData encryption at rest Evet 2Yes 2 Evet 2Yes 2 Evet 1Yes 1 Evet 1Yes 1 EvetYes EvetYes
Satır düzeyi güvenlikRow-level security EvetYes HayırNo Evet 1Yes 1 Evet 1Yes 1 Evet (nesne düzeyinde güvenlik modelinde)Yes (through object-level security in model) HayırNo
Güvenlik duvarları desteklerSupports firewalls EvetYes EvetYes Evet 3Yes 3 Evet 3Yes 3 EvetYes EvetYes
Dinamik veri maskelemeDynamic data masking EvetYes HayırNo Evet 1Yes 1 Evet *Yes * HayırNo HayırNo

[1] kullanılmasını gerektirir bir etki alanına katılmış HDInsight kümesi.[1] Requires using a domain-joined HDInsight cluster.

[2] saydam veri şifrelemesi (TDE) şifreleme ve şifre çözme bekleyen verilerinizi kullanmayı gerektirir.[2] Requires using transparent data encryption (TDE) to encrypt and decrypt your data at rest.

[3] bir Azure sanal ağ içinde kullanıldığında.[3] When used within an Azure Virtual Network. Bkz: Azure HDInsight kullanarak bir Azure sanal ağ genişletme.See Extend Azure HDInsight using an Azure Virtual Network.