DB2 Data Movement utilities (IMPORT) part 2

Kita sudah bisa melakukan operasi insert. Namun bagaimana jika data yang hendak diinsert sangat banyak. Secara default IMPORT commit hanya terjadi sekali yaitu pada saat operasi berakhir. Namun jika data yang diinsert sangat besar, maka hal ini akan menghasilkan transaction log yang besar pula. Oleh karena itu DB2 menyediakan option untuk melakukan commit setelah terjadi beberapa kali insert. Atau jika anda tidak ingin repot, maka dapat memilih option AUTOMATIC, maka DB2 akan melakukan commit pada saat diperlukan.

IMPORT FROM myfile.ixf OF IXF
COMMITCOUNT 500
MESSAGES msg.out
INSERT INTO newtable

Berikut contoh sederhana, jika kita ingin melakukan commit setelah 10 kali insert
db2 import from myfile.del of del commitcount 10 messages msg.out INSERT INTO deny_import
Berikut contoh sederhana, jika kita ingin melakukan commit secara otomatis
db2 import from myfile.del of del commitcount automatic messages msg.out REPLACE INTO deny_import

Misalkan kita hendak mengimport 100000 record dan ternyata operasi insert failed pada saat operasi berlangsung (terakhir commit di record ke 30000). Maka kita dapat menskip record yang sudah di commit dan melanjutkan dengan menginsert record selanjutnya.

Berikut contoh sederhana jika ingin memulai dari record ke 30000 dan menginsert 70000 record selanjutnya
db2 import from myfile.del of del commitcount 500 restartcount 30000 rowcount 70000 messages msg.out replace into deny_import

Number of rows read = 100000
Number of rows skipped = 30000
Number of rows inserted = 70000
Number of rows updated = 0
Number of rows rejected = 0
Number of rows committed = 100000

Secara default ketika melakukan operasi IMPORT, maka akan diberikan exclusive lock pada table yang bersangkutan. Hal ini merupakan option ALLOW NO ACCESS. Namun jika ingin agar user tetap dapat mengakses maka dapat digunakan ALLOW WRITE ACCESS. Namun option ini tidak berlaku untuk REPLACE, CREATE atau REPLACE_CREATE

Berikut contoh sederhananya
db2 import from myfile.del of del allow write access messages msg.out insert into deny_import

This entry was posted in DB2 and tagged , , , , . Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>