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

Veri klasörlerine bağlanma

Aşağıdaki klasör hizmetleri Qlik Açık Göl Evi projelerinde desteklenir. Olay verileri, aşağı akış veri entegrasyonu, analitik ve yapay zeka için neredeyse gerçek zamanlı kullanılabilirlik sağlamak amacıyla sürekli olarak alınır ve en güncel operasyonel etkinliği yansıtan düşük gecikmeli İşlem hatları etkinleştirilir.

Apache Kafka ve Amazon Kinesis gibi akış hizmetleri, operasyonel olayları oluştukları anda yakalamak için dayanıklı, yüksek verimli İşlem hatları sağlar. Toplu alıma dayanan dosya tabanlı kaynakların aksine, klasör kaynakları olaylar üretildikçe verileri sürekli olarak ileterek, dosyaların oluşturulmasını veya zamanlanmasını beklemeden neredeyse gerçek zamanlı işlemeyi etkinleştirir. Üreticiler, şemalarını koruyan ve bölümlemeyi destekleyen yapılandırılmış veya yarı yapılandırılmış mesajlar yayımlar. Aynı kayıt için tüm güncellemeler ve silmeler aynı bölüm anahtarını kullanmalıdır. Kafka ve Kinesis, sıralamayı yalnızca tek bir bölüm veya parçacık içinde garanti eder, tüm konu veya klasör genelinde değil; bu nedenle tutarlı bir bölüm anahtarı kullanmak, belirli bir kayıt için yapılan değişikliklerin doğru sırada işlenmesini sağlar. Qlik ayrıca olay verilerini sürekli olarak almak için Amazon S3'ü bir akış kaynağı olarak destekler.

Akışlı alım ve toplu alım

Klasör ve toplu veri kaynakları arasındaki farklar şunlardır:

  • Her iki kaynakla da olaylar her dakika verimli bir şekilde alınır, düşük gecikmeli işlemeyi ve neredeyse gerçek zamanlı analizi destekler.

  • Klasör olmayan kaynaklarda, önce mevcut verilerin tam yükü yapılır ve ardından değişiklikler alınır. Kaynaktan tam yük verilerini yeniden yükleyebilirsiniz.

  • Klasör kaynaklarında, ilk yükleme ile sonraki olaylar arasında temiz bir ayrım yoktur. Qlik saklamayı yönetebilir ve ayrıca bölümleri destekler.

Bilgi notuAkış görevleri, veri hacmine göre değil, işlem kullanımı (vÇekirdek x çalışma zamanı) temel alınarak faturalandırılır.

Bir Qlik Açık Göl Evi projesinde, akış kaynakları yalnızca Akış yerleştirme görevi ve Akış dönüştürme görevi ile kullanılabilir:

  • Akış verileri bir Akış yerleştirme görevi kullanılarak alınır ve ayrık dosyaları işlemek yerine, Akış yerleştirme görevi olayları geldikçe okur, verileri Amazon S3'e yerleştirir ve olayları Avro dosyaları olarak kalıcı hale getirir. Bu yaklaşım, şema evrimini korur, yapılar gibi karmaşık veri türlerini destekler ve sürekli bir alım modelini sürdürürken optimize edilmiş sorgu performansıyla verimli depolama sağlar.

  • Bir klasör kaynağından veri eklediğinizde, Iceberg biçiminde depolanacak her veri kümesi için otomatik olarak bir Klasör dönüştürme görevi eklenir. İsteğe bağlı olarak, Klasör dönüştürme görevi yapıları standartlaştırmak, olay yüklerini zenginleştirmek veya verileri aşağı akış tüketim modelleriyle hizalamak için kullanılabilir.

  • Bir Veri yansıtma görevi, klasör kaynaklarından gelen veri kümelerinin bulut veri depolarına yansıtılmasını sağlayarak aşağı akış sistemlerinin verileri çoğaltmadan klasör olaylarını tüketmesine olanak tanır. Daha fazla bilgi için bkz. Verileri bir bulut veri deposuna yansıtma.

Veri türü eşlemeleri

İlk kaynak şeması, işlem hattı projenizi oluştururken HAZIRLIK aşamasından önce alınan verilerin bir örneğine dayanır ve şema evrimi okuma zamanında ele alınır. STRUCT ve ARRAY'i desteklemeyen yansıtma görevleri ve diğer aşağı akış görevleri bir JSON türü kullanır. Veriler SQL kullanılarak ayrıştırılabilir.

Aşağıdaki veri türü eşlemeleri, desteklenen tüm veri kaynakları için geçerlidir ancak kaynak dosya türüne göre değişiklik gösterir ve aşağıdakilere dikkat edilmelidir:

  • Veri türleri, eklenen verilerin bir örneğinden çıkarılır. Örneğin, bir alan örnekte yalnızca tam sayı değerleri içeriyorsa, klasör yerleştirme ve dönüştürme görevlerinde INT8 olarak oluşturulur. Sonraki veriler çift kesinlikli kesirli değerler içeriyorsa, yerleştirme dosyaları bu değerleri içerir; ancak, Akış dönüştürme görevinde, Alan veri türünü değiştir ayarı Yoksay olarak ayarlanırsa, sütun INT8 olarak kalır ve kesirli değerler kesilir. İstenmeyen kesmeyi önlemek için, örnek verilerin işe almadan önce beklenen değerlerin tam aralığını içerdiğinden emin olun veya erken aşamalarda Alan veri türünü değiştir seçeneğini Görevi durdur olarak yapılandırın ve veri türlerini gerektiği gibi ayarlayın.

  • Kaynakta bir yapıya alan eklenirse, her zaman yerleştirme hedefine eklenir. Akış dönüştürme için davranış, Akış dönüştürme görevi ayarları > Şema evrimi > Yapıya alan ekle (Hedefe uygula, Yoksay, Görevi durdur) seçeneğine göre uygulanır.

  • Belirli bir kayıtta bir alan eksikse veya bir dizi boşsa, bunlar null olarak kabul edilir.

  • Bir veri kümesi bir dizi tarafından düzleştirilirse ve bu dizinin boş veya null olduğu bir kayıt gelirse, sistem bir satır oluşturur ve düzleştirilmiş alan null olur. Otomatik olarak hariç tutulmaz. Bu satırları hariç tutmak isterseniz, örneğin array_element IS NOT NULL gibi bir filtreyi manuel olarak ekleyin.

  • Kullanıcı arayüzünde görüntülenen veri türleri, seçilen veri kümesi ayrıntı düzeyini yansıtır. Düzleştirilmiş diziler için, dizi yapısının kendisi yerine tek tek öğenin veri türü gösterilir.

  • İç içe yerleştirilmiş bir JSON alanındaki bir yapı içinde yeni bir öznitelik eklenemez, yalnızca kök düzeyinde eklenebilir.

  • Klasör dönüştürme görevlerinde, düzleştirme yalnızca bir dizinin tek bir düzeyi için desteklenir. Çok düzeyli bir diziye düzleştirme uygulandığında, örneğin ARRAY<ARRAY<STRUCT>>, yalnızca dış dizi düzleştirilir ve tamamen düzleştirilmiş bir STRUCT yerine ARRAY<STRUCT> elde edilir. Ek olarak, mevcut kullanıcı arayüzü düzleştirmenin yalnızca sütun düzeyinde yapılandırılmasına izin verir. Sonuç olarak, çok düzeyli bir dizi seçmek, düzleştirmeyi yalnızca ilk dizi düzeyine örtük olarak uygular.

JSON

JSON dosyalarında, kaynaktaki sayısal değer hedef veri türünü belirler:

  • INT8, desteklenen tamsayı aralığına uyan ve kesirli bir bileşen içermeyen tamsayı değerleri için kullanılır.

  • REAL8 (DOUBLE), değer kesirli bir bileşen (kayan noktalı sayı) içerdiğinde kullanılır.

  • STRING, sayısal değer desteklenen maksimum tamsayı aralığını aştığında kullanılır.

Veri türleri aşağıdaki gibi eşlenir:

Kaynak veri türleri Qlik Talend Data Integration veri türü
STRING STRING
NUMBER INT8
NUMBER REAL8
NUMBER STRING
BOOLEAN BOOLEAN
ARRAY ARRAY
OBJECT YAPI

CSV, TSV, REGEX, ve SPLIT

Varsayılan olarak, tüm kaynak veri türleri bir dize olarak alınır. Kaynak ve hedef türleri aşağıdaki gibi eşlemek için Türleri otomatik olarak çıkar seçeneğini kullanın:

Kaynak veri türleri Qlik veri türü
NUMERIC INT8/REAL8
True/TRUE/true/False/FALSE/false BOOLEAN
TIMESTAMP yyyy-MM-dd HH:mm:ss veya yyyy-MM-ddTHH:mm:ssz biçimindeki zaman damgaları bir datetime türüne ayrıştırılır. Bir saat dilimi dahil edilirse, değer bir dize olarak ayrıştırılır.

Parquet

Parquet dosyaları fiziksel ve mantıksal veri türlerini destekler. Fiziksel veri türleri, değerlerin diskte nasıl depolandığını tanımlar; örneğin INT32, DOUBLE veya BYTE_ARRAY. Mantıksal veri türleri, fiziksel temsilin üzerinde anlamsal anlam sağlar; örneğin, bir tamsayı değerinin bir tarihi temsil edip etmediğini belirler. Bir Parquet sütununa mantıksal bir tür eklendiğinde ve Qlik Açık Göl Evi içinde (aşağıda listelendiği gibi) desteklendiğinde, Akış yerleştirme görevi, temel fiziksel tür yerine hedef şemayı tanımlarken mantıksal türü kullanır. Bu, verilerin doğru yorumlanmasını, kesinlik, ölçek ve zamansal anlam gibi amaçlanan semantiklerin korunmasını ve veriler alt akış biçimlerine yazıldığında daha doğru şemalar elde edilmesini sağlar.

Parquet dosyalarından alınan veriler aşağıdaki gibi eşlenir:

Kaynak veri türleri Mantıksal türler Qlik Talend Data Integration veri türü
BOOLEAN   BOOLEAN
INT32   INT8
INT64   INT8
INT96   DATETIME
FLOAT   REAL8
DOUBLE   REAL8
BAYT_DİZİSİ   DİZE (Base64 olarak kodlanmış)
SABİT_UZUNLUKLU_BAYT_DİZİSİ   DİZE (Base64 olarak Kodlanmış)
BAYT_DİZİSİ STRING STRING
BAYT_DİZİSİ ENUM STRING
INT32 DECIMAL INT8
INT64 DECIMAL INT8
SABİT_UZUNLUKLU_BAYT_DİZİSİ DECIMAL INT8/REAL8 (Base64 olarak Kodlanmış)
BAYT_DİZİSİ DECIMAL INT8/REAL8 (Base64 olarak Kodlanmış)
INT32 DATE DATE
INT32 ZAMAN(MİLİSANİYE,doğru) INT8
INT64 ZAMAN(MİKROSANİYE,doğru) TIME
INT64 TIMESTAMP(MICROS,true) DATETIME
INT64 TIMESTAMP(MILLIS,true) DATETIME
NESTED TYPES   YAPI
LIST   ARRAY
MAP   ARRAY<STRUCT>. Anahtar-değer çiftlerini temsil eden yapı dizisi.

Avro

Şema kayıt defteri olan Avro dosyaları için aşağıdaki eşlemeler geçerlidir.

Kaynak veri türleri Mantıksal türler Qlik Talend Data Integration veri türü
BOOLEAN   BOOLEAN
INT   INT8
LONG   INT8
FLOAT   REAL8
DOUBLE   REAL8
BYTES   STRING
STRING   STRING
KAYIT   YAPI
ENUM   STRING
ARRAY   ARRAY
MAP   DİZİ<YAPI>
BİRLEŞİM    
SABİT   STRING
BYTES DECIMAL DECIMAL
SABİT DECIMAL DECIMAL
INT DATE DATE
INT TIME-MILLIS INT8
INT TIME-MICROS TIME
LONG TIMESTAMP-MILLIS DATETIME
LONG TIMESTAMP-MICROS DATETIME

ORC

Aşağıdaki eşlemeler ORC dosyaları için geçerlidir.

Kaynak veri türleri Qlik Talend Data Integration veri türü
BOOLEAN BOOLEAN
BYTE INT8
SHORT INT8
INT INT8
LONG INT8
DATE DATE
FLOAT REAL8
DOUBLE REAL8
TIMESTAMP DATETIME
BINARY STRING
DECIMAL REAL8
STRING STRING
VARCHAR STRING
CHAR STRING
LIST ARRAY
MAP ARRAY<STRUCT>. Anahtar-değer çiftlerini temsil eden yapı dizisi.
YAPI YAPI
UNION  

Sınırlamalar

Aşağıdaki sınırlamalar tüm veri kaynakları için geçerlidir:

  • Dosyalarınız farklı türdeyse, bu durum birden çok kaynaktan veya sürümden geldiklerinde ortaya çıkabilir, tek bir örnek dosya kullanılarak oluşturulan dönüştürme görevi (örneğin, ilk kurulum sırasında) bu farklılıkları otomatik olarak hesaba katmaz.

  • Yerleştirme görevindeki veri türlerini değiştirirseniz, örneğin verileri karma hale getirmeniz gerektiği için, dönüştürme veri türlerinin yeni veri türleriyle eşleştiğinden emin olun.

Desteklenen kaynaklar

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 lütfen bize bildirin!