示例学习kettle之ExcelWriter步骤 ExcelWriter步骤可以向excel模板文件中填写内容的一种方法,并且可以往同一文件的不同sheet中写内容。本文通过示例详细讲解,通过一个转换生成报表。 ExcelWriter步骤是kettle4.1以上版本才有,同时我们也使用Block until s
示例学习kettle之ExcelWriter步骤
ExcelWriter步骤可以向excel模板文件中填写内容的一种方法,并且可以往同一文件的不同sheet中写内容。本文通过示例详细讲解,通过一个转换生成报表。
ExcelWriter步骤是kettle4.1以上版本才有,同时我们也使用“Block until steps finish”步骤(kettle4.1版本有),如果你使用版本是3.2或4.0,就使用自定义javasc步骤代替。本文的示例代码在这里下载。
最终导出报表文件格式
示例报表文件主要内容是6个月的销售和费用信息,包含三个sheet: “Sales Chart”sheet 包含一个图表显示每个月每个类型的销售情况。
“SourceData“sheet是需要通过kettle填入的源数据,包括一些字段、一些计算值以及饼图。
“Metadata“sheet是报表本身的一些信息,生成日期,转换的名称,在那台主机上生成的。
模板文件
模板文件除了格式,输入之前没有数据,“SourceData“sheet需要填入相应的数据,其他的字段自动计算(已经有了公式)。
“Metadata“sheet也需要填入一些信息。
使用kettle往模板文件中填入数据
分析上面模板文件,需填入数据的入口点,共有四个方面需要插入数据。
1. “SourceData“sheet上的year单元格;
2. “SourceData“sheet上的销售信息数据;
3. “SourceData“sheet上的费用信息数据;
4. “Metadata“sheet的单元格;
因为有四个地方需要输出数据,所以需要在转换定义四个Excel Writer步骤。问题是kettle的转换时并行执行的,如果四个步骤同时写一个excel文件,则会产生错误。因此需要确保按顺序执行。我们可以通过定义四个转换,然后在job中顺序调用四个转换,因为job是顺序执行的,这样就觉得不是很方便。通常不相关的数据要被填入到同一个excel文件,最好能定义在一个转换中,便于维护。本文通过另外一种方式实现顺序执行,请看下图:
确保顺序执行
转换中写excel文件需四个流程步骤,按照如下顺序:year、销售、费用以及报表元信息单元格。Excel Writer步骤需要配置写到同一个文件,即从模板文件拷贝的文件。因此,第一步(year写入步骤)配置使用模板文件并创建新的输出文件。其他的excel写入步骤只需要配置输出文件(因为已经存在了),但同时也需要选中“wait for first row before creating file”选项(在接收到数据前不创建文件),这样是确保在接收到第一个数据后才查找输出文件。
如何做到延迟,在接收到第一行数据时,前面Excel写入步骤的所有操作都执行完毕,这里就需要“Block until steps finish”阻止步骤。year写入步骤是第一个执行,所以需要配置模板文件和创建输出文件,并写入year数据。销售写步骤等待year步骤完成,费用步骤等待销售步骤完成,元信息步骤等待费用步骤。结果就像一个精密的链式步骤,彼此等待,最终完成各自数据的写入。
如果你使用3.2或4.0版本,阻止步骤无效,查看附件中相应的版本,使用javascript步骤代替。
样式问题
往模板文件中写数据,应该保留样式不要改变,所以在Excel Writer步骤的相应的选项选中。
另外工作簿中的公式需要重新计算,因为Excel版本、文件类型以及可能其他的一些情况,当打开生成的文件时不自动更新计算单元格的值,Excel写步骤可以用自动重新计算单元格公式,有相应的选项供使用,但是一些函数或命名类型暂时不被poi库支持,可能报错,尝试重新编写公式、更改xls文件类型或手工激活技术(ctrl+shift+alt+F9)。

MySQL adalah sistem pengurusan pangkalan data relasi sumber terbuka, terutamanya digunakan untuk menyimpan dan mengambil data dengan cepat dan boleh dipercayai. Prinsip kerjanya termasuk permintaan pelanggan, resolusi pertanyaan, pelaksanaan pertanyaan dan hasil pulangan. Contoh penggunaan termasuk membuat jadual, memasukkan dan menanyakan data, dan ciri -ciri canggih seperti Operasi Join. Kesalahan umum melibatkan sintaks SQL, jenis data, dan keizinan, dan cadangan pengoptimuman termasuk penggunaan indeks, pertanyaan yang dioptimumkan, dan pembahagian jadual.

MySQL adalah sistem pengurusan pangkalan data sumber terbuka yang sesuai untuk penyimpanan data, pengurusan, pertanyaan dan keselamatan. 1. Ia menyokong pelbagai sistem operasi dan digunakan secara meluas dalam aplikasi web dan bidang lain. 2. Melalui seni bina pelanggan-pelayan dan enjin penyimpanan yang berbeza, MySQL memproses data dengan cekap. 3. Penggunaan asas termasuk membuat pangkalan data dan jadual, memasukkan, menanyakan dan mengemas kini data. 4. Penggunaan lanjutan melibatkan pertanyaan kompleks dan prosedur yang disimpan. 5. Kesilapan umum boleh disahpepijat melalui pernyataan yang dijelaskan. 6. Pengoptimuman Prestasi termasuk penggunaan indeks rasional dan pernyataan pertanyaan yang dioptimumkan.

MySQL dipilih untuk prestasi, kebolehpercayaan, kemudahan penggunaan, dan sokongan komuniti. 1.MYSQL Menyediakan fungsi penyimpanan dan pengambilan data yang cekap, menyokong pelbagai jenis data dan operasi pertanyaan lanjutan. 2. Mengamalkan seni bina pelanggan-pelayan dan enjin penyimpanan berganda untuk menyokong urus niaga dan pengoptimuman pertanyaan. 3. Mudah digunakan, menyokong pelbagai sistem operasi dan bahasa pengaturcaraan. 4. Mempunyai sokongan komuniti yang kuat dan menyediakan sumber dan penyelesaian yang kaya.

Mekanisme kunci InnoDB termasuk kunci bersama, kunci eksklusif, kunci niat, kunci rekod, kunci jurang dan kunci utama seterusnya. 1. Kunci dikongsi membolehkan urus niaga membaca data tanpa menghalang urus niaga lain dari membaca. 2. Kunci eksklusif menghalang urus niaga lain daripada membaca dan mengubah suai data. 3. Niat Kunci mengoptimumkan kecekapan kunci. 4. Rekod Rekod Kunci Kunci Rekod. 5. Gap Lock Locks Index Rakaman Gap. 6. Kunci kunci seterusnya adalah gabungan kunci rekod dan kunci jurang untuk memastikan konsistensi data.

Sebab -sebab utama prestasi pertanyaan MySQL yang lemah termasuk tidak menggunakan indeks, pemilihan pelan pelaksanaan yang salah oleh pengoptimasi pertanyaan, reka bentuk jadual yang tidak munasabah, jumlah data yang berlebihan dan persaingan kunci. 1. Tiada indeks menyebabkan pertanyaan perlahan, dan menambah indeks dapat meningkatkan prestasi dengan ketara. 2. Gunakan perintah Jelaskan untuk menganalisis pelan pertanyaan dan cari ralat pengoptimuman. 3. Membina semula struktur meja dan mengoptimumkan keadaan gabungan dapat meningkatkan masalah reka bentuk jadual. 4. Apabila jumlah data adalah besar, pembahagian dan strategi bahagian meja diterima pakai. 5. Dalam persekitaran konkurensi yang tinggi, mengoptimumkan urus niaga dan strategi mengunci dapat mengurangkan persaingan kunci.

Dalam pengoptimuman pangkalan data, strategi pengindeksan hendaklah dipilih mengikut keperluan pertanyaan: 1. Apabila pertanyaan melibatkan pelbagai lajur dan urutan syarat ditetapkan, gunakan indeks komposit; 2. Apabila pertanyaan melibatkan pelbagai lajur tetapi urutan syarat tidak ditetapkan, gunakan pelbagai indeks lajur tunggal. Indeks komposit sesuai untuk mengoptimumkan pertanyaan berbilang lajur, manakala indeks lajur tunggal sesuai untuk pertanyaan tunggal lajur.

Untuk mengoptimumkan pertanyaan perlahan MySQL, SlowQuerylog dan Performance_Schema perlu digunakan: 1. Dayakan SlowQueryLog dan tetapkan ambang untuk merakam pertanyaan perlahan; 2. Gunakan Performance_Schema untuk menganalisis butiran pelaksanaan pertanyaan, cari kesesakan prestasi dan mengoptimumkan.

MySQL dan SQL adalah kemahiran penting untuk pemaju. 1.MYSQL adalah sistem pengurusan pangkalan data sumber terbuka, dan SQL adalah bahasa standard yang digunakan untuk mengurus dan mengendalikan pangkalan data. 2.MYSQL menyokong pelbagai enjin penyimpanan melalui penyimpanan data yang cekap dan fungsi pengambilan semula, dan SQL melengkapkan operasi data yang kompleks melalui pernyataan mudah. 3. Contoh penggunaan termasuk pertanyaan asas dan pertanyaan lanjutan, seperti penapisan dan penyortiran mengikut keadaan. 4. Kesilapan umum termasuk kesilapan sintaks dan isu -isu prestasi, yang boleh dioptimumkan dengan memeriksa penyataan SQL dan menggunakan perintah menjelaskan. 5. Teknik pengoptimuman prestasi termasuk menggunakan indeks, mengelakkan pengimbasan jadual penuh, mengoptimumkan operasi menyertai dan meningkatkan kebolehbacaan kod.


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Dreamweaver CS6
Alat pembangunan web visual

SecLists
SecLists ialah rakan penguji keselamatan muktamad. Ia ialah koleksi pelbagai jenis senarai yang kerap digunakan semasa penilaian keselamatan, semuanya di satu tempat. SecLists membantu menjadikan ujian keselamatan lebih cekap dan produktif dengan menyediakan semua senarai yang mungkin diperlukan oleh penguji keselamatan dengan mudah. Jenis senarai termasuk nama pengguna, kata laluan, URL, muatan kabur, corak data sensitif, cangkerang web dan banyak lagi. Penguji hanya boleh menarik repositori ini ke mesin ujian baharu dan dia akan mempunyai akses kepada setiap jenis senarai yang dia perlukan.

PhpStorm versi Mac
Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).

ZendStudio 13.5.1 Mac
Persekitaran pembangunan bersepadu PHP yang berkuasa

SublimeText3 Linux versi baharu
SublimeText3 Linux versi terkini