Azure Data Factory ve Azure Synapse Analytics'te Excel dosya biçimi
UYGULANANLAR: Azure Data Factory Azure Synapse Analytics
İpucu
Kuruluşlar için hepsi bir arada analiz çözümü olan Microsoft Fabric'te Data Factory'yi deneyin. Microsoft Fabric , veri taşımadan veri bilimine, gerçek zamanlı analize, iş zekasına ve raporlamaya kadar her şeyi kapsar. Yeni bir deneme sürümünü ücretsiz olarak başlatmayı öğrenin!
Excel dosyalarını ayrıştırmak istediğinizde bu makaleyi izleyin. Hizmet hem ".xls" hem de ".xlsx" destekler.
Excel biçimi şu bağlayıcılar için desteklenir: Amazon S3, Amazon S3 Uyumlu Depolama, Azure Blob, Azure Data Lake Storage 1. Nesil, Azure Data Lake Storage 2. Nesil, Azure Dosyalar, Dosya Sistemi, FTP, Google Cloud Storage, HDFS, HTTP, Oracle Cloud Storage ve SFTP. Kaynak olarak desteklenir ancak havuz olarak desteklenmez.
Not
HTTP kullanılırken ".xls" biçimi desteklenmez.
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, Excel veri kümesi tarafından desteklenen özelliklerin listesi sağlanır.
Özellik | Açıklama | Gerekli |
---|---|---|
Tür | Veri kümesinin tür özelliği Excel olarak ayarlanmalıdır. | Yes |
konum | Dosya konum ayarları. Her dosya tabanlı bağlayıcının kendi konum türü ve altında location desteklenen özellikleri vardır. |
Yes |
sheetName | Verileri okumak için Excel çalışma sayfası adı. | veya belirtin sheetName sheetIndex |
sheetIndex | 0'dan başlayarak verileri okumak için Excel çalışma sayfası dizini. | veya belirtin sheetName sheetIndex |
aralık | Seçmeli verileri bulmak için verilen çalışma sayfasındaki hücre aralığı; örneğin: - Belirtilmemiş: çalışma sayfasının tamamını ilk boş olmayan satırdan ve sütundan tablo olarak okur - A3 : verilen hücreden başlayan bir tabloyu okur, aşağıdaki tüm satırları ve sağdaki tüm sütunları dinamik olarak algılar- A3:H5 : bu sabit aralığı tablo olarak okur- A3:A3 : bu tek hücreyi okur |
Hayır |
firstRowAsHeader | Verilen çalışma sayfasındaki/aralıktaki ilk satırın sütun adları içeren bir üst bilgi satırı olarak işlenip ele alınmayacağını belirtir. İzin verilen değerler true ve false (varsayılan) değerleridir. |
Hayır |
nullValue | Null değerin dize gösterimini belirtir. Varsayılan değer boş dizedir. |
Hayır |
sıkıştırma | Dosya sıkıştırmayı yapılandırmak için özellikler grubu. Etkinlik yürütme sırasında sıkıştırma/sıkıştırmayı açmak istediğinizde bu bölümü yapılandırın. | Hayır |
Tür (altında compression ) |
JSON dosyalarını okumak/yazmak için kullanılan sıkıştırma codec bileşeni. İzin verilen değerler bzip2, gzip, deflate, ZipDeflate, TarGzip, Tar, snappy veya lz4 değerleridir. Varsayılan olarak sıkıştırılmaz. Şu anda Kopyalama etkinliği "snappy" & "lz4" ve eşleme veri akışının "ZipDeflate", "TarGzip" ve "Tar" desteği olmadığını unutmayın. ZipDeflate dosyalarının sıkıştırmasını açmak ve dosya tabanlı havuz veri deposuna yazmak için kopyalama etkinliğini kullanırken dosyalar şu klasöre ayıklanır: <path specified in dataset>/<folder named as source zip file>/ . |
Hayır |
düzey (altında compression ) |
Sıkıştırma oranı. İzin verilen değerler En uygun veya en hızlı değerlerdir. - En hızlı: Elde edilen dosya en iyi şekilde sıkıştırılmasa bile sıkıştırma işlemi mümkün olan en hızlı şekilde tamamlanmalıdır. - En uygun: İşlemin tamamlanması daha uzun sürse bile sıkıştırma işlemi en iyi şekilde sıkıştırılmalıdır. Daha fazla bilgi için Bkz . Sıkıştırma Düzeyi konusu. |
Hayır |
Aşağıda Azure Blob Depolama excel veri kümesi örneği verilmiştir:
{
"name": "ExcelDataset",
"properties": {
"type": "Excel",
"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",
},
"sheetName": "MyWorksheet",
"range": "A3:H5",
"firstRowAsHeader": true
}
}
}
Kopyalama etkinliğinin özellikleri
Etkinlikleri tanımlamak için kullanılabilen bölümlerin ve özelliklerin tam listesi için İşlem hatları makalesine bakın. Bu bölümde, Excel kaynağı tarafından desteklenen özelliklerin listesi sağlanır.
Kaynak olarak Excel
Kopyalama etkinliği *kaynak* bölümünde aşağıdaki özellikler desteklenir.
Özellik | Açıklama | Gerekli |
---|---|---|
Tür | Kopyalama etkinliği kaynağının type özelliği ExcelSource olarak ayarlanmalıdır. | Yes |
storeSettings | Veri deposundan veri okuma hakkında bir özellik grubu. Her dosya tabanlı bağlayıcının altında storeSettings kendi desteklenen okuma ayarları vardır. |
Hayır |
"activities": [
{
"name": "CopyFromExcel",
"type": "Copy",
"typeProperties": {
"source": {
"type": "ExcelSource",
"storeSettings": {
"type": "AzureBlobStorageReadSettings",
"recursive": true
}
},
...
}
...
}
]
Eşleme veri akışı özellikleri
Veri akışlarını eşlemede şu veri depolarında Excel biçimini okuyabilirsiniz: Azure Blob Depolama, Azure Data Lake Storage 1. Nesil, Azure Data Lake Storage 2. Nesil, Amazon S3 ve SFTP. Excel veri kümesini veya satır içi veri kümesini kullanarak Excel dosyalarını işaret edebilirsiniz.
Kaynak özellikleri
Aşağıdaki tabloda, bir Excel kaynağı tarafından desteklenen özellikler listelenmektedir. Bu özellikleri Kaynak seçenekleri sekmesinde düzenleyebilirsiniz. Satır içi veri kümesini kullanırken, veri kümesi özellikleri bölümünde açıklanan özelliklerle aynı olan ek dosya ayarlarını görürsünüz.
Veri Akışı Adı | Açıklama | Gerekli | İzin verilen değerler | Veri akışı betiği özelliği |
---|---|---|---|---|
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 karakterler |
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 |
fileList |
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>'] |
purgeFiles moveFiles |
Son değiştirme ölçütüne göre filtrele | Dosyaları son değiştirilme zamanlarına göre filtrelemeyi seçin | hayır | Zaman damgası | modifiedAfter modifiedBefore |
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ü, veri kümesi modunu kullanarak veri akışlarını eşlemede bir Excel kaynak yapılandırması örneğidir.
İlişkili veri akışı betiği:
source(allowSchemaDrift: true,
validateSchema: false,
wildcardPaths:['*.xls']) ~> ExcelSource
Satır içi veri kümesi kullanıyorsanız eşleme veri akışında aşağıdaki kaynak seçeneklerini görürsünüz.
İlişkili veri akışı betiği:
source(allowSchemaDrift: true,
validateSchema: false,
format: 'excel',
fileSystem: 'container',
folderPath: 'path',
fileName: 'sample.xls',
sheetName: 'worksheet',
firstRowAsHeader: true) ~> ExcelSourceInlineDataset
Çok büyük Excel dosyalarını işleme
Excel bağlayıcısı, Kopyalama etkinliği için akış okumayı desteklemez ve verilerin okunabilmesi için dosyanın tamamını belleğe yüklemesi gerekir. Şemayı içeri aktarmak, verileri önizlemek veya bir Excel veri kümesini yenilemek için verilerin http isteği zaman aşımından (100'ler) önce döndürülmelidir. Büyük Excel dosyalarında bu işlemler bu zaman çerçevesi içinde bitmeyebilir ve zaman aşımı hatasına neden olabilir. Büyük Excel dosyalarını (>100 MB) başka bir veri deposuna taşımak istiyorsanız, bu sınırlamayı geçici olarak çözmek için aşağıdaki seçeneklerden birini kullanabilirsiniz:
- Şirket içinde barındırılan tümleştirme çalışma zamanını (SHIR) kullanın, ardından büyük Excel dosyasını SHIR ile başka bir veri deposuna taşımak için Kopyalama etkinliği kullanın.
- Büyük Excel dosyasını birkaç küçük dosyaya bölün, ardından dosyaları içeren klasörü taşımak için Kopyalama etkinliği kullanın.
- Büyük Excel dosyasını başka bir veri deposuna taşımak için bir veri akışı etkinliği kullanın. Veri akışı, Excel için okuma akışını destekler ve büyük dosyaları hızla taşıyabilir/aktarabilir.
- Büyük Excel dosyasını el ile CSV biçimine dönüştürün, ardından dosyayı taşımak için bir Kopyalama etkinliği kullanın.