Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
ŞUNLARA UYGULANIR:
Azure Data Factory
Azure Synapse Analytics
İpucu
Microsoft Fabric'daki
Parquet dosyalarını ayrıştırmak veya verileri Parquet biçiminde yazmak istediğinizde bu makaleyi izleyin.
Parquet biçimi aşağıdaki bağlayıcılar için desteklenir:
- Amazon S3
- Amazon S3 Uyumlu Depolama
- Azure Blob
- 1. Nesil Azure Data Lake Storage
- Azure Data Lake Storage 2. Nesil
- Azure Dosyalar
- Dosya Sistemi
- FTP
- Google Bulut Depolama
- HDFS
- HTTP
- Oracle Cloud Storage
- SFTP
Kullanılabilir tüm bağlayıcılar için desteklenen özelliklerin listesi için Bağlayıcılara Genel Bakış makalesini ziyaret edin.
Yerel olarak barındırılan Integration Runtime kullanma
Önemli
Kendi kendine barındırılan Integration Runtime ile güçlendirilen kopyalama işlemleri için, örneğin, şirket içi ve bulut veri depoları arasında Parquet dosyalarını as-is kopyalamıyorsanız, IR makinenize 64 bit JRE 8 (Java Çalışma Zamanı Ortamı), JDK 23 (Java Geliştirme Seti) veya OpenJDK yüklemeniz gerekir. Daha fazla ayrıntı içeren aşağıdaki paragrafı denetleyin.
Kendi kendine barındırılan IR'de Parquet dosya serileştirme/seri durumdan çıkarma ile çalışan kopyalama için, hizmet ilk olarak JRE için kayıt defterini (SOFTWARE\JavaSoft\Java Runtime Environment\{Current Version}\JavaHome) kontrol ederek Java çalışma zamanını belirler; eğer bulunamazsa, alternatif olarak OpenJDK için sistem değişkenini JAVA_HOME kontrol eder.
- JRE'yi kullanmak için: 64 bit IR için 64 bit JRE gerekir. Buradan bulabilirsiniz.
-
JDK kullanmak için: 64 bit IR için 64 bit JDK 23 gerekir. Buradan bulabilirsiniz.
JAVA_HOMEsistem değişkenini JDK 23 yüklemesinin kök klasörüne (C:\Program Files\Java\jdk-23) güncelleştirip yolu hemC:\Program Files\Java\jdk-23\binhem deC:\Program Files\Java\jdk-23\bin\serverklasörlerinePathsistem değişkenine eklediğinizden emin olun. - OpenJDK'yi kullanmak için: IR sürüm 3.13'ten bu yana desteklenir. jvm.dll dosyasını ve OpenJDK'nin diğer tüm gerekli bileşenlerini Yerel Barındırılan IR makinesine paketleyin, sistem ortam değişkenini JAVA_HOME olarak uygun şekilde ayarlayın ve yapılan değişikliklerin hemen etkili olması için Yerel Barındırılan IR'yi yeniden başlatın. Microsoft Build OpenJDK indirmek için bkz. Microsoft Build OpenJDK™.
İpucu
If you copy data to/from Parquet format using Self-hosted Integration Runtime and hit error saying "An error occurred when invoking java, message: java.lang.OutOfMemoryError:Java heap space", you can add an environment variable _JAVA_OPTIONS in the machine that hosts the Self-hosted IR to adjust the min/max heap size for JVM to empower such copy, then rerun the pipeline.
Verileri Self-hosted Integration Runtime kullanarak Parquet biçimine veya biçiminden kopyaladığınızda "Java çağrılırken bir hata oluştu" hatasını alırsanız, mesaj: java.lang.OutOfMemoryError:Java heap space", Self-hosted IR'yi barındıran makinede bir _JAVA_OPTIONS ortam değişkeni ekleyerek JVM üzerinde bu kopyalama işlemi için en küçük ve en büyük yığın boyutunu ayarlayabilir, ardından işlem hattını yeniden çalıştırabilirsiniz.
Örnek: _JAVA_OPTIONS değeriyle -Xms256m -Xmx16g değişkeni ayarla.
Xms bayrağı, Java Sanal Makinesi (JVM) için ilk bellek ayırma havuzunu belirtirken, Xmx en yüksek bellek ayırma havuzunu belirtir. Bu, JVM'nin bellek miktarıyla Xms başlatılacağı ve en fazla Xmx bellek miktarını kullanabileceği anlamına gelir. Varsayılan olarak hizmet en az 64 MB ve en fazla 1G kullanır.
Veri kümesi özellikleri
Veri kümelerini tanımlamak için kullanılabilen bölümlerin ve özelliklerin tam listesi için Veri kümeleri makalesine bakın. Bu bölümde, Parquet veri kümesi tarafından desteklenen özelliklerin listesi sağlanır.
| Özellik | Açıklama | Gerekli |
|---|---|---|
| Tip | Veri kümesinin type özelliği Parquet olarak ayarlanmalıdır. | Yes |
| konum | Dosya konum ayarları. Her dosya tabanlı bağlayıcının location altında kendi konum türü ve desteklenen özellikleri vardır.
Bağlayıcı makalesi -> Veri kümesi özellikleri bölümündeki ayrıntılara bakın. |
Yes |
| compressionCodec | Parquet dosyalarına yazarken kullanılacak sıkıştırma kodeği. Parquet dosyalarından okurken, Veri Fabrikaları dosya meta verilerine göre sıkıştırma codec'ini otomatik olarak belirler. Desteklenen türler şunlardır: "none", "gzip", "snappy" (varsayılan) ve "lzo". Şu anda Kopyalama etkinliği Parquet dosyalarını okurken/yazarken LZO'yu desteklemez. |
Hayır |
Not
Parquet dosyaları için sütun adında boşluk desteklenmez.
Aşağıda Azure Blob Depolama'da bulunan bir Parquet veri kümesi örneği verilmiştir:
{
"name": "ParquetDataset",
"properties": {
"type": "Parquet",
"linkedServiceName": {
"referenceName": "<Azure Blob Storage linked service name>",
"type": "LinkedServiceReference"
},
"schema": [ < physical schema, optional, retrievable during authoring > ],
"typeProperties": {
"location": {
"type": "AzureBlobStorageLocation",
"container": "containername",
"folderPath": "folder/subfolder",
},
"compressionCodec": "snappy"
}
}
}
Kopyalama etkinliği özellikleri
Etkinlikleri tanımlamak için kullanılabilecek tüm bölümlerin ve özelliklerin listesi için Yapılandırma Hatları makalesine bakın. Bu bölümde, Parquet kaynağı ve havuzu tarafından desteklenen özelliklerin listesi sağlanır.
Kaynak olarak Parquet
Kopyalama etkinliği *kaynak* bölümünde aşağıdaki özellikler desteklenir.
| Özellik | Açıklama | Gerekli |
|---|---|---|
| Tip | Kopyalama etkinliği kaynağının type özelliği ParquetSource olarak ayarlanmalıdır. | Yes |
| mağazaAyarlar | Veri deposundan veri okuma hakkında bir özellik grubu. Her bir dosya tabanlı bağlayıcının, storeSettings altında kendi desteklenen okuma ayarları vardır.
Bağlayıcı makalesinde -> Kopyalama etkinliği özellikleri bölümü ayrıntılarını görüntüleyin. |
Hayır |
Havuz olarak Parquet
Kopyalama etkinliği *havuz* bölümünde aşağıdaki özellikler desteklenir.
| Özellik | Açıklama | Gerekli |
|---|---|---|
| Tip | Kopyalama etkinliği havuzu type özelliği ParquetSink olarak ayarlanmalıdır. | Yes |
| biçim ayarları | Bir özellik grubu. Aşağıdaki Parquet yazma ayarları tablosuna bakın. | Hayır |
| mağazaAyarlar | Veri deposuna veri yazma hakkında bir özellik grubu. Her dosya tabanlı bağlayıcının kendi desteklenen yazma ayarları storeSettings altında bulunur.
Bağlayıcı makalesinde -> Kopyalama etkinliği özellikleri bölümü ayrıntılarını görüntüleyin. |
Hayır |
Parquet yazma ayarları altında desteklenen:
| Özellik | Açıklama | Gerekli |
|---|---|---|
| Tip | formatSettings türü ParquetWriteSettings olarak ayarlanmalıdır. | Yes |
| maxRowsPerFile | Bir klasöre veri yazarken, birden çok dosyaya yazmayı ve dosya başına en fazla satırı belirtmeyi seçebilirsiniz. | Hayır |
| dosyaAdÖneki |
maxRowsPerFile yapılandırıldığında geçerlidir.Birden çok dosyaya veri yazarken dosya adı ön ekini belirtin; bunun sonucunda şu desen elde edilir: <fileNamePrefix>_00000.<fileExtension>. Belirtilmezse, dosya adı ön eki otomatik olarak oluşturulur. Bu özellik, kaynak dosya tabanlı depo veya bölüm seçeneği etkin veri deposu olduğunda geçerli değildir. |
Hayır |
Veri akışı haritalama özellikleri
Eşleme veri akışlarında, şu veri depolarında parquet biçiminde okuyup yazabilirsiniz: Azure Blob Depolama, 1. Nesil Azure Data Lake Storage, Azure Data Lake Storage 2. Nesil ve SFTP ve Amazon S3 dilinde parquet biçimini okuyabilirsiniz.
Kaynak özellikleri
Aşağıdaki tabloda, bir parquet kaynağı tarafından desteklenen özellikler listelenmektedir. Bu özellikleri Kaynak seçenekleri sekmesinde düzenleyebilirsiniz.
| Veri Akışı Adı | Açıklama | Gerekli | İzin verilen değerler | Veri akışı betiği özelliği |
|---|---|---|---|---|
| Biçim | Biçim şu şekilde olmalıdır: parquet |
evet | parquet |
format |
| Joker karakter yolları | Joker karakter yoluyla eşleşen tüm dosyalar işlenir. Veri kümesinde ayarlanan klasörü ve dosya yolunu geçersiz kılar. | hayır | Dize[] | joker karakter yolları |
| Bölüm kök yolu | Bölümlenmiş dosya verileri için bölümlenmiş klasörleri sütun olarak okumak için bir bölüm kök yolu girebilirsiniz | hayır | String | partitionRootPath |
| Dosya listesi | Kaynağınızın işlenmek üzere dosyaları listeleyen bir metin dosyasına işaret edip etmediği | hayır |
true veya false |
dosyaListesi |
| Dosya adını depolamak için sütun | Kaynak dosya adı ve yolu ile yeni bir sütun oluşturma | hayır | String | rowUrlColumn |
| Tamamlandıktan sonra | İşlemden sonra dosyaları silin veya taşıyın. Dosya yolu kapsayıcı kökünden başlar | hayır | Sil: true veya false Hareket etmek: [<from>, <to>] |
dosyaları temizle (purgeFiles) moveFiles |
| Son değiştirme tarihine göre filtrele | Dosyaları son değiştirilme zamanlarına göre filtrelemeyi seçin | hayır | Zaman damgası | değiştirmeSonrası önce_değiştirildi |
| Dosya bulunamadığında izin ver | True ise, hiçbir dosya bulunamazsa hata oluşmaz | hayır |
true veya false |
ignoreNoFilesFound |
Kaynak örneği
Aşağıdaki görüntü, eşleme veri akışlarında bir parquet kaynak yapılandırması örneğidir.
İlişkili veri akışı betiği:
source(allowSchemaDrift: true,
validateSchema: false,
rowUrlColumn: 'fileName',
format: 'parquet') ~> ParquetSource
Havuz özellikleri
Aşağıdaki tabloda bir parquet havuzu tarafından desteklenen özellikler listelenmektedir. Bu özellikleri Ayarlar sekmesinde düzenleyebilirsiniz.
| Veri Akışı Adı | Açıklama | Gerekli | İzin verilen değerler | Veri akışı betiği özelliği |
|---|---|---|---|---|
| Biçim | Biçim şu şekilde olmalıdır: parquet |
evet | parquet |
format |
| Klasörü temizleme | Hedef klasör yazmadan önce temizlenirse | hayır |
true veya false |
kesmek |
| Dosya adı seçeneği | Yazılan verilerin adlandırma biçimi. Varsayılan olarak, bölüm başına bir dosya biçimindedir part-#####-tid-<guid> |
hayır | Desen: Dize Bölüm başına: Dizgi[] Veri olarak sütunda: Metin Tek bir dosyaya çıkış: ['<fileName>'] |
filePattern bölümDosyaAdları rowUrlColumn bölümDosyaAdları |
Havuz örneği
Aşağıdaki görüntü, veri akışlarını eşlemede bir parquet havuzu yapılandırması örneğidir.
İlişkili veri akışı betiği:
ParquetSource sink(
format: 'parquet',
filePattern:'output[n].parquet',
truncate: true,
allowSchemaDrift: true,
validateSchema: false,
skipDuplicateMapInputs: true,
skipDuplicateMapOutputs: true) ~> ParquetSink
Parquet için veri türü eşlemesi
Kaynak bağlayıcıdaki verileri Parquet biçiminde okurken, parquet veri türlerinden hizmet tarafından dahili olarak kullanılan ara veri türlerine aşağıdaki eşlemeler kullanılır.
| Parquet türü | Ara hizmet veri türü |
|---|---|
| BOOLEAN | Boolean |
| INT_8 | SByte |
| INT_16 | Int16 |
| INT_32 | Int32 |
| INT_64 | Int64 |
| INT96 | DateTime |
| UINT_8 | Bayt |
| UINT_16 | UInt16 |
| UINT_32 | UInt32 |
| UINT_64 | UInt64 |
| ONDALIK | Decimal |
| FLOAT | Single |
| ÇİFT | Double |
| DATE | Date |
| TIME_MILLIS | TimeSpan |
| TIME_MICROS | Int64 |
| TIMESTAMP_MILLIS | DateTime |
| TIMESTAMP_MICROS | Int64 |
| STRING | String |
| UTF8 | String |
| SABIT LISTESI | Bayt dizisi |
| UUID | Bayt dizisi |
| JSON | Bayt dizisi |
| BSON | Bayt dizisi |
| BINARY | Bayt dizisi |
| Sabit_Uzunlukta_Bayt_Dizisi | Bayt dizisi |
Parquet biçiminde veri yazarken, çıkış bağlayıcısına hizmet tarafından dahili olarak kullanılan ara veri türlerinden Parquet veri türlerine aşağıdaki eşlemeler kullanılır.
| Ara hizmet veri türü | Parquet türü |
|---|---|
| Boolean | BOOLEAN |
| SByte | INT_8 |
| Int16 | INT_32 |
| Int32 | INT_32 |
| Int64 | INT_64 |
| Bayt | INT_32 |
| UInt16 | INT_32 |
| UInt32 | INT_64 |
| UInt64 | ONDALIK |
| Decimal | ONDALIK |
| Single | FLOAT |
| Double | ÇİFT |
| Date | DATE |
| DateTime | INT96 |
| DateTimeOffset | INT96 |
| TimeSpan | INT96 |
| String | UTF8 |
| GUID | UTF8 |
| Bayt dizisi | BINARY |
Kopyalama etkinliğinin kaynak şemayı ve veri türünü havuza nasıl eşlediğini öğrenmek için bkz . Şema ve veri türü eşlemeleri.
Parquet karmaşık veri türleri (örneğin MAP, LIST, STRUCT) şu anda yalnızca Veri Akışları'nda desteklenmektedir, Kopyalama etkinliğinde desteklenmemektedir. Veri akışlarında karmaşık türler kullanmak için, veri kümesindeki şemayı boş bırakarak dosya şemasını içeri aktarmayın. Ardından Kaynak dönüşümünde projeksiyonu içeri aktarın.