Akış verileri
Buluta alma işlemi, verileri kaynaktan aktarır ve Iceberg tablolarında depolar. Klasör veri kaynaklarından gelen değişiklikler, depolama tablolarına neredeyse gerçek zamanlı olarak sürekli uygulanır.
Verileri buluta al
Veriler bir İşlem hattı projesi içinde buluta alınır ve veri kümeleri proje ayarlarında tanımlanan S3 konumunda depolanır.
-
Projenizde Oluştur'a, sonra Verileri buluta al'a tıklayın.
-
Buluta alma için bir Görev adı ve isteğe bağlı bir Açıklama ekleyin.
İleri'ye tıklayın.
-
Kaynak bağlantısını seçin.
Mevcut bir akış kaynak Bağlantısı seçebilir veya kaynağa yeni bir Bağlantı oluşturabilirsiniz.
Daha fazla bilgi için bk. Veri klasörlerine bağlanma
İleri'ye tıklayın ve veri kaynağınız için aşağıdaki talimatları izleyin.
Verileri seçme
Apache Kafka
Liste, kaynak Bağlantısında tanımlanan kümeden kullanılabilir Kafka konularını görüntüler.
Konularınızı seçerken belirli veri kümelerini seçebilirsiniz. Veri kümesi gruplarını dahil etmek veya hariç tutmak için seçim kurallarını da kullanabilirsiniz:
-
Veri kümeleri için seçim kriterleri tanımlamak üzere % karakterini joker karakter olarak kullanın.
Konular seçim kuralları kullanılarak seçilirse, tüm veri kümelerini aynı hedef tabloya yüklemeyi mi yoksa her kaynak konu için ayrı bir hedef tablo oluşturmayı mı seçeceğinizi belirleyebilirsiniz:
-
Varsayılan olarak, hedef Iceberg tablo adı konu adından türetilir ve adlandırma kurallarına uymak üzere biçimlendirilir; örneğin, küçük harf, boşluklar kaldırılmış, kısa çizgiler alt çizgiyle değiştirilmiş. Hedef veri kümesi adını tanımla bölümünde, hedef tablonun adını düzenleyebilirsiniz.
-
Birden çok konuyu tek bir tabloya yüklemek için seçim kuralları kullanıldığında, hedef adı sağlamanız gerekir.
-
Seçim kuralları kullanıldığında ve veriler ayrı tablolara (konu başına bir veri kümesi) yüklendiğinde, varsayılan hedef adları konu adlarıdır. Bu aşamada, sihirbazdaki adları düzenleyemezsiniz, ancak bu daha sonra yerleştirme görevinde yapılabilir.
-
Bir kural, alım için konuları seçmek üzere yapılandırılmışsa, kural ölçütlerini karşılayan tüm yeni konular, yerleştirme görevi ayarlarındaki şema evrimi altındaki Yeni konu > Hedefe ekle seçeneği işaretliyse yerleştirilir.
Bir veya daha fazla veri kümesi seçin veya bir seçim kuralı kullanın ve Ekle'ye tıklayın. İleri'ye tıklayın.
Amazon Kinesis
Liste, kaynak Bağlantısında tanımlanan kullanılabilir Kinesis klasörlerini görüntüler.
Bir veya daha fazla veri kümesi seçin ve Ekle'ye tıklayın. Eklenen veri kümelerini Seçili klasörler altında görebilirsiniz. İleri'ye tıklayın.
Amazon S3
Dizin tarayıcısı, kaynak bağlantınızın S3 demetinde bulunan tüm dizinlerin bir listesini görüntüler.
-
Verileri yerleştirirken dahil edilecek dizinleri seçin:
-
Her dizin için, Yol ekle bölümünde yolu ve dosya adı desenini girin:
-
Herhangi bir karakterle eşleşmesi için * öğesini joker karakter olarak kullanın.
-
Bir tarih deseni girmek için, dört haneli yıl yer tutucusu olarak <yyyy>, iki haneli ay yer tutucusu olarak <MM>, iki haneli gün yer tutucusu olarak <dd> ve iki haneli saat yer tutucusu olarak <HH> kullanın. Örnek:
-
MyDir3/<yyyy>_<MM>_<dd>_<HH>_orders.csv
-
MyDir3/<yyyy>/<MM>/<dd>/<HH>_orders.csv
-
-
-
-
Önizle'ye tıklayarak Verileri önizle iletişim kutusunu açın. Dahil edilen ve hariç tutulan dosyaların bir listesi görüntülenir.
-
Yolların ve dosya adı desenlerinin doğru ve işlevsel olduğunu kontrol etmek için Doğrula'ya tıklayın.
-
Hedef veri kümesi adını tanımla bölümünde, konuyu hedef Iceberg tablosuyla eşlemek için bir ad sağlayın. İleri'ye tıklayın.
İçerik türünü seçme
Kaynak olay içerik türünü seçin.
-
Aldığınız olayların türünü Veri olaylarının türünü seçin bölümünde seçin.
-
Daha fazla bilgi için şuraya bakın: Veri klasörlerine bağlanma.
Seçilen içerik türü tüm konular, veri kümeleri veya veri olayları için geçerlidir. Almak istediğiniz her içerik türü için yeni bir görev oluşturmanız gerekir.
-
Verilerin ayrıştırılabildiğini onaylamak için Olayların doğru yüklendiğini doğrulayın bölümünü genişletin. Bu aşamada verilerin doğru olduğundan emin olmak iyi bir fikirdir, aksi takdirde işlem hattını yeniden oluşturmanız ve verileri tekrar yüklemeniz gerekir. Belirli veri kümelerini incelemek ve verilerin yüklenmesini etkileyebilecek uyarıları kontrol etmek için Veri kümesi seç öğesini kullanın. Verileri görüntülemek için herhangi bir yapı sütununun yanındaki göz simgesine tıklayın.
-
İleri'ye tıklayın.
Alma özelliklerini ayarlama
İşlem hattınızın ayarlarını yapılandırın:
-
Şuradan veri oku:
-
En eski olaydan başla: tüm geçmiş verileri al.
-
Şimdi başla: işlem hattı başladığı andan itibaren gelen yeni verileri al.
-
-
Sütunu içe içelikten çıkarma
-
İç içe sütunları koru: dönüşüm uygulanmaz.
-
Ayrı sütunlara ayır: veriler ayrı sütunlara bölünür.
-
-
Yeni veri kümeleri için yükleme ayarları
-
Yalnızca ekle: genellikle olay verileri için en iyi seçenektir çünkü genellikle kısa ömürlüdür ve güncellenmez, örneğin, Siparişler.
-
Değişiklikleri uygula: bu, zamanla güncellenen verilere en uygunudur, örneğin, Müşteriler. Anahtar alanlara dayanarak mevcut kayıtları günceller ve yeni kayıtlar ekler. Görevi tanımlarken anahtar alanları daha sonra belirtmeniz gerekecektir.
-
-
Hedef tablo bölmesi
Hedef tablo bölümleme seçeneği, işlem hattındaki tüm tablolara uygulanır. Bunu daha sonra özel bölümleme tanımlamak için tablo düzeyinde geçersiz kılabilirsiniz.
Bilgi notuBu seçenek yalnızca Yalnızca Ekle seçeneği Yükleme ayarları içinde seçildiğinde kullanılabilir.-
Bölme yok: tablolar herhangi bir bölümleme olmadan oluşturulur.
-
Olay alma tarihine göre bölme: tablolar, olayların alındığı tarihe göre bölümlenir.
-
-
Veri değişikliği işleme
Bilgi notuBu seçenek yalnızca Değişiklikleri uygula seçeneği Yükleme ayarları içinde seçildiğinde kullanılabilir.-
Yumuşak silmeleri dahil et: Silinmek üzere hangi kayıtların işaretleneceğini tanımlamak için bir ifade girin.
-
Geçmiş veri deposu oluştur (Tip 2): Bu, değiştirilen kayıtların önceki sürümlerini saklayacaktır.
-
-
İleri'ye tıklayın.
Özet
Özet ekranı, işlem hattınızın görsel bir görüntüsünü sağlar:
-
İsteğe bağlı olarak, Akış yerleştirme ve Akış Dönüştürme görevi için, yeni değerler sağlamak üzere Adı ve açıklamayı düzenle seçeneğine tıklayabilirsiniz.
-
İşlem hattı oluşturulduktan sonra ne olmasını istediğinize ilişkin seçeneği belirleyin.
-
Tüm ayarları yapılandırdığınızda, akış işlem hattını oluşturmak için Oluştur seçeneğine tıklayın.
-
Proje görüntülendiğinde, verileri almaya başlamak için her görevi hazırlayabilir ve çalıştırabilirsiniz.
-
Akış yerleştirme görevini hazırlayıp çalıştırın.
Daha fazla bilgi için şuraya bakın: Akış verilerini Qlik Açık Göl Evi hedefine yerleştirme.
-
Akış Dönüştürme görevini hazırlayıp çalıştırın.
Daha fazla bilgi için şuraya bakın: Klasör veri kümelerini saklama.
-
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.
-
İlkel öğelerden oluşan bir diziye atıfta bulunduğunuzda, taneciklik düzeyi diziyse öğenin veri türü kullanılır. Aksi takdirde dizi veri türü kullanılır.
Bu örnekte, OrderDetails INT veri türünde bir CustomerID dizisine sahiptir. OrderDetails.CustomerID, taneciklik düzeyi OrderDetails.CustomerID ise INT, taneciklik düzeyi OrderDetails ise ARRAY<INT> anlamına gelir.
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 | DİZİ<YAPI>. 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 | DİZİ<YAPI>. Anahtar-değer çiftlerini temsil eden yapı dizisi. |
| YAPI | YAPI |
| BİRLEŞİM |
Sınırlamalar ve dikkate alınacak noktalar
-
Yerleştirmede otomatik şema evrimi tarafından bir yapı veya dizi değiştirilirse, bir Qlik Talend Cloud streaming görevi tarafından oluşturulmayan aşağı akış görünümlerinin güncel kalması için güncellenmesi gerekebilir.
-
Bir görevde ayrıştırma hataları varsa, hata durumuna geçmez ve dikkat gerektiren olarak işaretlenmez. Ayrıştırma hataları sürekli artan bir metrik olduğundan, bir hata durumu için çıkış kriteri yoktur.
-
Bir küme yeteneğini kaldırmaya yalnızca o yeteneği kullanan görevler yoksa izin verilir.
-
Aynı birincil anahtara sahip bir kayıttaki güncellemeler ve silmeler bölüm sınırını aşmamalıdır, yani aynı bölüme eşlenmeleri gerekir.
-
Bir kaynak çok sayıda sütun içeriyorsa, görevlerde ve katalogda yalnızca sıklığa göre ilk 500 sütun görüntülenir. Tüm sütunlar S3 yerleştirme alanındaki Avro dosyalarına kaydedilir, ancak Iceberg tablolarında yalnızca ilk 500 sütun depolanır. Şema evriminde, yeni bir sütun eklenirse, sık kullanılsa bile en üstteki sütunlara eklenmez.