Azure HDInsight kümeleriyle Azure Data Lake Storage 2. Nesil hizmetini kullanma
Azure Data Lake Depolama 2. Nesil, Azure Blob depolama üzerine inşa edilmiş büyük veri analizine ayrılmış bir bulut depolama hizmetidir. Data Lake Depolama 2. Nesil, Azure Blob depolama ve Azure Data Lake Depolama 1. Nesil özelliklerini birleştirir. Sonuçta elde edilen hizmet, Azure Data Lake Depolama 1. Nesil'den dosya sistemi semantiği, dizin düzeyinde ve dosya düzeyinde güvenlik ve uyarlanabilirlik gibi özellikler sunar. Azure Blob depolamanın düşük maliyetli, katmanlı depolama, yüksek kullanılabilirlik ve olağanüstü durum kurtarma özellikleriyle birlikte.
Data Lake Depolama 2. Nesil'i kullanarak küme oluşturma seçeneklerinin tam karşılaştırması için bkz. Azure HDInsight kümelerle kullanım için depolama seçeneklerini karşılaştırma.
Uyarı
HDInsight kümeleri için faturalandırma, bunları kullanıp kullanmayacağınızı, dakika başına eşit olarak dağıtılır. Kullanmayı bitirdikten sonra kümenizi sildiğinizden emin olun. Bkz. HDInsight kümesini silme.
Data Lake Depolama 2. Nesil kullanılabilirliği
Data Lake Depolama 2. Nesil, neredeyse tüm Azure HDInsight için hem varsayılan hem de ek bir depolama hesabı olarak kullanılabilir. Ancak HBase, Data Lake 2. Nesil'de yalnızca Depolama olabilir.
Not
Birincil depolama türünüz olarak Data Lake Depolama 2. Nesil'i seçmenizin ardından, ek depolama alanı olarak Data Lake Depolama 1. Nesil'i seçesiniz.
Data Lake Depolama 2. Nesil kullanarak HDInsight kümeleri oluşturma
Data Lake Depolama 2. Nesil erişimi olan HDInsight kümeleri oluşturma hakkında ayrıntılı yönergeler için aşağıdaki bağlantıları kullanın.
- Portalı kullanma
- Azure CLI’yı kullanma
- PowerShell şu anda Azure Data Lake Depolama 2. Nesil ile HDInsight kümesi oluşturma desteğine sahip değildir.
HDInsight'ta Data Lake Depolama 2. Nesil için erişim denetimi
Data Lake 2. Nesil hangi Depolama destekler?
Data Lake Depolama 2. Nesil, hem Azure rol tabanlı erişim denetimi (Azure RBAC) hem de POSIX gibi erişim denetim listelerini (ACL) destekleyen bir erişim denetimi modeli kullanır. Data Lake Depolama 1. Nesil, erişim denetim listelerini yalnızca verilere erişimi denetlemek için destekler.
Azure RBAC, azure kaynakları için kullanıcılara, gruplara ve hizmet sorumlulara etkin bir şekilde izin kümeleri uygulamak için rol atamalarını kullanır. Bu Azure kaynakları genellikle üst düzey kaynak (örneğin, Azure Blob depolama hesapları) ile kısıtlanmış olur. Azure Blob depolama ve Data Lake Depolama 2. Nesil için bu mekanizma dosya sistemi kaynağına genişletildi.
Azure RBAC ile dosya izinleri hakkında daha fazla bilgi için bkz. Azure rol tabanlı erişim denetimi (Azure RBAC).
ACL'ler ile dosya izinleri hakkında daha fazla bilgi için bkz. Dosya ve dizinlerde erişim denetim listeleri.
Nasıl yaparım? Data Lake 2. Nesil'de verilerime erişimi Depolama mı?
HDInsight kümenizin Data Lake Depolama 2. Nesil'de dosyalara erişme özelliği yönetilen kimlikler aracılığıyla denetleniyor. Yönetilen kimlik, Azure Active Directory (Azure AD) tarafından yönetilen bir kimliktir. Yönetilen kimliklerle, Azure AD'de hizmet sorumlularını kaydetmeniz gerek yok. Veya sertifikalar gibi kimlik bilgilerini koruyarak.
Azure hizmetlerinin iki tür yönetilen kimliği vardır: sistem tarafından atanan ve kullanıcı tarafından atanan. HDInsight, Data Lake 2. Nesil'e erişmek için kullanıcı tarafından Depolama kullanır. , user-assigned managed identity tek başına bir Azure kaynağı olarak oluşturulur. Bir oluşturma işlemi çerçevesinde, Azure kullanılan abonelik tarafından güvenilen Azure AD kiracısında bir kimlik oluşturur. Kimlik oluşturulduktan sonra, bir veya birden çok Azure hizmet örneğine atanabilir.
Kullanıcı tarafından atanan kimliğin yaşam döngüsü, bu kimliğin atandığı Azure hizmet örneklerinin yaşam döngüsünden ayrı olarak yönetilir. Yönetilen kimlikler hakkında daha fazla bilgi için bkz. Azure kaynakları için yönetilen kimlikler nedir?.
Nasıl yaparım? Azure AD kullanıcılarının Hive veya diğer hizmetleri kullanarak Data Lake Depolama 2. Nesil'deki verileri sorgulama izinlerini nasıl ayarlayabilirsiniz?
Kullanıcıların verileri sorgulama izinlerini ayarlamak için ACL'lerde atanan sorumlu olarak Azure AD güvenlik gruplarını kullanın. Dosya erişim izinlerini tek tek kullanıcılara veya hizmet sorumlularına doğrudan atamayın. İzin akışını denetlemeye yönelik Azure AD güvenlik gruplarıyla, ACL'leri dizin yapısının tamamına yeniden uygulamadan kullanıcı veya hizmet sorumluları ekleyebilir ve kaldırabilirsiniz. Kullanıcıları yalnızca uygun Azure AD güvenlik grubundan eklemeniz veya kaldırmanız gerekir. ACL'ler devralınmaz, bu nedenle ACL'lerin yeniden uygulama için her dosya ve alt dizinde ACL'nin güncelleştirilimi gerekir.
Kümeden dosyalara erişme
Data Lake Depolama 2. Nesil'de bir HDInsight kümesinden dosyalara erişmenin çeşitli yolları vardır.
Tam adı kullanarak. Bu yöntemle, erişmek istediğiniz dosyanın tam yolunu girersiniz.
abfs://<containername>@<accountname>.dfs.core.windows.net/<file.path>/Kısaltılmış yol biçimi kullanarak. Bu yaklaşımda, küme köküne kadar olan yolu şu şekilde değiştirirsiniz:
abfs:///<file.path>/Göreli yolu kullanarak. Bu yöntemle, erişmek istediğiniz dosyanın yalnızca göreli yolunu girersiniz.
/<file.path>/
Veri erişimi örnekleri
Örnekler, kümenin baş düğümüne ssh bağlantısına dayalıdır. Örnekler üç URI şemasını da kullanır. ve CONTAINERNAME değerlerini STORAGEACCOUNT ilgili değerlerle değiştirin
Birkaç hdfs komutu
Yerel depolamada bir dosya oluşturun.
touch testFile.txtKüme depolamada dizinler oluşturun.
hdfs dfs -mkdir abfs://CONTAINERNAME@STORAGEACCOUNT.dfs.core.windows.net/sampledata1/ hdfs dfs -mkdir abfs:///sampledata2/ hdfs dfs -mkdir /sampledata3/Verileri yerel depolamadan küme depolama alanına kopyalayın.
hdfs dfs -copyFromLocal testFile.txt abfs://CONTAINERNAME@STORAGEACCOUNT.dfs.core.windows.net/sampledata1/ hdfs dfs -copyFromLocal testFile.txt abfs:///sampledata2/ hdfs dfs -copyFromLocal testFile.txt /sampledata3/Küme depolama alanı üzerinde dizin içeriğini listele.
hdfs dfs -ls abfs://CONTAINERNAME@STORAGEACCOUNT.dfs.core.windows.net/sampledata1/ hdfs dfs -ls abfs:///sampledata2/ hdfs dfs -ls /sampledata3/
Hive tablosu oluşturma
Üç dosya konumu, açıklayıcı amaçlarla gösterilir. Gerçek yürütme için girdilerden yalnızca LOCATION birini kullanın.
DROP TABLE myTable;
CREATE EXTERNAL TABLE myTable (
t1 string,
t2 string,
t3 string,
t4 string,
t5 string,
t6 string,
t7 string)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ' '
STORED AS TEXTFILE
LOCATION 'abfs://CONTAINERNAME@STORAGEACCOUNT.dfs.core.windows.net/example/data/';
LOCATION 'abfs:///example/data/';
LOCATION '/example/data/';