June 18, 2013

Post: MySQL Query Cache

get data in chunks so it is even harder to implement. Might not work with transactions – Different transactions may see different states of the databaseof usable memory – Queries are constantly being invalidated from query cache by table updates, this means number of queries in

Post: Shard-Query adds parallelism to queries

of a small number of concurrent queries (or only one) to demonstrate how much improvement could be made toof those are not open source. In the future, Shard-Query can be extended to other database

Post: Why MySQL could be slow with large tables ?

to several tables or perform complex queries finding relationships between objects. Normalized structure and a lot of joins is right way to design your databasenumber of CPUs will not help. Sometimes it is good idea to manually split query into several, run in

Post: Recovery beyond data restore

SQL_LOG_BIN=0 set for session. If the large portion of data trashed you may need to recover full databaseto be accounted for for in the process of replication. It is also worth to note beyond these 3 main recovery scenarios there are number of

Post: A common problem when optimizing COUNT()

to do. You can’t fully optimize a query unless you know how to consider alternative ways totable; If you know your SQL well, you know COUNT() has two meanings. 1) count the number of rows 2) count the number of

Post: Speeding up GROUP BY if you want aproximate results

… I wanted to count how many hits come to the pages which get more than couple of visits per day. We had SQL logs in the database so… quite slow. Of course it would be possible to allocate more memory to the temporary table or switch to filesort method and get result faster. I… to share which I use a lot when I want to analyze data distribution but table is to large is to just limit it to first number of

Post: Updated msl (microslow) patch, installation walk-through!

database binary should be now available in sql subdirectory: (garfield:~/work/mysql-5.0.51a) % ls -l sqlto get the full sessions logged while doing it only for every n-th of them thus limiting the number of writes to

Post: Filtered MySQL Replication

table options also have some issues they are much safer than database based counterparts. Into the group of slaves. If you have several group of slaves which need different data sets replicated to them – you can use number of

Post: Read/Write Splitting with PHP Webinar Questions Followup

to scale out to multiple database instances. Q: Isn’t opening multiple database connections to the master and then subsequently potentially a number of “unsafe” slaves going to

Post: Sphinx search performance optimization: multi-threaded search

to its single-threaded nature. This is however easy to check – look at your Sphinx query log and look at the number ofto be ranges by using a helper table in MySQL to define those ranges, mixing it with sql_query_range or something else, depending on how