# Apache Parquet dosyalarıyla çalışma

Apache Parquet, büyük veri kümelerini depolamak ve sorgulamak için oldukça verimli bir sütunlu depolama biçimidir. Qlik Sense içinde, Parquet dosyalarındaki verileri okuyabilir ve tabloları Parquet dosyaları olarak depolayabilirsiniz.

Parquet, tüm tabloyu okumak yerine tablodaki belirli sütunların verimli bir şekilde sorgulanmasına olanak tanır. Bu, Parquet'i büyük veri işleme ile kullanım için oldukça uygun hâle getirir. Parquet, verilerin verimli bir şekilde sıkıştırılmasını ve şifrelenmesini de destekler. Bu, depolama alanını daha da azaltabilir ve sorgu performansını iyileştirebilir.

Bilgi notuAğustos 2023'ten önceki bir Qlik Sense sürümünde oluşturulan tüm mevcut uygulamalar, Parquet desteğini etkinleştirmek için manuel olarak güncellenmelidir. Bu, hem Ağustos 2023'e yükseltilen dağıtımlar için hem de mevcut uygulamaları yeni bir dağıtıma aktarırken gereklidir. Uygulamaları güncelleme hakkında daha fazla bilgi için bk. [Qlik Sense uygulamasındaki mevcut uygulamalar için Parquet dosyası desteğini etkinleştirme](https://community.qlik.com/t5/Official-Support-Articles/Enable-parquet-file-support-for-existing-Apps-in-Qlik-Sense/ta-p/2083285).

## Parquet dosyaları oluşturma

Komut dosyasındaki ParquetStore komutunu kullanarak dosyaları oluşturabilirsiniz. Kod içinde önceden okunan bir tablonun veya bunun bir parçasının seçtiğiniz bir konumdaki açıkça adlandırılmış bir dosyaya dışa aktarılmasını belirtin. Depoladığınız verileri Parquet dosyalarında iç içe geçirebilirsiniz.

Daha fazla bilgi için bkz. [Store](https://help.qlik.com/tr-TR/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Store.htm).

## Parquet dosyalarından veri okuma

Parquet tarafından desteklenen diğer veri dosyalarında olduğu gibi, bir Qlik Sense dosyasındaki verileri okuyabilirsiniz. Buna Veri yöneticisi, Veri yükleme düzenleyicisi veya yeni bir uygulamaya veri eklediğiniz zamanlar dahildir.

Daha fazla bilgi için bkz. [Dosyalardan veri yükleme](https://help.qlik.com/tr-TR/sense/May2026/Subsystems/Hub/Content/Sense_Hub/DataSource/load-data-from-files.htm).

LOAD komutuyla veri komut dosyasında da bir Parquet dosyasından veri yükleyebilirsiniz. Örneğin:

```
LOAD  * from xyz.parquet (parquet);
```

Daha fazla bilgi için bkz. [Load](https://help.qlik.com/tr-TR/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm).

### İç içe geçirilmiş Parquet dosyalarından veri yükleme

Bir Parquet dosyası iç içe geçirilmiş veriler içeriyorsa her biri, her tabloya hangi alt kümenin yüklenmesi gerektiğini belirten birden fazla load deyiminde yüklenmelidir. Table is belirticisi, yüklenecek şemada grup düğümünün bir yolunu kanıtlamak için kullanılır.

Sadece Table is yoluyla eşleşen düğümler yüklenir.

Veri düğümü, iç içe geçirme olmadan bir dosyaya yüklenir.

Grup düğümleri, adlarını alan adına ekleyerek gruptaki alanları gruplar. Örneğin field1 ve field2, group.field1 ve group.field2 olarak yüklenir.

Liste düğümleri, tablolara bağlantı vermek için kullanılan anahtar alanlar oluşturacaktır. Örneğin, %Key\_group.list. Listenin içindeki herhangi bir grup veya veri düğümünün ayrı bir load deyiminde yüklenmesi gerekir. Üst öğe listesinin anahtar alanı da eklenecektir.

Aşağıdaki örnekler, Parquet ve [İç içe geçirilmiş verileri Parquet dosyalarında saklama](https://help.qlik.com/tr-TR/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Store.htm#Storing) kullanarak bir uygulamaya yüklenmiş, Veri yöneticisi örneğinde oluşturulan aynı iç içe geçirilmiş Veri yükleme düzenleyicisi dosyasını göstermektedir (Veri seç kısmından varsayılan komut dosyası ve özel komut dosyası ile).

Örnek: Veri yöneticisi

Veri yöneticisi içinde customer.parquet yükler ve tüm önerilen ilişkilendirmeleri uygularsanız, aşağıdaki veri modelini elde edersiniz:

Veri yöneticisi ile company.parquet yüklemek için veri modeli

Veri yöneticisi ile company.parquet yüklemek için veri modeli

Veri yöneticisiVeri yöneticisi ile company.parquetcompany.parquet yüklemek için veri modeli ![Data model showing the tables company:salesrep.salesrep, company, company:headquarter.headquarter, and company:headquarter.headquarter.city:region.region](https://help.qlik.com/tr-TR/sense/May2026/Subsystems/Hub/Content/Resources/Images/ex_parquet-load-script-dm-dmv.png)

Örnek: Veri yükleme düzenleyicisi (Veri seç)

içinde Veri seçVeri yükleme düzenleyicisi ile veri yüklerseniz aşağıdaki komut dosyasını elde edersiniz:

```
LOAD
company,
contact,
"%Key_company:headquarter",
"%Key_company:salesrep"
FROM [lib://AttachedFiles/company.parquet] (parquet);
			
LOAD
country,
city,
"%Key_city:region",
"%Key_company:headquarter"
FROM [lib://AttachedFiles/company.parquet] (parquet, table is [company:headquarter.headquarter]);

LOAD
region,
"%Key_city:region"
FROM [lib://AttachedFiles/company.parquet] (parquet, table is [company:headquarter.headquarter.city:region.region]);

LOAD
salesrep,
"%Key_company:salesrep"

FROM [lib://AttachedFiles/company.parquet] (parquet, table is [company:salesrep.salesrep]);
```

Veri modeli Veri modeli görüntüleyicisi içinde bunun gibi görünür.

içinde Veri seçVeri yükleme düzenleyicisi ile company.parquet tablosunu yüklemek için veri modeli

içinde Veri seçVeri yükleme düzenleyicisi ile company.parquet tablosunu yüklemek için veri modeli

içinde içinde Veri seçVeri yükleme düzenleyicisiVeri yükleme düzenleyicisi ile company.parquet tablosunu yüklemek için veri modeli ![Data model showing the tables salesrep, company, headquarter, and region.](https://help.qlik.com/tr-TR/sense/May2026/Subsystems/Hub/Content/Resources/Images/ex_parquet-load-select-dmv.png)

Örnek: Veri yükleme düzenleyicisi (Özel komut dosyası)

Özel bir komut dosyası kullanıyorsanız alanların ve tabloların customer.parquet tablosundan nasıl yükleneceği üzerinde daha fazla kontrol sahibi olursunuz. Aşağıdaki komut dosyası, company.parquet tablosundaki tabloları ve alanları yükler:

```
LOAD * FROM [lib://AttachedFiles/company.parquet] (parquet);
LOAD *, Lookup('company', '%Key_company:salesrepo', [%Key_company:salesrep], 'company') as company;
LOAD * FROM [lib://AttachedFiles/company.parquet] (parquet, table is [company:salesrep.salesrep]);
DROP FIELD [%Key_company:salesrep];

LOAD *, Lookup('company', '%Key_company:headquarter', [%Key_company:headquarter], 'company') as company;
LOAD * FROM [lib://AttachedFiles/company.parquet] (parquet, table is [company:headquarter.headquarter]);
DROP FIELD [%Key_company:headquarter];
LOAD *, Lookup('city', '%Key_city:region', [%Key_city:region], 'headquarter') as city;
LOAD * FROM [lib://AttachedFiles/company.parquet] (parquet, table is [company:headquarter.headquarter.city:region.region]);
DROP FIELD [%Key_city:region]; 
```

Bu, verilerin Parquet dosyasında saklanmasından önceki orijinal veri modeliyle aynı olan aşağıdaki veri modelini oluşturur.

içinde özel bir komut dosyasıyla company.parquetVeri yükleme düzenleyicisi yüklemek için veri modeli

içinde özel bir komut dosyasıyla company.parquetVeri yükleme düzenleyicisi yüklemek için veri modeli

içinde özel bir komut dosyasıyla içinde özel bir komut dosyasıyla company.parquetVeri yükleme düzenleyicisiVeri yükleme düzenleyicisi yüklemek için veri modeli ![Data model with the tables headquarter, region, salesrep, and company, mirroring the exact data model from the source app.](https://help.qlik.com/tr-TR/sense/May2026/Subsystems/Hub/Content/Resources/Images/ex_parquet-load-script-dmv.png)

## Sınırlamalar

Parquet dosyaları aşağıdaki sınırlamalara sahiptir:

* Bir int96 zaman damgası alanı içeren Parquet dosyaları doğru şekilde yüklenmeyebilir.

  Int96, saat dilimi bilgisi bulunmayan bir zaman damgası içeren, kullanımdan kaldırılmış bir veri türüdür. Alanı UTC olarak okuma girişimi yapılır ancak farklı satıcı uygulamaları olduğu için başarı garanti edilmez.

  Yüklenen verileri doğrulayın ve gerekirse bir fark değeri ile doğru saat dilimine ayarlayın.