Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makalede Unity Kataloğu'nu kullanarak verilerle çalışmak için gereken bulut depolama bağlantılarına genel bir bakış ve Unity Kataloğu'nun bulut depolama ve dış bulut hizmetlerine erişimi nasıl idare ettiğini gösteren bilgiler verilmektedir.
Unity Kataloğu bulut depolamayı nasıl kullanır?
Databricks, bulut nesne depolama alanında depoladığınız tüm verilere erişimi yönetmek için Unity Kataloğu'nu kullanmanızı önerir. Unity Kataloğu, bulut nesne depolamasına güvenli bağlantılar yapılandırmak için bir araç paketi sağlar. Bu bağlantılar aşağıdaki eylemleri tamamlamak için erişim sağlar:
- Ham verileri bir lakehouse'a yükleyin.
- Unity Kataloğu tarafından yönetilen bulut depolama alanında yönetilen tablolar ve yapılandırılmamış verilerin yönetilen birimlerini oluşturun ve okuyun.
- Bulut sağlayıcınız kullanılarak yönetilen bulut depolama alanında tablosal verileri ve yapılandırılmamış verileri içeren dış birimleri içeren dış tabloları kaydedin veya oluşturun.
- Yapılandırılmamış verileri (Unity Kataloğu birimleri) okuma ve yazma.
Daha açık olmak gerekirse Unity Kataloğu, bulut depolamayı iki birincil yolla kullanır:
- Databricks'te oluşturduğunuz yönetilen tablolar ve yönetilen birimler (yapılandırılmamış, tablosal olmayan veriler) için varsayılan (veya "yönetilen") depolama konumları. Bu yönetilen depolama konumları meta veri deposu, katalog veya şema düzeyinde tanımlanabilir. Bulut sağlayıcınızda yönetilen depolama konumları oluşturursunuz, ancak bunların yaşam döngüsü Unity Kataloğu tarafından tamamen yönetilir.
- Dış tabloların ve birimlerin depolandığı depolama konumları. Bunlar, Azure Databricks'ten erişimi Unity Catalog tarafından yönetilen, ancak veri yaşam döngüsü ve dosya düzeni bulut sağlayıcınız ile diğer veri platformları kullanılarak yönetilen tablolar ve hacimlerdir. Genellikle Azure Databricks'e büyük miktarda mevcut verilerinizi kaydetmek için veya Azure Databricks dışındaki araçları kullanarak verilere yazma erişimine de ihtiyacınız varsa dış tablolar kullanırsınız.
Yönetilen ve dış tablolar ve birimler hakkında daha fazla bilgi için bkz. Azure Databricks tabloları ve Unity Kataloğu birimleri nedir?.
Uyarı
Unity Kataloğu olmayan kimliklere Unity Kataloğu tarafından yönetilen tablolara veya birimlere depolama düzeyinde erişim vermeyin. Bu, veri güvenliğini ve idareyi tehlikeye atabilir.
Kullanıcılara, hizmet sorumlularına veya yönetilen kimliklere, Unity Kataloğu tarafından yönetilen verileri içeren Azure Data Lake Storage kapsayıcılarına doğrudan erişim verilmesi, Unity Kataloğu'nu devre dışı bırakır. Bu, verileri aşırı izinlere, sızdırmaya ve yetkisiz erişime maruz bırakırken denetimi karmaşık hale getirir ve yönetim yükünü artırır.
Unity Kataloğu yönetilen tablolarında doğrudan depolama erişimi desteklenmez.
Unity Kataloğu tarafından desteklenen bulut depolama seçenekleri
Unity Kataloğu, Azure Databricks için aşağıdaki bulut depolama seçeneklerini destekler.
| Bulut depolama seçeneği | Açıklama |
|---|---|
| Azure Data Lake Storage kapsayıcıları | Azure Data Lake Storage çoğu Azure Databricks kullanım örneği için uygundur. Bkz. Azure Data Lake Storage'a bağlanmak için depolama kimlik bilgisi oluşturma |
| AWS S3 demetleri | Azure Databricks, S3 bucketlarına platformlar arası salt okunur erişimi destekler. Bkz. AWS S3'e bağlanmak için depolama kimlik bilgisi oluşturma (salt okunur). |
| Cloudflare R2 demetleri | Cloudflare R2, veri çıkış ücretlerinden kaçınmak istediğiniz Delta Sharing kullanım örneklerine yöneliktir. Bkz. Cloudflare R2'ye bağlanmak için depolama kimlik bilgisi oluşturma. |
| DBFS Ana Dizini | DBFS kökü eski bir bulut depolama konumudur. Databricks verileri DBFS kök depolama alanında depolamamanızı önerse de, eski uygulamalar nedeniyle çalışma alanınız bunu yapabilir. Bkz . DBFS kök dış konumuna bağlanma (eski). |
Unity Kataloğu bulut depolamaya erişimi nasıl yönetir?
Unity Catalog, tabloları ve birimleri barındıran temel alınan bulut depolamaya erişimi yönetmek için, bulut depolama konumunun yolunu ve bu konuma erişmek için gereken kimlik bilgilerini tanımlayan dış konum olarak adlandırılan güvenli hale getirilebilir bir nesne kullanır. Bu kimlik bilgileri, Unity Kataloğu'nda güvenli hale getirilebilen bir nesne olan depolama kimlik bilgileri olarak tanımlanır. Unity Kataloğu'nda dış konum güvenliği sağlanabilir öğelere erişim izni vererek ve iptal ederek bulut depolama konumundaki verilere erişimi denetleyebilirsiniz. Unity Catalog'da depolama kimlik bilgileri güvenlik öğelerine erişim verip bu erişimi iptal ederek, dış konum nesneleri oluşturma yeteneğini kontrol edebilirsiniz.
Depolama kimlik bilgilerine genel bakış
Depolama kimlik bilgileri, bulut kiracınızda depolanan verilere erişmek için kullanılan bir kimlik doğrulama ve yetkilendirme mekanizmasını temsil eder. Örneğin, depolama kimlik bilgileri Azure Data Lake Storage kapsayıcıları için Azure yönetilen kimliği veya hizmet sorumlusuyla ya da Cloudflare R2 demetleri için R2 API belirteci ile ilişkilendirilir.
Unity Kataloğu'nda verilen ayrıcalıklar, hangi kullanıcıların ve grupların dış konumları tanımlamak için kimlik bilgilerini kullanabileceğini denetler. Depolama kimlik bilgilerini oluşturma ve kullanma izni yalnızca dış konum nesneleri oluşturması gereken kullanıcılara verilmelidir.
Dış konumlara genel bakış
Dış konum, bulut depolama yolunu belirtilen yola erişim yetkisi veren bir depolama kimlik bilgileriyle birleştirir. Birden çok dış konum aynı depolama kimlik bilgilerini kullanabilir. Dış konumlar desteklenen bulut depolama seçeneklerinden herhangi birinde depolama yollarına başvurabilir.
Aşağıdaki diyagram, dış konumların depolama kimlik bilgilerini ve bulut depolama konumlarını nasıl referans aldığını göstermektedir.
Bu diyagramda:
- Her dış konum bir depolama kimlik bilgilerine ve bir bulut depolama konumuna başvurur.
- Birden çok dış konum aynı depolama kimlik bilgilerine başvurabilir.
Depolama kimlik bilgileri 1 , yolunun
bucket/tables/*altındaki her şeye erişim verir, bu nedenle hem Dış konum A hem de Dış konum B buna başvurur.
Dış konumlar Unity Kataloğu'nda hem dış tablolar ve dış birimler gibi dış veri varlıkları hem de yönetilen tablolar ve yönetilen birimler gibi yönetilen veri varlıkları için kullanılır. Unity Kataloğu'ndaki dış ve yönetilen veri varlıkları arasındaki fark hakkında daha fazla bilgi için bkz. Azure Databricks tabloları ve Unity Kataloğu birimleri nedir?.
Unity Kataloğu'nda verilen ayrıcalıklar, dış konum tarafından tanımlanan bulut depolama yoluna hangi kullanıcıların ve grupların erişebileceğini denetler. Dış konum oluşturma ve kullanma izni yalnızca dış tablolar, dış birimler veya yönetilen depolama konumları oluşturması gereken kullanıcılara verilmelidir.
Dış konumları kullanmaya yönelik en iyi yöntemler hakkında bilgi edinmek için bkz. Dış konumlar.
Dış tablolar ve birimler oluştururken dış konumları kullanma
Unity Kataloğu'nda kayıtlı dış tablolar ve dış birimler temelde Azure Databricks dışında yönettiğiniz bulut depolamadaki verilerin işaretçileridir. Unity Kataloğu'nda bir dış tablo veya dış birim oluşturduğunuzda, size yeterli ayrıcalıkların verildiği bir dış konum nesnesine dahil edilen bir bulut depolama yoluna başvurmanız gerekir. Unity Kataloğu'ndaki dış ve yönetilen veri varlıkları arasındaki fark hakkında daha fazla bilgi için bkz. Azure Databricks tabloları ve Unity Kataloğu birimleri nedir?. Ayrıcalıklar için bkz . Dış konumda izin verme.
Yönetilen depolama oluştururken dış konumları kullanma
Yönetilen tablolar ve yönetilen birimler Unity Kataloğu tarafından tamamen yönetilir. Bunlar varsayılan olarak meta veri deposu, katalog veya şema düzeyinde tanımlanabilen yönetilen bir depolama konumunda depolanır. Meta veri deposuna, kataloğa veya şemaya yönetilen depolama konumu atadığınızda, dış konum nesnesine başvurmanız ve bunu kullanmak için yeterli ayrıcalıklara sahip olmanız gerekir. Bkz. Unity Kataloğu ve Unity Kataloğu en iyi yöntemlerinde yönetilen depolama konumu belirtme.
Bulut depolamadaki verilere yol tabanlı erişim
Unity Kataloğu, bulut depolama URI'lerini kullanarak dış tablolara ve dış birimlere yol tabanlı erişimi desteklese de Databricks, kullanıcıların tablo adlarını kullanarak tüm Unity Kataloğu tablolarını okumalarını ve yazmalarını ve yolları kullanarak /Volumes birimlerdeki verilere erişmelerini önerir.
Birimler, çoğu Azure Databricks kullanıcısının bulut nesne depolamadaki tablosal olmayan verilerle doğrudan etkileşim kurmak için kullanması gereken güvenli hale getirilebilir nesnedir. Bkz. Unity Catalog'un birimleri nelerdir?.
Uyarı
Databricks dışı bir istemci kullanarak veya Databricks'in içinden yol tabanlı erişim kullanarak dış tablo meta verilerini güncelleştirirseniz, bu meta veriler Unity Kataloğu ile durumu otomatik olarak eşitlemez. Databricks bu tür meta veri güncelleştirmelerine karşı öneride bulunur, ancak bunu yaparsanız, Unity Kataloğu'nda şemayı güncel hale getirmek için MSCK REPAIR TABLE <table-name> SYNC METADATA çalıştırmanız gerekir. Bkz. REPAIR TABLE.
Unity Kataloğu'nda bulut depolamaya erişimi yönetmeye yönelik iş akışı
Unity Kataloğu'nu kullanarak bulut depolamaya erişimi yönetmek için aşağıdakileri yapın:
- Bulut depolama yoluna erişimi sağlamak için Azure yönetilen kimliği veya hizmet sorumlu kimliği gibi uzun vadeli bulut kimlik bilgilerini içeren bir depolama kimlik bilgisi nesnesi oluşturun.
- Depolama yoluna ve depolama kimlik bilgisi nesnesine başvuran bir dış konum nesnesi oluşturun.
- Dış tablolar, dış birimler veya varsayılan yönetilen depolama konumları oluşturduğunuzda dış konuma dahil edilen bir yola başvurun. Bu, dış konumda veya alt yolda tanımlanan tam yol olabilir.
Unity Kataloğu ile Azure bulut depolama için en iyi yöntemler
Azure Databricks, Unity Kataloğu idaresi kullanılarak Azure Databricks'te işlenen veriler için Azure Depolama hizmeti olarak Azure Data Lake Storage'ın kullanılmasını gerektirir. Azure Data Lake Storage, depolama ve işlem maliyetlerini ayırmanıza ve Unity Kataloğu tarafından sağlanan ayrıntılı erişim denetiminden yararlanmanıza olanak tanır. Veriler OneLake'te (Microsoft Fabric veri gölü) depolanıyor ve Databricks tarafından (Unity Kataloğu'nu atlayarak) işleniyorsa, birleşik depolama ve işlem maliyetlerine maruz kalabilirsiniz. Paketlenmişse bu, okuma için yaklaşık 2 kat, yazma işlemleri için ise verileri depolama, okuma ve yazma için Azure Data Lake Storage Premium Katmanı ile karşılaştırıldığında 2,6 kat daha yüksek maliyetlere yol açabilir. Azure Blob Depolama, Unity Kataloğu ile de uyumsuzdur. Databricks, Fabric için kullandıkça öde fiyatlandırma modelinin kullanılmasını önererek depolama ve işlem seçeneklerinde daha fazla esneklik sunar.
Sonraki adımlar
- Azure Data Lake Storage'a bağlanmak için bir depolama kimlik bilgisi oluşturma
- Cloudflare R2'ye bağlanmak için bir depolama kimlik bilgisi oluşturma
- AWS S3'e bağlanmak için depolama kimlik bilgileri oluşturma (salt okunur)
- Bulut depolama alanını Azure Databricks'e bağlamak için dış konum oluşturma
- Unity Kataloğu'nda yönetilen depolama konumu belirtme
- Depolama kimlik bilgilerini yönetme
- Dış konumları yönetme