Comments (0)
Tips untuk Meningkatkan Kinerja Kueri MySQL – Bagian 2 (Tamat)
Lanjutan dari Bagian 1…
4. Gunakan Pencarian Teks Lengkap
Pencarian teks lengkap (Full-Text Search/FTS) MySQL jauh lebih cepat daripada kueri menggunakan karakter wildcard. Untuk menambahkan indeks pencarian teks lengkap ke tabel sampel siswa, kita dapat menggunakan perintah MySQL di bawah ini:
mysql> Alter table students ADD FULLTEXT (first_name, last_name); mysql> Select * from students where match(first_name, last_name) AGAINST (‘Jones’);
Dalam contoh di atas, kita telah menentukan kolom yang ingin dicocokkan (first_name dan last_name) dengan kata kunci pencarian (‘Jones’).
Hanya satu baris yang akan dipindai bahkan jika basis data siswa memiliki baris yang sangat banyak dan ini akan mempercepat basis data.
5. Optimalkan Pernyataan Like Dengan Klausa Union
Pertimbangkan situasi ketika Anda ingin menjalankan kueri menggunakan operator perbandingan ‘or’ pada kolom data atau kolom yang berbeda di tabel tertentu. Di sini, jika Anda menggunakan kata kunci ‘or’ secara berlebihan dalam klausa WHERE, ada kemungkinan pengoptimal MySQL dapat secara keliru memilih pemindaian tabel penuh untuk menarik baris data.
Jika Anda memiliki indeks yang dapat mengoptimalkan satu sisi kueri dan indeks lain untuk mengoptimalkan sisi lain, klausa union dapat membuat kueri berjalan lebih cepat. Sebagai contoh; pikirkan kasus di mana Anda menjalankan kueri di bawah ini dengan ‘first_name‘ dan ‘last_name‘ terindeks:
mysql> select * from students where first_name like ‘Jones%’ or last_name like ‘Jones%’;
Kueri di atas dapat berjalan jauh lebih lambat dibandingkan dengan kueri di bawah ini yang menggunakan operator union menggabungkan hasil dari 2 kueri cepat terpisah yang mengambil keuntungan dari indeks.
mysql> select from students where first_name like ‘Jones%’ union all select from students where last_name like ‘Jones%’;
6. Caching Kueri MySQL
Seperti yang kita ketahui, caching digunakan untuk meningkatkan kinerja. Ini akan mempercepat situs atau aplikasi. Cache kueri MySQL menyimpan hasil kueri SELECT yang memungkinkan pengembalian cepat kueri jika kueri yang identik diterima di masa mendatang. Ketika server meminta kueri yang sama, MySQL akan mengambil hasil dari cache alih-alih menjalankan kueri lagi. Ini memang akan mempercepat proses secara signifikan. Hasilnya akan ditetapkan dalam cache memori seperti Memcached atau Cassandra.
Perintah Konfigurasi
Mari kita periksa cara mengaktifkan caching kueri di server MySQL.
Untuk mengaktifkan caching kueri, kita perlu menambahkan perintah konfigurasi berikut.
query_cache_size = SIZE
Perintah pertama yang diperlukan untuk mengizinkan caching query di server MySQL adalah “query_cache_size = SIZE”.
Perintah ini memungkinkan kita untuk mengatur ukuran memori yang dialokasikan untuk hasil caching kueri. Dalam server tipikal, nilai default untuk perintah ini adalah ‘0’. Itu berarti bahwa cache kueri dinonaktifkan. Untuk mengaktifkan caching kueri, kita perlu menetapkan beberapa nilai kedalamnya. Kita harus menetapkan nilai sesuai dengan berapa banyak memori yang kita rencanakan untuk dialokasikan untuk caching kueri.
query_cache_type = OPTION
Perintah konfigurasi berikutnya yang perlu diatur untuk mengaktifkan caching kueri adalah “query_cache_type = OPTION”. Dengan menggunakan perintah ini, kita menentukan jenis cache kueri yang diatur.
Ada 3 kemungkinan opsi yang dapat diatur untuk perintah ini. Yaitu:
1) Nol “0”: – Memberitahu server hal berikut: Jangan simpan hasil di atau mengambil hasil dari cache kueri.
2) Satu “1”: – Ada hasil kueri yang dimulai dengan “SELECT S_NO_CACHE”. Jika kita menetapkan nilai Satu untuk perintah ini, itu menandakan bahwa, untuk menyimpan semua hasil kueri kecuali yang dimulai dengan SELECT S_NO_CACHE.
3) Dua “2”: – Jika kita menetapkan nilai sebagai “2”, itu berarti hasil cache hanya untuk kueri yang dimulai dengan SELECT SQL_CACHE.
Mengaktifkan Caching Kueri di MySQL
Kita dapat mengatur caching dalam format berikut. Anda harus masuk ke MySQL.
Asumsikan bahwa, kita sedang menyiapkan cache kueri untuk 32 Mb. Kita harus melakukan hal berikut untuk memperolehnya.
Sekarang, kita dapat menambahkan perintah konfigurasi lainnya sebagai berikut:
query_cache_size = 268435456 query_cache_type = 1 query_cache_limit = 1048576
Perintah di atas menyiratkan bahwa ukuran maksimum hasil kueri individual yang dapat disimpan ditentukan nilainya menjadi 1048576 menggunakan variabel sistem query_cache_limit. Ukuran memori diatur dalam Kb.
Kesimpulan
Dengan panduan ini, sekarang Anda tahu bagaimana mengoptimalkan server MySQL. Mengikuti langkah-langkah di atas, tentu saja setelah membuat tabel basis data yang terstruktur dengan baik terlebih dulu akan meningkatkan kinerja kueri MySQL Anda.
(Sumber & Gambar: bridge-global.com – Neenu)
Recent Posts
Recent Comments
Archives
LATEST VIDEO
Tags
- ai
- analysis
- application
- art
- articles
- artificial intelligence
- audio
- block chain
- business
- cloud
- coding
- cryptocurrency
- culture
- data
- database
- design
- desktop
- development
- digital
- economy
- encryption
- enterprise
- events
- framework
- hardware
- health
- html/css
- Image
- industry
- infomation
- information
- internet
- jquery
- knowledge
- management
- mobile
- officesuite
- online
- open source
- program
- programming
- proprietary
- PROSolvIT
- Quote
- RDO-POS
- reendoosystem
- RHomeS
- robotic
- security
- server
- SiReDisH
- SiReDU
- SiReGi
- software
- sound
- spreadsheet
- system
- technology
- tips
- tool
- tricks
- tutorial
- ui
- userexperience
- userinterface
- ux
- video
- virtual reality
- vr
- web
- web design
- website
- wordpress
LEAVE A REPLY
Your email address will not be published. Required fields are marked *