Ana içeriğe geç Tamamlayıcı içeriğe geç

Amazon Redshift

Veri kümelerini Qlik Cloud Veri Entegrasyonu içine yerleştirmek ve burada depolamak için Amazon Redshift veri platformu olarak kullanılabilir.

Amazon Redshift bağlantısıyla ilgili bilgi için bk. Amazon Redshift bağlantısı oluşturma (yalnızca İngilizce).

Amazon Redshift bağlantısının yapılandırılması için ayrıca verilerin ve değişikliklerin uygulanmadan ve depolanmadan önce hazırlandığı Amazon S3 bulut hazırlama alanında bağlantılar kurmanız gerekir. Daha fazla bilgi için bk. Amazon S3. (yalnızca İngilizce)

Dikkate alınacak noktalar ve sınırlamalar

  • Amazon Redshift bağlayıcı "devre dışı bırak" SSL modunu kullanmaya izin vermez.

  • Amazon Redshift bağlayıcı, yalnızca standart kimlik doğrulamasını (kullanıcı adı ve parola) destekler.

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.

  • 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 öğesini indirip yüklemek için:

  1. Veri Hareketi ağ geçidi makinesinde, çalışan dizini şu şekilde değiştirin:

    opt/qlik/gateway/movement/drivers/bin

  2. Şu komutu çalıştırın:

    Söz Dizimi:

    ./install redshift

    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 redshift komutunu tekrar çalıştırın.

    Aksi durumda, driver öğesinin EULA'sı görünür.

  3. Ş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.
  4. Ş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.

  5. driver yüklenir.

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:

  1. Veri Hareketi ağ geçidi makinesinde, çalışan dizini şu şekilde değiştirin:

    opt/qlik/gateway/movement/drivers/bin

  2. Şu komutu çalıştırın:

    Söz Dizimi:

    ./update redshift

    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 redshift komutunu tekrar çalıştırın.

    Aksi durumda, driver öğesinin EULA'sı görünür.

  3. Ş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.
  4. Ş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.
  5. Eski driver kaldırılacak ve yeni driver yüklenecektir.

driver öğesini kaldırmak istiyorsanız kaldırma komutunu çalıştırın.

driver öğesini kaldırmak için:

  1. 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.

  2. Veri Hareketi ağ geçidi makinesinde, çalışan dizini şu şekilde değiştirin:

    opt/qlik/gateway/movement/drivers/bin

  3. Şu komutu çalıştırın:

    Söz Dizimi:

    ./uninstall redshift

    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.

  1. Data Movement gateway hizmetini durdurun:

    sudo service repagent stop
  2. İsteğe bağlı olarak hizmetin durduğunu doğrulayın:

    sudo service repagent status

    Çıktı şu şekilde olmalıdır:

    not running: /opt/qlik/gateway/movement/bin/agentctl -d /opt/qlik/gateway/movement/data service host

  3. Amazon Redshift kümesine bağlanmak için gerekli Linux SQL istemci araçları öğesini indirin ve yükleyin. Qlik Data Gateway - Veri Hareketi, yalnızca Amazon Redshift ODBC Driver (x64) 1.4.65.1000 kullanır.

    Sürücüyü şuradan indirin:

    https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.65.1000/AmazonRedshiftODBC-64-bit-1.4.65.1000-1.x86_64.rpm

    ODBC sürücüsünü yükledikten sonra /etc/odbcinst.ini dosyasını aşağıdaki şekilde düzenleyin:

    [ODBC Drivers]

    Amazon Redshift (x64)=Installed

    Ayrıca:

    [Amazon Redshift (x64)]

    Description=Amazon Redshift ODBC Driver (64-bit)

    Driver=/opt/amazon/redshiftodbc/lib/64/libamazonredshiftodbc64.so

  4. Data Movement gateway hizmetini başlatın:

    sudo service repagent start
  5. İ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

Amazon Redshift tarafından desteklenen sürücülerin bir listesi için bk. http://docs.aws.amazon.com/redshift/latest/mgmt/configure-odbc-connection.html.

Bağlantı noktası

Bağlantı Noktası 5439'un (Amazon Redshift Kümesi) giden iletişim için açılması gerekir.

CA sertifikası

Data Movement gateway, AWS'ye SSL kullanarak bağlanır. Bu, Data Movement gateway makinesinde uygun bir CA sertifikası durmasını gerektirir; aksi takdirde bağlantı başarısız olur. CA sertifikasının amacı, AWS sunucu sertifikasının sahipliğini doğrulamaktır.

Gerekli CA sertifikasının Linux makinesinde şu konumda mevcut olduğundan emin olun:

/etc/pki/tls/certs/ca-bundle.crt

Mevcut değilse, en basit çözüm sertifika kümesini başka bir Linux makinesinden kopyalamaktır.

Gerekli izinler

Amazon S3'e veri yerleştirme için gereken izinler

  • Data Movement gateway makinesinden erişilebilen bir Amazon S3 demetiniz olmalıdır.

    Amazon S3'e kaydolma ile ilgili bilgiler için bkz. http://aws.amazon.com/s3/.

  • Demet erişimi kimlik bilgileri: Demet adı, bölge, erişim anahtarı ve gizli erişim anahtarını not alın; Amazon S3 connector ayarlarında bunları sağlamanız gerekecektir.
  • Demet erişim izinleri: Aşağıdaki demet erişim izinleri gereklidir:

     
    { "Version": "2012-10-17", "Statement": [ { "Sid": "Stmt1497347821000", "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::DEMETİNİZİN_ADI" ] }, { "Sid": "Stmt1497344984000", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:DeleteObject" ], "Resource": [ "arn:aws:s3:::DEMETİNİZİN_ADI/hedef_yol", "arn:aws:s3:::DEMETİNİZİN_ADI/hedef_yol/*" ] } ] } 

YOUR_BUCKET_NAME, demetinizin adı, target_path ise demetinizdeki hedef dosyaların istenen konumudur.

Bilgi notu

Hedef yol, demet köküyse boş bir dize ile “/target_path” belirtmeniz yeterlidir.

Redshift veritabanında gereken izinler

Redshift veritabanında aşağıdaki izinleri verin:

  • COPY (kopyala) izni verin
  • INSERT (ekle) izni verin
  • UPDATE (güncelle) izni verin
  • DELETE (sil) izni verin
  • SELECT (seç) izni verin
  • Create Schema (Şema Oluştur) (yalnızca şemalar mevcut değilse ve Replicate'in bunları oluşturmasını istiyorsanız gereklidir)
  • CREATE TABLE (tablo oluştur) izni verin
  • ALTER TABLE (tabloyu değiştir) izni verin
  • DROP TABLE (tabloyu bırak) izni verin

Genel önkoşullar ve dikkate alınacak noktalar

  • Veri kaynağınızda 4 baytlık emoji karakterleri varsa veri türünü WSTRING (n ) yerine WSTRING ( n*2 ) olarak değiştirmek için bir dönüştürme kullanın.

  • Data Movement gateway makinesindeki zaman ve saat dilimi ayarlarının doğru olduğundan emin olun. Bu, şunların sağlanması için gereklidir:

    • Tam Yükleme ve CDC görevlerinin düzgün senkronizasyonu
    • İşlem günlüğü zamanının gerçek zaman ile korelasyonu

Veri türleri

Aşağıdaki tabloda Qlik Cloud kullanırken desteklenen Amazon Redshift veri türleri ve Qlik Cloud veri türlerine ait varsayılan eşleme gösteriliyor.

Bilgi notuQlik Cloud içinde dize uzunluğu karakter cinsindenken Redshift'te varchar uzunluğu bayt cinsindendir. Karakter başına bayt sayısı, gerçek karakterlere ve kodlamaya bağlı olarak değişebilir. Qlik Cloud, uzunluğun karakter başına 3 bayt olduğu varsayar. Bu, wstring(10) tanımladığınızda pratikte tablonun varchar(30) olarak oluşturulacağı anlamına gelir.
Desteklenen veri türleri
Qlik Cloud veri türleri Amazon Redshift veri türleri

BOOLEAN

VARCHAR (1)

BYTES

Uzunluk => 1 ve =< 32767 ise o zaman:

VARCHAR (Bayt olarak uzunluk)

Uzunluk => 32768 ve =< 2147483647 ise o zaman:

VARCHAR (65535)

DATE

DATE

TIME

VARCHAR (20)

DATETIME

Ölçek => 0 ve =< 6 ise o zaman:

TIMESTAMP

Ölçek => 7 ve =< 12 o zaman:

VARCHAR (37)

INT1

INT2

INT2

INT2

INT4

INT4

INT8

INT8

NUMERIC

Ölçek => 0 ve =< 37 ise o zaman:

NUMERIC (kesinlik, ölçek)

Ölçek => 38 ve =< 127 ise o zaman:

VARCHAR (uzunluk)

REAL4

FLOAT4

REAL8

FLOAT8

UINT1

INT2

UINT2

INT4

UINT4

INT8

UINT8

SAYISAL (20,0)

WSTRING

Uzunluk => 1 ve =< 21845 ise o zaman:

NVARCHAR (Bayt olarak uzunluk)

Uzunluk => 21846 ve =< 2147483647 ise o zaman:

NVARCHAR (65535)

BLOB

VARCHAR (Maksimum LOB boyutu * 2)

NCLOB

NVARCHAR (maksimum LOB boyutu)

CLOB

VARCHAR (maksimum LOB boyutu)

Bu sayfa size yardımcı oldu mu?

Bu sayfa veya içeriği ile ilgili bir sorun; bir yazım hatası, eksik bir adım veya teknik bir hata bulursanız, bize bildirin, düzeltelim!