<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Tackulmine's Blog</title>
	<atom:link href="http://tackulmine.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://tackulmine.wordpress.com</link>
	<description>If U think U right U wrong... !!!</description>
	<lastBuildDate>Sat, 18 Sep 2010 07:52:45 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='tackulmine.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://1.gravatar.com/blavatar/18f2f64f572b6e660d1b4026dde0cf0f?s=96&#038;d=http%3A%2F%2Fs2.wp.com%2Fi%2Fbuttonw-com.png</url>
		<title>Tackulmine's Blog</title>
		<link>http://tackulmine.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://tackulmine.wordpress.com/osd.xml" title="Tackulmine&#039;s Blog" />
	<atom:link rel='hub' href='http://tackulmine.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Opera 10.60 Final Mendukung HTML5 &amp; WebM</title>
		<link>http://tackulmine.wordpress.com/2010/07/08/opera-10-60-final-mendukung-html5-webm/</link>
		<comments>http://tackulmine.wordpress.com/2010/07/08/opera-10-60-final-mendukung-html5-webm/#comments</comments>
		<pubDate>Thu, 08 Jul 2010 07:31:41 +0000</pubDate>
		<dc:creator>tackulmine</dc:creator>
				<category><![CDATA[Informasi dan Teknologi]]></category>

		<guid isPermaLink="false">http://tackulmine.wordpress.com/?p=49</guid>
		<description><![CDATA[OSLO &#8211; Setelah sebelumnya memastikan Opera 10.60 hadir dalam versi beta, akhirnya alat peramban asal Norwegia merilisnya dalam versi final. Kecepatan, masih menjadi andalan browser tersebut. Beberapa fitur utama yang ada di Opera 10,60 termasuk diantaranya peningkatan kecepatan JavaScript, dukungan untuk HTML5, disematkannya mesin pencari yang lebih luas, saran pencarian, dan peningkatan user interface. Menurut [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tackulmine.wordpress.com&amp;blog=5890103&amp;post=49&amp;subd=tackulmine&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>OSLO &#8211; Setelah sebelumnya memastikan Opera 10.60 hadir dalam versi beta, akhirnya alat peramban asal Norwegia merilisnya dalam versi final. Kecepatan, masih menjadi andalan browser tersebut.</p>
<p>Beberapa fitur utama yang ada di Opera 10,60 termasuk diantaranya peningkatan kecepatan JavaScript, dukungan untuk HTML5, disematkannya mesin pencari yang lebih luas, saran pencarian, dan peningkatan user interface.</p>
<p>Menurut pejabat Opera, optimalisasi tambahan yang telah membuat kecepatan mesin untuk menbaca JavaScript menjadi 50 persen lebih cepat daripada di versi 10,50, yang mereka katakan sudah menjadi browser tercepat dalam.</p>
<p><span id="more-49"></span>Dilansir melalui IT Wire, Senin (5/7/2010) menggunakan JavaScript yang luas menjadi semakin umum di situs web populer, membuat kecepatan eksekusi karakteristik sangat penting. Menyadari hal tersebut opera 10.60 meningkatkan dukungan untuk memberikan HTML5 dan standar web lainnya.</p>
<p>Perusahaan juga mengklaim kalau mereka adalah browser pertama yang menyediakan dukungan built-in untuk format video yang disponsori Google WebM, yang juga akan didukung oleh Mozilla dan Adobe.</p>
<p>WebM menggunakan video VB8 dan audio Vorbis dalam struktur file berdasarkan Matroska. Keuntungan dari menetapkan satu codec video dan satu codec audio serta struktur file adalah bahwa hal itu berarti bahwa setiap aplikasi (misalnya, web browser) yang mendukung WebM harus memainkan file WebM.</p>
<p>Selain itu. daftar mesin pencari Opera mendapat dipilih oleh pengguna sekarang termasuk Bing, dan saran pencarian disampaikan dalam beberapa situs termasuk Wikipedia.<br />
(tyo)</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tackulmine.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tackulmine.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tackulmine.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tackulmine.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tackulmine.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tackulmine.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tackulmine.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tackulmine.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tackulmine.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tackulmine.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tackulmine.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tackulmine.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tackulmine.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tackulmine.wordpress.com/49/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tackulmine.wordpress.com&amp;blog=5890103&amp;post=49&amp;subd=tackulmine&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tackulmine.wordpress.com/2010/07/08/opera-10-60-final-mendukung-html5-webm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/966990c311f988f9582359ea5d3cf9af?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tackulmine</media:title>
		</media:content>
	</item>
		<item>
		<title>Intel Kuak Kehandalan Core i5 dan i7</title>
		<link>http://tackulmine.wordpress.com/2009/11/03/intel-kuak-kehandalan-core-i5-dan-i7/</link>
		<comments>http://tackulmine.wordpress.com/2009/11/03/intel-kuak-kehandalan-core-i5-dan-i7/#comments</comments>
		<pubDate>Tue, 03 Nov 2009 01:40:17 +0000</pubDate>
		<dc:creator>tackulmine</dc:creator>
				<category><![CDATA[Informasi dan Teknologi]]></category>

		<guid isPermaLink="false">http://tackulmine.wordpress.com/?p=43</guid>
		<description><![CDATA[JAKARTA &#8211; Keluarga prosesor Intel Core i5, dan dua seri prosesor terbaru Intel Core i7 akan membawa mikroarsitektur Nehalem terbaru kepada mainstream desktop. Intel Core yang sebelumnya diberi kode nama ?Lynnfield? adalah chip yang dirakit berdasarkan mikro-arsitektur Nehalem dan dirancang bagi pengguna yang membutuhkan performa handal untuk digital media, gaming, dan aplikasi-aplikasi berat lainnya. Prosesor [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tackulmine.wordpress.com&amp;blog=5890103&amp;post=43&amp;subd=tackulmine&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><strong><img class="alignright size-full wp-image-44" title="Intel" src="http://tackulmine.files.wordpress.com/2009/11/6ciko6j0px1.jpg?w=200&#038;h=267" alt="Intel" width="200" height="267" />JAKARTA</strong> &#8211; Keluarga prosesor Intel Core i5, dan dua seri prosesor terbaru Intel Core i7 akan membawa mikroarsitektur Nehalem terbaru kepada mainstream desktop.</p>
<p>Intel Core yang sebelumnya diberi kode nama ?Lynnfield? adalah chip yang dirakit berdasarkan mikro-arsitektur Nehalem dan dirancang bagi pengguna yang membutuhkan performa handal untuk digital media, gaming, dan aplikasi-aplikasi berat lainnya. Prosesor Intel Core beserta express chipset Intel P55 terbaru telah tersedia bagi para pengguna sejak hari ini.</p>
<p><span id="more-43"></span>Semua prosesor bebas dari timah dan halogen dan dilengkapi dengan teknologi turbo boost. Lini teratas dari prosesor Core i7 ini juga ditunjang oleh teknologi Intel Hyper-Threading. Gabungan dari keduanya memberikan kecerdasan yang absolut pada komputer pada saat yang dibutuhkan dan efisiensi yang optimal pada saat baterai komputer tidak terlalu penuh.</p>
<p>Chipset terbaru membawa perubahan desain yang revolusioner sejak penemuan PCI bus pada awal tahun 1990-an dan menjadi acuan bagi format komputer tahun 2010. Intel P55 Express Chipset akan menjadi dasar komponen motherboard di seluruh dunia.</p>
<p>Prosesor terbaru Core i7 dan i5 adalah prosesor Intel pertama yang mengintegrasikan 16-lane PCI Express 2 graphics port dan dua channel memory controller yang memungkinkan semua input dan output diatur oleh sebuah chip yaitu Intel P55 Express Chipset. Sebelumnya Intel Chipset membutuhkan dua buah chip yang terpisah. Sebuah Direct Media Interface (DMI) terbaru menghubungkan prosesor dengan chipset. Chipset mendukung 8 PCI Express 2.0 x1 Ports (2.5GT/s) agar perangkat menjadi fleksibel. Selain itu chipset juga mendukung 6 SATA 3 Gb/s Ports dengan Intel Matrix Storage Technology yang menyediakan RAID levels 0/1/5/10. USB 2.0 hingga 14 Ports dapat ditambahkan pada Chipset yang terintegrasi dengan USB 2.0 Rate Matching Hub beserta Intel High Definition Audio untuk mendapatkan kualitas suara digital yang premium. Prosesor terbaru ini adalah yang pertama menggunakan paket Land Grid Array (LGA) 1156 dan socket technology.</p>
<p>Prosesor mobile Intel Core i7 terbaru, dengan tambahan PM55 Express Chipset, menyuguhkan pengalaman terbaik bagi laptop untuk permainan yang intens, digital media, foto, musik, aplikasi bisnis dan software multi-threaded lainnya yang menuntut kecepatan tinggi dalam prosesnya. Chip juga meningkatkan keseluruhan performa ketika menggunakan aplikasi ini secara bersamaan.</p>
<p>&#8220;Dengan fitur handal seperti Intel Turbo Boost Technology, Intel Hyper-Threading Technology serta fitur lainnya, Intel telah merevolusi prosesor laptop pc, memberikan performa ketika Anda membutuhkannya dan efisiensi energi ketika Anda tidak menggunakannya,&#8221; kata Budi Wahyu Jati, Country Manager, Intel Indonesia Corporation.</p>
<p>Intel Core i7 mobile yang sebelumnya diberi kode nama ?Clarksfield? menggunakan Intel Turbo Boost Technology yang dapat meningkatkan clock speed prosesor hingga 75 persen untuk mengimbangi muatan kerja dan memberikan performa terbaik dengan aplikasi ber-thread tinggi yang menggunakan multi-threaded power dari Intel Hyper-Threading Technology. Prosesor mobile terbaru Intel Core i7 juga dilengkapi dengan dukungan memori dua channel DDR3 1333 MHz dan full 1 x16 or 2 x8 PCI Express 2.0 graphics.</p>
<p>Laptop dengan prosesor mobile Intel Core i7 edisi ekstrim mendukung Intel Extreme Memory Profiles (Intel XMP) dan Intel Extreme Tuning Utility, piranti terdepan ini memungkinkan pengguna untuk melakukan overlock dan membuat suara di laptop Anda menjadi jernih untuk performa yang luar biasa dan optimalisasi baterai. Sebagai tambahan,  Intel PM55 Express Chipset stasiun kerja yang canggih dan laptop khusus game yang dapat mendukung fitur seperti Intel Matrix Storage Technology, Intel High-Definition Audio, dan  meningkatkan  I/O interface. (srn)</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tackulmine.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tackulmine.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tackulmine.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tackulmine.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tackulmine.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tackulmine.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tackulmine.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tackulmine.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tackulmine.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tackulmine.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tackulmine.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tackulmine.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tackulmine.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tackulmine.wordpress.com/43/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tackulmine.wordpress.com&amp;blog=5890103&amp;post=43&amp;subd=tackulmine&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tackulmine.wordpress.com/2009/11/03/intel-kuak-kehandalan-core-i5-dan-i7/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/966990c311f988f9582359ea5d3cf9af?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tackulmine</media:title>
		</media:content>

		<media:content url="http://tackulmine.files.wordpress.com/2009/11/6ciko6j0px1.jpg" medium="image">
			<media:title type="html">Intel</media:title>
		</media:content>
	</item>
		<item>
		<title>Komputer Bakal Kenali Aksara Jawa</title>
		<link>http://tackulmine.wordpress.com/2009/11/03/komputer-bakal-kenali-aksara-jawa/</link>
		<comments>http://tackulmine.wordpress.com/2009/11/03/komputer-bakal-kenali-aksara-jawa/#comments</comments>
		<pubDate>Tue, 03 Nov 2009 01:34:50 +0000</pubDate>
		<dc:creator>tackulmine</dc:creator>
				<category><![CDATA[Informasi dan Teknologi]]></category>

		<guid isPermaLink="false">http://tackulmine.wordpress.com/?p=39</guid>
		<description><![CDATA[JAKARTA &#8211; Organisasi Pendidikan, ilmu dan Budaya (UNESCO) Perserikatan Bangsa-Bangsa (PBB) telah menyetujui penggunaan aksara jawa (hanacaraka) sebagai salah satu font di komputer. Dilansir Xinhua, Senin (2/11/2009), UNESCO akan menyejajarkan aksara jawa ke dalam daftar alphabet international yang ada di dalam komputer, bersama aksara lain seperti latin, China dan Arab. &#8220;Aksara jawa telah diketahui oleh UNICODE, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tackulmine.wordpress.com&amp;blog=5890103&amp;post=39&amp;subd=tackulmine&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><strong><img class="alignright size-full wp-image-40" title="Aksara Jawa" src="http://tackulmine.files.wordpress.com/2009/11/ggbbtwdslj.jpg?w=250&#038;h=197" alt="Aksara Jawa" width="250" height="197" />JAKARTA</strong> &#8211; Organisasi Pendidikan, ilmu dan Budaya (UNESCO) Perserikatan Bangsa-Bangsa (PBB) telah menyetujui penggunaan aksara jawa (hanacaraka) sebagai salah satu font di komputer.</p>
<p>Dilansir <em>Xinhua</em>, Senin (2/11/2009), UNESCO akan menyejajarkan aksara jawa ke dalam daftar alphabet international yang ada di dalam komputer, bersama aksara lain seperti latin, China dan Arab.</p>
<p><span id="more-39"></span>&#8220;Aksara jawa telah diketahui oleh UNICODE, sebuah lembaga di bawah UNESCO yang mengurusi kode aksara standard dalam komputer,&#8221; ujar pemimpin redaksi majalah Jawa tertua &#8216;Penyebar Semangat&#8217; Aryo Tumoro.</p>
<p>Aksara jawa sendiri telah diakui secara internasional berkat UNICODE pada tanggal 2 Oktober lalu, bertepatan dengan pengakuan UNESCO terhadap batik sebagai aset budaya Indonesia.</p>
<p>Permohonan pengakuan internasional terhadap aksara jawa tersebut dilayangkan oleh ahli budaya jawa Ki Demang Sokowaten dari Yogyakarta, sejak 9 September 2007. Namun permohonan ini baru mendapat persetujuan UNESCO pada Oktober lalu.</p>
<p>Sokowaten sendiri telah memiliki situs berbahasa Jawa sejak Januari 2006 dengan nama ki-demang.com yang berisi segala hal yang berhubungan dengan budaya Jawa, filosofi, cerita singkat, dongeng maupun resep makanan. (srn)</p>
<p>sumber : okezone.com</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tackulmine.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tackulmine.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tackulmine.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tackulmine.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tackulmine.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tackulmine.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tackulmine.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tackulmine.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tackulmine.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tackulmine.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tackulmine.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tackulmine.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tackulmine.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tackulmine.wordpress.com/39/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tackulmine.wordpress.com&amp;blog=5890103&amp;post=39&amp;subd=tackulmine&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tackulmine.wordpress.com/2009/11/03/komputer-bakal-kenali-aksara-jawa/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/966990c311f988f9582359ea5d3cf9af?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tackulmine</media:title>
		</media:content>

		<media:content url="http://tackulmine.files.wordpress.com/2009/11/ggbbtwdslj.jpg" medium="image">
			<media:title type="html">Aksara Jawa</media:title>
		</media:content>
	</item>
		<item>
		<title>OPTIMASI SQL</title>
		<link>http://tackulmine.wordpress.com/2009/03/06/optimasi-sql/</link>
		<comments>http://tackulmine.wordpress.com/2009/03/06/optimasi-sql/#comments</comments>
		<pubDate>Fri, 06 Mar 2009 01:42:28 +0000</pubDate>
		<dc:creator>tackulmine</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Database]]></category>

		<guid isPermaLink="false">http://tackulmine.wordpress.com/?p=26</guid>
		<description><![CDATA[Database administrator dan programer sering menggunakan SQL (Structured Query Language) untuk memberikan instruksi kepada database. Tetapi hati-hati, berikan instruksi yang tepat agar database Anda tidak ngambek. Joko Nurjadi<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tackulmine.wordpress.com&amp;blog=5890103&amp;post=26&amp;subd=tackulmine&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img class="size-full wp-image-25 alignleft" title="database" src="http://tackulmine.files.wordpress.com/2009/03/database.gif?w=200&#038;h=150" alt="database" width="200" height="150" /></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">JIKA DIIBARATKAN manusia, database adalah sahabat yang patuh dan mengerti pada setiap perintah yang diberikan, sayangnya terkadang tidak berlaku sebaliknya, kita tidak patuh dan tidak mengerti pada “perintah” yang diberikan database.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Database kadang dapat “mengomel” dengan berbagai cara, bisa jadi dalam bentuk performance yang menurun, pesan kesala  han, atau bahkan hasil laporan yang tidak sesuai. Semua-nya dapat kita minimalisasi, bahkan sebelum hal itu terjadi.</span></span></p>
<p class="MsoNormal"><strong><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">SQL dan RDBMS</span></span></strong></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Optimasi dapat dilakukan dengan berbagai cara, dengan memahami tuning performance pada database dan best practice dari berbagai sumber, Anda dapat memiliki fundamental yang kuat dalam mengoptimalkan kinerja database.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Beberapa teknik dan metoda mungkin memerlukan perlakuan khusus yang berbeda, tergantung pada database yang Anda gunakan.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Sebagai contoh, peningkatan kinerja bisa dilakukan dari sisi administrasi database seperti konﬁ  gurasi ﬁle dan peng-updatean  service atau  security pack, yang tentunya masing-masing database memiliki keunikan dan teknik tersendiri.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Lalu, dengan pertimbangan kompatibilitas, adakah optimasi yang dapat dilakukan secara umum?</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Terdapat seperangkat metode dan teknik yang umum diterapkan saat Anda bekerja dengan RDBMS (Relational Database Management System), mungkin tidak semuanya dapat Anda implementasikan karena sangat tergantung pada lingkungan aplikasi masing-masing, tetapi setidaknya Anda dapat meng-gunakannya sebagai panduan dan referensi untuk membentuk sistem yang terbaik sesuai dengan kondisi yang dihadapi.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;"><span id="more-26"></span>Optimasi melalui perintah SQL juga memegang peranan   yang tidak kalah penting. Inti dari SQL itu sendiri adalah perintah untuk melakukan pengambilan (retrieval), penambahan (insertion), modiﬁkasi (updating), dan penghapusan (deletion) data, disertai dengan fungsi-fungsi pendukung administrasi dan managemen database.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">SQL sendiri merupakan sebuah bahasa atau pemrograman standar untuk RDBMS. Walaupun disebut bahasa, mungkin sedikit janggal saat kita menyebut bahasa pemrograman SQL, lebih familiar jika yang terdengar adalah pemrograman C, Visual Basic, Java, Delphi, dan seterusnya.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Bahasa-bahasa yang disebut belakangan termasuk dalam pemrograman imperative, mudahnya adalah bahasa yang berbentuk instruksi-instruksi inti. Sedangkan, SQL termasuk dalam pemrograman declarative, yang lebih berbentuk kalimat atau pernyataan.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Dalam pengembangannya, SQL terbagi-bagi lagi dalam berbagai extension sehingga melahirkan berbagai sebutan seperti SQL/PSM (Persistent Stored Modules) yang merupakan standar ANSI/ISO, T-SQL (Transact-SQL) dari Microsoft dan SyBase, PL/SQL (PL merupakan singkatan dari Procedural Language) yang digunakan oleh Oracle, yang kemudian dikembangkan lagi menjadi PL/pgSQL yang digunakan PostgreSQL.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Cukup membingungkan, bukan? Untungnya konsep dan elemen-elemen dasar dalam SQL seperti  statement, query, expression, ataupun clause tetap berlaku umum pada setiap SQL extension.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Kita cukupkan pembahasan teori sampai di sini, berikut adalah beberapa optimasi sederhana yang dapat Anda lakukan, untuk setidaknya memperbaiki atau mencegah permasalahan, dan meningkatkan performa RDBMS Anda.</span></span></p>
<p class="MsoNormal"><strong><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Index</span></span></strong></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Optimasi pertama yang kita bahas adalah permasalahan index, tentu Anda mengetahui bahwa index dapat meningkatkan kecepatan pencarian pada record yang diinginkan. Tetapi, Anda harus cukup selektif dalam memilih ﬁeld yang perlu di-index, karena tidak semua ﬁeld memerlukannya.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Ibaratnya membaca buku, proses pencarian atau scan akan membaca dari awal hingga akhir halaman. Pada ﬁeld yang di-index, pencarian dilakukan secara index scan, atau membaca pada index, tidak langsung pada table yang bersangkutan.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Sementara pencarian yang dilakukan langsung dengan membaca record demi record pada table disebut dengan table scan.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Apakah index scan selalu lebih cepat dibandingkan dengan table scan? Ternyata tidak juga, table scan bisa jadi bekerja lebih cepat saat mengakses record dalam jumlah relatif kecil, ataupun pada saat aplikasi memang memerlukan pembacaan table secara keseluruhan.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Sebaliknya dalam mengakses record yang besar pada ﬁeld tertentu, index scan dapat mengurangi operasi pembacaan I/O sehingga tidak jarang menghasilkan kinerja yang lebih cepat.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Sebagai patokan, Anda dapat menentukan index pada ﬁeld yang sering digunakan, misalnya ﬁeld yang sering diakses oleh klausa WHERE, JOIN, ORDER BY, GROUP BY.</span></span></p>
<p class="MsoNormal"><strong><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Menentukan Tipe Data</span></span></strong></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Tipe data merupakan permasalahan yang gampang-gampang susah. Dari sisi daya tampung, tipe data yang terlalu kecil atau sebaliknya terlalu besar bagi suatu ﬁeld, dapat menimbulkan bom waktu yang menimbulkan masalah seiring dengan pertambahan data yang pesat setiap harinya.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Menentukan tipe data yang tepat memerlukan ketelitian dan analisa yang baik. Sebagai contoh, kita perlu mengetahui kapan kita menggunakan tipe data char atau varchar.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Keduanya menampung karakter, bedanya char menyediakan ukuran penyimpanan yang tetap (ﬁ  xed-length), sedangkan varchar menyediakan ukuran penyimpanan sesuai dengan isi data (variable-length).</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Patokan umum adalah menggunakan tipe data char jika ﬁ  eld tersebut diperuntukkan untuk data dengan panjang yang konsisten. Misalnya kode pos, bulan yang terdiri dari dua digit (01 sampai 12), dan seterusnya. Varchar digunakan jika data yang ingin disimpan memiliki panjang yang bervariasi, atau gunakan varchar(max) jika ukurannya melebihi 8000 byte.</span></span></p>
<p class="MsoNormal"><strong><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Jangan Izinkan Allow Null</span></span></strong></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Jika memungkinkan, kurangi penggunaan ﬁeld yang memperbolehkan nilai null. Sebagai gantinya, Anda dapat memberikan nilai default pada ﬁeld tersebut.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Nilai null kadang rancu dalam intepretasi programer dan dapat mengakibatkan kesalahan logika pemrograman. Selain itu, ﬁeld null mengonsumsi byte tambahan sehingga menambah beban pada query yang mengaksesnya.</span></span></p>
<p class="MsoNormal"><strong><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Query yang Mudah Terbaca</span></span></strong></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Karena SQL merupakan bahasa declarative, maka tidak mengherankan jika Anda membuat query berbentuk kalimat nan panjang walaupun mungkin hanya untuk keperluan menampilkan satu ﬁeld!</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Jangan biarkan query Anda susah dibaca dan dipahami, kecuali Anda memang berniat membuat pusing siapapun yang melihat query Anda. Query panjang yang ditulis dalam 1baris jelas akan menyulitkan modiﬁ  kasi dan pemahaman, akan jauh lebih baik jika Anda menuliskan query dalam format yang mudah dicerna.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Pemilihan huruf besar dan kecil juga dapat mempermudah pembacaan, misalnya dengan konsisten menuliskan keyword SQL dalam huruf kapital, dan tambahkan komentar bilamana diperlukan.</span></span></p>
<p class="MsoNormal"><strong><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Hindari SELECT *</span></span></strong></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Select mungkin merupakan keyword yang paling sering digunakan, karena itu optimasi pada perintah  SELECT sangat mungkin dapat memperbaiki kinerja aplikasi secara keseluruhan. \</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">SELECT * digunakan untuk melakukan query semua ﬁeld yang terdapat pada sebuah table, tetapi jika Anda hanya ingin memproses ﬁeld tertentu, maka sebaiknya Anda menuliskan ﬁeld yang ingin diakses saja, sehingga query Anda menjadi SELECT ﬁeld1, ﬁeld2, ﬁeld3 dan seterusnya (jangan pedulikan kode program yang menjadi lebih panjang!). Hal ini akan mengurangi beban lalu lintas jaringan dan lock pada table, terutama jika table tersebut memiliki banyak ﬁeld dan berukuran besar.</span></span></p>
<p class="MsoNormal"><strong><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Batasi ORDER BY</span></span></strong></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Penggunaan ORDER BY  yang berfungsi untuk mengurutkan data, ternyata memiliki konsekuensi menambah beban query, karena akan menambah satu proses lagi, yaitu proses sort.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Karena itu gunakan ORDER BY hanya jika benar-benar dibutuhkan oleh aplikasi Anda.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Atau jika dimungkinkan, Anda dapat melakukan pengurutan pada sisi client dan tidak pada sisi server. Misalnya dengan menampung data terlebih dahulu pada komponen grid dan melakukan sortir pada grid tersebut sesuai kebutuhan pengguna.</span></span></p>
<p class="MsoNormal"><strong><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Subquery Atau JOIN</span></span></strong></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Adakalanya sebuah instruksi dapat dituliskan dalam bentuk subquery atau perintah JOIN, disarankan Anda memprioritaskan penggunaan JOIN karena dalam kasus yang umum akan menghasilkan performa yang lebih cepat.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Walaupun demikian, mengolah query merupakan suatu seni, selalu ada kemungkinan ternyata subquery bekerja lebih cepat dibandingkan JOIN, misalnya dalam kondisi penggunaan</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">JOIN yang terlalu banyak, ataupun logika query yang belum optimal.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Gunakan WHERE dalam SELECT</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">“Di mana ada gula di sana ada semut”. Untuk programer database, pepatah itu perlu dimodiﬁ  kasi menjadi “di mana ada SELECT di sana ada WHERE”, untuk mengingatkan pentingnya klausa WHERE sebagai kondisi untuk menyaring record sehingga meminimalkan beban jaringan.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Saat sebuah table dengan jumlah data yang sangat besar diproses, juga terjadi proses lock terhadap table tersebut sehingga menyulitkan pengaksesan table yang bersangkutan oleh pengguna yang lain.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Bahkan jika Anda bermaksud memanggil seluruh record, tetap menggunakan WHERE merupakan kebiasaan yang baik.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Jika Anda telah menggunakan WHERE pada awal query, maka kapanpun Anda ingin menambahkan kondisi tertentu, Anda tinggal menyambung query tersebut dengan klausa AND diikuti kondisi yang diinginkan.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Tapi bagaimana menggunakan WHERE jika benar-benar tidak ada kondisi apapun? Anda dapat menuliskan suatu kondisi yang pasti bernilai true, misalnya SELECT &#8230;. WHERE 1=1. Bahkan tools open source phpMyAdmin yang berfungsi untuk mena  ngani database MySQL selalu menyertakan default klausa WHERE 1 pada perintah SELECT, di mana angka 1 pada MySQL berarti nilai true.</span></span></p>
<p class="MsoNormal"><strong><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Kecepatan Akses Operator</span></span></strong></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">WHERE 1=1 dan WHERE 0 &lt;&gt; 1 sama-sama merupakan kondisi yang menghasilkan nilai true. Tetapi, dalam hal ini lebih baik Anda menggunakan WHERE 1=1 daripada WHERE 0 &lt;&gt; 1. Hal ini dikarenakan operator = diproses lebih cepat dibandingkan dengan operator &lt;&gt;.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Dari sisi kinerja, urutan operator yang diproses paling cepat adalah:</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">1. =</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">2. &gt;, &gt;=, &lt;. &lt;=</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">3. LIKE</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">4. &lt;&gt;</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Tidak dalam setiap kondisi operator dapat disubtitusikan seperti contoh sederhana di atas, tetapi prioritaskanlah penggunaan operator yang tercepat.</span></span></p>
<p class="MsoNormal"><strong><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Membatasi Jumlah Record</span></span></strong></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Bayangkan Anda menampilkan isi sebuah table dengan menggunakan SELECT, dan ternyata table tersebut memiliki jutaan record yang sangat tidak diharapkan untuk tampil seluruhnya.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Skenario yang lebih buruk masih dapat terjadi, yaitu query tersebut diakses oleh ratusan pengguna lain dalam waktu bersamaan!</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Untuk itu, Anda perlu membatasi jumlah record yang berpotensi mengembalikan record dalam jumlah besar (kecuali memang benar-benar dibutuhkan), pada SQL Server, Anda dapat menggunakan operator TOP di dalam perintah SELECT.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Contohnya SELECT TOP 100 nama&#8230;  akan menampilkan 100 record teratas ﬁeld nama.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Jika menggunakan MySQL, Anda dapat menggunakan LIMIT untuk keperluan yang sama.</span></span></p>
<p class="MsoNormal"><strong><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Batasi Penggunaan Function</span></span></strong></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Gunakan fungsi-fungsi yang disediakan SQL seperlunya saja.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Sebagai contoh, jika Anda menemukan query sebagai berikut: SELECT nama FROM tbl_teman WHERE ucase(nama) = ‘ABC’, nampak query tersebut ingin mencari record yang memiliki data berisi “abc”, fungsi ucase digunakan untuk mengubah isi ﬁeld nama menjadi huruf besar dan dibandingkan dengan konstanta “ABC” untuk meyakinkan bahwa semua data “abc” akan tampil, walaupun dituliskan dengan huruf kecil, besar, ataupun kombinasinya.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Tetapi, cobalah mengganti query tersebut menjadi SELECT nama FROM tbl_teman WHERE nama = ‘ABC’, perhatikan query ini tidak menggunakan  function ucase. Apakah menghasilkan result yang sama dengan query pertama? Jika pengaturan database Anda tidak case-sensitive (dan umumnya secara default memang tidak case-sensitive), maka hasil kedua query tersebut adalah sama. Artinya, dalam kasus ini Anda sebenarnya tidak perlu menggunakan function ucase!</span></span></p>
<p class="MsoNormal"><strong><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Baca dari Kiri ke Kanan</span></span></strong></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Query yang Anda tulis akan diproses dari kiri ke kanan, misalkan terdapat query WHERE kondisi1 AND kondisi2 AND kondisi3, maka kondisi1 akan terlebih dahulu dievaluasi, lalu kemudian kondisi2, kondisi3, dan seterusnya. Tentunya dengan asumsi tidak ada kondisi yang diprioritaskan/dikelompokkan dengan menggunakan tanda kurung.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Logika operator AND akan langsung menghasilkan nilai false saat ditemukan salah satu kondisi false, maka letakkan kondisi yang paling mungkin memiliki nilai false pada posisi paling kiri. Hal ini dimaksudkan agar SQL tidak perlu lagi mengevaluasi kondisi berikutnya saat menemukan salah satu kondisi telah bernilai false.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Jika Anda bingung memilih kondisi mana yang layak menempati posisi terkiri karena kemungkinan falsenya sama atau tidak bisa diprediksi, pilih kondisi yang lebih sederhana untuk diproses.</span></span></p>
<p class="MsoNormal"><strong><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Gambar dalam Database</span></span></strong></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Database memang tidak hanya diperuntukkan sebagai penyimpanan teks saja, tetapi dapat juga berupa gambar. Kalau pepatah mengatakan sebuah gambar bermakna sejuta kata, tidak berarti kita harus menyediakan tempat penyimpanan seukuran sejuta kata untuk menampung satu gambar! Akan lebih baik bagi kinerja database jika Anda hanya menyimpan  link ataulokasi gambar di dalam database, dibandingkan menyimpan ﬁsik gambar tersebut.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Kecuali jika Anda tidak memiliki pilihan lain, misalnya karena alasan keamanan atau tidak tersedianya tempat penyimpanan lain untuk gambar Anda selain di dalam database.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Tetapi, jelas jika Anda dapat memisahkan gambar secara ﬁsik dari database, maka ukuran dan beban database akan relatif berkurang drastis, proses seperti back-up dan migrasi akan lebih mudah dilakukan.</span></span></p>
<p class="MsoNormal"><strong><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Pengukuran Kinerja</span></span></strong></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Terdapat  tools optimizer yang bervariasi untuk tiap RDBMS, Anda dapat menggunakannya sebagai panduan untuk meningkatkan kinerja query, di mana Anda dapat mengetahui berapa lama waktu eksekusi atau operasi apa saja yang dilakukan sebuah query.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Jika Anda menemukan sebuah query tampak tidak optimal, berusahalah menulis ulang query tersebut dengan teknik dan metode yang lebih baik. Semakin banyak query yang dapat dioptimasi, akan semakin baik kinerja aplikasi Anda. Terutama saat frekuensi pemakaian query tersebut relatif tinggi.</span></span></p>
<p class="MsoNormal"><strong><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Back-up</span></span></strong></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Buatlah back-up otomatis secara periodik, sebaiknya tes dan simulasikan prosedur restore database dan perhitungkan waktu yang diperlukan untuk membuat sistem pulih kembali jika terjadi sesuatu yang tidak diharapkan pada database.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Lakukan proses back-up pada waktu di mana aktivitas relatif rendah agar tidak mengganggu kegiatan operasional.</span></span></p>
<p class="MsoNormal"><strong><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Banyak Jalan Menuju Roma</span></span></strong></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Berikan satu masalah pada beberapa programer, maka Anda mungkin akan mendapatkan beberapa solusi yang berbedabeda. Banyak alternatif yang dapat diciptakan untuk menghasilkan sesuatu, tetapi tentunya kita menginginkan alternatif yang terbaik.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Karena itu, jangan ragu mencoba menuliskan ulang query Anda dengan cara lain jika Anda melihat kemungkinan peningkatan kinerja, contohnya pada potongan query berikut:</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">WHERE SUBSTRING(nama,1,1) =’b’</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Query di atas akan mengambil record dengan kondisi karakter pertama kolom nama adalah “b”, sehingga akan tampil isi record seperti “Budi”, “Badu”, “Benny” dan seterusnya. Cara lain untuk menghasilkan record yang sama adalah sebagai berikut:</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">WHERE nama LIKE ‘b%’</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Hasil yang ditampilkan kedua query tersebut akan sama, tetapi performa yang dihasilkan (terutama untuk record berukuran besar) akan berbeda.  Umumnya kondisi LIKE akan bekerja dengan lebih cepat dibandingkan function SUBSTRING.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Contoh lain yang lebih kompleks adalah seperti query beri-kut:</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">SELECT NIP, nama FROM tbl_pegawai WHERE dept = ‘IT’ OR kota</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">= ‘jakarta’ OR divisi = ‘programer’</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Perhatikan query di atas memiliki tiga kondisi yang dipisahkan oleh klausa OR. Alternatif lain adalah dengan menuliskan query sebagai berikut:</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">SELECT NIP, nama FROM tbl_pegawai WHERE dept = ‘IT’</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">UNION ALL</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">SELECT NIP, nama FROM tbl_pegawai WHERE kota = ‘jakarta’</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">UNION ALL</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">SELECT NIP, nama FROM tbl_pegawai WHERE divisi = ‘programer’</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Walaupun penulisan query menjadi lebih panjang, bisa jadi al-ternatif ini akan lebih baik. Mengapa? Dengan asumsi ﬁeld dept memiliki index, sementara ﬁeld kota dan divisi tidak diindex, query pertama tidak akan menggunakan index dan melakukan table scan. Berbeda dengan query kedua, index akan tetap dilakukan pada sebagian query sehingga akan menghasilkan kinerja yang relatif lebih baik.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Ah&#8230; Beda Tipis Saja!</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Pastinya masih banyak terdapat teknik lain yang tidak akan dapat dibahas semuanya dalam artikel ini. Di antara (atau mungkin semua) teknik optimasi yang dibahas di atas, mungkin Anda akan menemukan bahwa setelah diuji dengan data sampel maka kinerja sebelum dan sesudah optimasi ternyata sama sekali tidak signiﬁkan, beda tipis, atau tidak ada bedanya sama sekali!</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Memang benar, dengan spesiﬁ  kasi hardware yang semakin meningkat, data yang relatif kecil, dan alur yang sederhana, Anda mungkin tidak akan mendapatkan perbedaan yang signiﬁkan.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Tetapi jika Anda siap untuk terjun menghadapi tantangan menangani aplikasi yang lebih besar, maka perbedaan antara tanpa dan dengan optimasi akan sangat nyata, dengan pema-haman dan kebiasaan  coding yang baik, Anda akan dapat menghasilkan aplikasi yang juga lebih baik.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Tidak ada salahnya menerapkan optimasi yang Anda ketahui sedini mungkin dalam pengembangan sistem aplikasi Anda.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Bahkan jika sebuah aplikasi tnampaknya memiliki kinerja yang cukup baik, tidak berarti lepas dari usaha optimasi lebih lanjut.</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">Terutama jika Anda mengharapkan aplikasi tersebut mampu berkembang lebih jauh, tidak pernah ada kata sempurna bagi suatu sistem aplikasi, tetapi setiap sistem selalu ada kesempatan menjadi lebih berguna. Salah satunya dengan selalu mencari cara yang lebih baik</span></span></p>
<p class="MsoNormal"><span style="font-size:small;"><span style="font-family:'Times New Roman', Times, serif;">LEBIH LANJUT</span></span></p>
<p class="MsoNormal"><span style="font-family:'Times New Roman', Times, serif;"><span style="font-size:small;">·</span> <span style="font-size:small;">http://blog.sqlauthority.com/</span></span></p>
<p class="MsoNormal"><span style="font-family:'Times New Roman', Times, serif;"><span style="font-size:small;">·</span> <span style="font-size:small;">http://blogs.msdn.com/queryoptteam/</span></span></p>
<p class="MsoNormal"><span style="font-family:'Times New Roman', Times, serif;"><span style="font-size:small;">·</span> <span style="font-size:small;">http://www.sql-server-performance.com</span></span></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tackulmine.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tackulmine.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tackulmine.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tackulmine.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tackulmine.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tackulmine.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tackulmine.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tackulmine.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tackulmine.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tackulmine.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tackulmine.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tackulmine.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tackulmine.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tackulmine.wordpress.com/26/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tackulmine.wordpress.com&amp;blog=5890103&amp;post=26&amp;subd=tackulmine&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tackulmine.wordpress.com/2009/03/06/optimasi-sql/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/966990c311f988f9582359ea5d3cf9af?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tackulmine</media:title>
		</media:content>

		<media:content url="http://tackulmine.files.wordpress.com/2009/03/database.gif" medium="image">
			<media:title type="html">database</media:title>
		</media:content>
	</item>
	</channel>
</rss>
