Mysql – Varchar vs Text

Kali ini saya kan melakukan komparasi pada database MySQL, karena saya sendiri juga ingin membuktikan bagaimana bagaimana performa dari varchar dan text pada mysql. Test akan saya lakukan dengan pertama yaitu membuat 2 table simple didalam database dengan table berikut :

Pada test ini, penulis menggunakan Mysql dengan default setting dan menggunakan engine innoDB.


Insert

Pada test yang pertama yaitu insert pada kedua table, untuk yang pertama saya akan insert record sebanyak 100.000 data pada masing-masing table dengan kode sebagai berikut :

Dimana pada kode diatas, saya input value = ‘masbro’+increment dan juga other adalah value+@gmail.com. Dan pada saat eksekusi insert, komputer tidak dipakai apapun kecuali menunggu eksekusi selesai. Dan berikut hasil dari run diatas :

Varchar :
db2
Text:
db3

Seperti terlihat diatas bahwa untuk insert, text ternyata lebih cepat dari pada insert varchar. Yaitu ada perbedaan sekitar 3 detik. Namun test insert sekali tidaklah cukup, penulis kembali mengetest insert namun dengan data yang lebih panjang, yang sebelumnya ‘masbro’ menjadi lebih panjang yaitu : ‘halo mas bro gimana kabarnya apakah baik-baik saja?halo mas bro gimana kabarnya apakah baik-baik saja?halo mas bro gimana kabarnya apakah baik-baik saja?halo mas bro gimana kabarnya apakah baik-baik saja’. Dan berikut hasil test yang kedua :

Varchar :
db4
Text :
db5

Ternyata perbedaan saat input lebih panjang malah tidak begitu signifikan. Namun dengan 2 test diatas masih tetap menempatkan bahwa insert text lebih cepat dari pada varchar, walaupun perbedaan sangatlah tidak terasa.


Query

Untuk query saya hanya mengetest dengan query simple saja. Dan yang pertama adalah query untuk yang table dengan record pendek pada test pertama diatas. Dan berikut adalah hasil query simple :

Hasil diatas menyatakan bahwa varchar memang lebih cepat dibanding dengan text.

Selanjutnya saya lanjutkan query untuk data yang kedua, dengan data lebih panjang dari pada data yang ke satu. Dan berikut hasilnya :

Pada test kedua juga tidak berbeda dengan test pertama, memang varchar lebih cepat dibanding dengan text saat query pada field tersebut.


Table Status

Table status digunakan untuk mengetahui status dari sebuah table, mulai dari panjang dari data yang ada didalamnya. Untuk mengetahuinya penulis menggunakan “show table status” pada SQL untuk mendapatkan hasilnya.

db7

Seperti terlihat diatas, data pada table tidak begitu berbeda antara text dan varchar.

Demikian untuk test kali ini, semoga berguna.

Leave a Reply

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