Databricks
Veri kümelerini Qlik Cloud Veri Entegrasyonu içine yerleştirmek ve burada depolamak için Databricks veri platformu olarak kullanılabilir.
-
SSL'yi etkinleştir etkinleştirilmelidir.
-
Desteklenen sürümler ve dağıtımlar:
- Databricks Yalnızca 10.4
-
SQL Depo kümeleri
Databricks bağlantısıyla ilgili daha fazla bilgi için bk. Databricks bağlantısı oluşturma (yalnızca İngilizce).
Ayrıca, uygulanıp depolanmadan önce verilerin ve değişikliklerin hazırlandığı bir bulut hazırlama alanınız olması gerekir. Şu depolama platformlarını kullanabilirsiniz:
-
Amazon S3 (yalnızca İngilizce)
-
Azure Data Lake Storage
Bulut hazırlama alanı olarak Azure Data Lake Storage ile bağlantı kurma
-
Google Cloud Storage (yalnızca İngilizce)
Genel izinler
- Data Movement gateway Sunucusu makinesindeki saat doğru olmalıdır.
- Databricks tablo izinleri: Data Movement gateway Databricks tablolarında aşağıdaki işlemleri gerçekleştirmek için izinler gerektirir: CREATE, DROP, TRUNCATE, DESCRIBE ve ALTER table.
- ADLS Gen2 dosya sisteminin Erişim Denetimi (IAM) ayarlarında, Data Movement gateway ürününe (AD Uygulama Kimliği) "Depolama Blob Verilerine Katkıda Bulunan" rolünü atayın. Rolün devreye girmesi birkaç dakika alabilir.
- Data Movement gateway ürününün ODBC üzerinden bir Databricks kümesine bağlanması için kullanıcılara Databricks hesaplarında "Bağlanabilir" izni verilmesi gerekir.
- Databricks'e erişmek için geçerli bir güvenlik belirteci gerekir. Belirteç, uç nokta ayarlarında Databricks ODBC Erişimi alanları yapılandırılırken belirtilebilir.
-
Microsoft Azure Data Lake Depolaması (ADLS) 2. Nesil ile yeni bir küme yapılandırılırken "Spark Config" bölümüne aşağıdaki satır eklenmelidir.
spark.hadoop.hive.server2.enable.doAs false
-
Databricks kümesinden depolama dizinlerine erişebilmek için kullanıcıların o Depolama Hesabı ve hesabın anahtarı için bir yapılandırma (Spark Config'de) eklemesi gerekir.
Örnek:
fs.azure.account.key.<storage-account-name>.dfs.core.windows.net <storage-account-access-key>
Ayrıntılar için şu adresteki Databricks çevrimiçi yardımına bakın: https://docs.databricks.com/clusters/configure.html#spark-configuration
-
En iyi uygulama, performansı etkileyebileceğinden Databricks veritabanı için kök konumu (/Usr/Hive/Warehouse/) kullanmamaktır.
Depolama erişimi
Bulut depolamasına erişmek için Databricks SQL işlemi yapılandırılmalıdır. Talimatlar için satıcının çevrimiçi yardımına bakın.
Bulut hazırlama alanı olarak Azure Data Lake Storage ile bağlantı kurma
Qlik Cloud Veri Entegrasyonu uygulamasında veri platformu olarak Databricks kullanırken Azure Data Lake Storage Gen2'yi bulut hazırlama alanı olarak kullanabilirsiniz. Bulut hazırlama alanı, verilerin ve değişikliklerin uygulanıp depolanmadan önce hazırlandığı yerdir.
Veri projesini oluştururken Azure Data Lake Storage bulut hazırlama alanına bağlanmanız gerekir. Aşağıdaki ayarlar gereklidir:
-
Depolama Hesabı
Depolama hesabının adı.
-
Kapsayıcı adı
Bulut hazırlama alanı olarak kullanılacak kapsayıcının adı.
-
Azure Active Directory Kiracı Kimliği
Aboneliğin Azure Active Directory'deki kiracı kimliği.
-
Azure Uygulama Kaydı İstemci Kimliği
Uygulamanın Azure Active Directory'deki istemci kimliği.
-
Azure Uygulama Kaydı Gizli Bilgisi
Uygulamanın Azure Active Directory'deki gizli bilgisi
-
Erişim anahtarı
Depolama hesabının erişim anahtarı.
Ayrıca SQL Server kimlik bilgilerini otomatik olarak oluşturmayı da seçebilirsiniz.
Qlik Data Gateway - Veri Hareketi önkoşulları
Veri Hareketi ağ geçidi makinesinde aşağıdaki önkoşulları karşılamanız gerekir.
Sürücü kurulumu
driver öğesini, sürücü yükleme yardımcı programını kullanarak (önerilir) veya manuel olarak yükleyebilirsiniz. Manuel yükleme, nadir görülen şekilde sürücü yükleme yardımcı programında bir sorunla karşılaşmanız durumunda denenmelidir.
Sürücüyü yüklemek için sürücü yükleme yardımcı programı kullanma
Bu bölümde, gerekli driver öğesinin nasıl yükleneceği açıklanmıştır. Sürece, gerekli driver öğesini otomatik olarak indirecek, yükleyecek ve yapılandıracak bir komut dosyası çalıştırma işlemi dahildir. Gerektiğinde driver öğesini güncellemek ve kaldırmak için de komut dosyaları çalıştırabilirsiniz.
Yüklemeyi hazırlama
-
Python 3.6 veya daha yeni bir sürümünün Veri Hareketi ağ geçidi sunucusunda yüklü olduğundan emin olun.
Python, çoğu Linux dağıtımında önceden yüklenmiş şekilde sunulur. Aşağıdaki komutu çalıştırarak sisteminizde yüklü olan Python sürümünü öğrenebilirsiniz:
python --version
driver uygulamasını yükleme
driver öğesini indirip yüklemek için:
-
Veri Hareketi ağ geçidi makinesinde, çalışan dizini şu şekilde değiştirin:
opt/qlik/gateway/movement/drivers/bin
-
Şu komutu çalıştırın:
Söz Dizimi:
./install databricks
driver yüklenemiyorsa (erişim kısıtlamaları veya teknik sorunlar nedeniyle) driver öğesini nereden indireceğiniz ve Veri Hareketi ağ geçidi makinesinde nereye kopyalayacağınız konusunda size talimat veren bir mesaj görünür. Bu işlemi yaptıktan sonra install databricks komutunu tekrar çalıştırın.
Aksi durumda, driver öğesinin EULA'sı görünür.
-
Şunlardan birini yapın:
- EULA'da yavaşça gezinmek için [Enter] tuşuna tekrar tekrar basın.
- EULA'da hızlı bir şekilde gezinmek için Boşluk tuşuna tekrar tekrar basın.
- Lisans metninden çıkmak ve EULA kabul seçeneklerine ulaşmak için q tuşuna basın.
-
Şunlardan birini yapın:
- EULA'yı kabul etmek ve yükleme işlemini başlatmak için "y" yazıp [Enter] tuşuna basın.
- EULA'yı reddetmek ve yükleme işleminden çıkmak için "n" yazıp [Enter] tuşuna basın.
-
EULA'yı tekrar görüntülemek için "v" yazıp [Enter] tuşuna basın.
driver yüklenir.
driver öğesini güncelleme
Sağlanan driver öğesini yüklemeden önce driver öğesinin eski sürümlerini kaldırmak istiyorsanız güncelleme komutunu çalıştırın.
driver öğesini indirip güncellemek için:
-
Veri Hareketi ağ geçidi makinesinde, çalışan dizini şu şekilde değiştirin:
opt/qlik/gateway/movement/drivers/bin
-
Şu komutu çalıştırın:
Söz Dizimi:
./update databricks
driver yüklenemiyorsa (erişim kısıtlamaları veya teknik sorunlar nedeniyle) driver öğesini nereden indireceğiniz ve Veri Hareketi ağ geçidi makinesinde nereye kopyalayacağınız konusunda size talimat veren bir mesaj görünür. Bu işlemi yaptıktan sonra install databricks komutunu tekrar çalıştırın.
Aksi durumda, driver öğesinin EULA'sı görünür.
-
Şunlardan birini yapın:
- EULA'da yavaşça gezinmek için [Enter] tuşuna tekrar tekrar basın.
- EULA'da hızlı bir şekilde gezinmek için Boşluk tuşuna tekrar tekrar basın.
- Lisans metninden çıkmak ve EULA kabul seçeneklerine ulaşmak için q tuşuna basın.
-
Şunlardan birini yapın:
- EULA'yı kabul etmek ve yükleme işlemini başlatmak için "y" yazıp [Enter] tuşuna basın.
- EULA'yı reddetmek ve yükleme işleminden çıkmak için "n" yazıp [Enter] tuşuna basın.
- EULA'yı baştan incelemek için "v" yazıp [Enter] tuşuna basın.
Eski driver kaldırılacak ve yeni driver yüklenecektir.
driver öğesini kaldırma
driver öğesini kaldırmak istiyorsanız kaldırma komutunu çalıştırın.
driver öğesini kaldırmak için:
-
Verileri indirmek için Veri Hareketi ağ geçidi kullanılıyorsa tüm indirme görevlerinizi durdurun. Hedef üzerinde ELT işlemlerini gerçekleştirmek için farklı bir Veri Hareketi ağ geçidi kullanılıyorsa ilgili tüm görevleri (Veri Kaydı, Depolama, Dönüşümler ve Veri Ambarları) durdurun. Yerleştirme verileri için tek bir Veri Hareketi ağ geçidi kullanılıyorsa ve hedef üzerinde ELT görevleri gerçekleştiriliyorsa yukarıda bahsedilen tüm görevleri durdurun.
-
Veri Hareketi ağ geçidi makinesinde, çalışan dizini şu şekilde değiştirin:
opt/qlik/gateway/movement/drivers/bin
-
Şu komutu çalıştırın:
Söz Dizimi:
./uninstall databricks
driver kaldırılacaktır.
Sürücüyü manuel olarak yükleme
driver öğesini manuel olarak yüklemeyi yalnızca otomatik sürücü yükleme başarıyla tamamlanmadığında denemelisiniz.
Simba Spark ODBC Sürücüsü 2.6.22'yi indirin.
-
Data Movement gateway hizmetini durdurun:
sudo service repagent stop
-
İsteğe bağlı olarak hizmetin durduğunu doğrulayın:
sudo service repagent status
-
Sürücüyü Data Movement gateway makinesine yükleyin.
-
Yüklendikten sonra /etc/odbcinst.ini dosyasında şu bölümün göründüğünden emin olun:
-
Data Movement gateway hizmetini başlatın:
sudo service repagent start
-
İsteğe bağlı olarak hizmetin başlatıldığını doğrulayın:
sudo service repagent status
Çıktı şu şekilde olmalıdır:
running: /opt/qlik/gateway/movement/bin/agentctl -d /opt/qlik/gateway/movement/data service host
Çıktı şu şekilde olmalıdır:
not running: /opt/qlik/gateway/movement/bin/agentctl -d /opt/qlik/gateway/movement/data service host
[Simba Spark ODBC Driver] Description=Amazon Hive ODBC Driver (64-bit) Driver=/opt/simba/spark/lib/64/libsparkodbc_sb64.so
Bağlantı noktası
Giden iletişim için güvenlik duvarı bağlantı noktası 443'ün açılması gerekir.
Veri türleri
Aşağıdaki tabloda Qlik Cloud kullanırken desteklenen Databricks veri türleri ve Qlik Cloud veri türlerine ait varsayılan eşlemeler gösterilmektedir.
Qlik Cloud veri türleri | Databricks veri türleri |
---|---|
BOOLEAN |
BOOLEAN |
BYTES |
STRING |
DATE |
DATE |
TIME |
STRING |
DATETIME |
TIMESTAMP |
INT1 |
TINYINT |
INT2 |
SMALLINT |
INT4 |
INT |
INT8 |
BIGINT |
NUMERIC |
DECIMAL (kesinlik, ölçek) |
REAL4 |
FLOAT |
REAL8 |
DOUBLE |
UINT1 |
SMALLINT |
UINT2 |
INT |
UINT4 |
BIGINT |
UINT8 |
DECIMAL (20, 0) |
STRING |
VARCHAR (Bayt olarak uzunluk) |
WSTRING |
VARCHAR (Bayt olarak uzunluk) |
BLOB |
STRING |
NCLOB |
STRING |
CLOB |
STRING |
Sınırlamalar
-
AWS üzerinde birincil anahtarı olmayan tabloları olan Databricks kullanırken, tabloların yerleştirmeye yeniden yüklenmesi Depolama uygulamasına başarısız olur. Bunu çözmek için şunlardan birini yapabilirsiniz:
-
Tablolarda birincil anahtar tanımlama.
-
Databricks'te spark.databricks.delta.alterTable.rename.enabledOnAWS değerini True olarak ayarlama.
-