Since I need to write up what I added for the next version
of
mysqlslap (aka... this is not what is in 5.1...), I thought I
would
blog it :)
The current genesis of additions come either from user requests
or...
well my own use :)
The last couple of weeks have had me spending time looking
at
performance problems so I've found the need for all sorts of
new
pieces. Some were just a couple of lines of code, some where
many
more...
--ignore-sql-errors
Ignore SQL errors during the query run. By default errors shut
down
slap. If you get errors, you have problems. Sometimes though,
you
want to keep going...
Final Output
Standard deviation is now calculated and displayed (N-1). I
had
visually observed a while ago that when variance goes up,
engines
tend to behave wildly. Its a good rule of …
I was pointed to an article about how the “one size fits all” database model doesn’t work anymore — how Oracle, DB2 and Ingres were written so long ago, they’d have to be rewritten to meet the needs of today’s database users. Jacob Nikom pointed the article to me; apparently he contacted the author and started to explain how MySQL meets that criteria, but the author disagreed.
Read the article for yourself:
http://www.databasecolumn.com/2007/09/one-size-fits-all.html
Anyone else notice the irony of saying “all those other DBMS’s aren’t a one-size-fits-all solution, but this one is?” I think that MySQL comes the closest to a DBMS that is NOT “one size fits all”, given the multiple storage engines available. What other DBMS will allow you to use your Amazon S3 account as a table? What other DBMS will allow you to …
[Read more]This week I have the honer of write Log Buffer. If you’re a fan of everything new and shiny, just sit back, because you’ll enjoy this weeks edition.
For those who’ve never heard of Arnold Daniels. I’m a software engineer at Javeline, an active member of the MySQL community and the author of lib_mysqludf_xql which is part of the MySQL UDF Repository. Well thats more than enough about me. I’m not here to get a job or a date, but to bring you the latest news.
Dreaming of Oracle features
Oracle has recently brought out version 11g of their database
server. Just when you thought other DBMSs were catching …
A few days ago someone made the comment that Pentaho Data Integration (Kettle) was a bit too hard to use. The person on the chat was someone that tried to load a text file into a database table and he was having a hard time doing just that.
So let’s go back to basics in this blog post and load a delimited text file into a MySQL table.
If you want to see how it’s done, click on this link to watch a real-time (non-edited) flash movie. It’s 11MB to download and is about 2-3 minutes long.
Until next time!
Matt
My quiz about SQL mode was a bit more difficult than I expected.
The question was which ones of the following statements are
affected by a change from the default SQL mode to ANSI
mode.
I used the INFORMATION_SCHEMA tables for examples throughout.
This is to make it easy to try for yourself, without needing to
create tables etc. If you use the Query Browser to try this out
you should beware that setting the sql_mode might not work, since
the Query Browser by default creates a new database connection
for every statement. The easiest way to check this si to use the
'set global sql_mode' command, but you should not do this on a
production database, since strange things might happen....
If you want to read the documentation, you find it here.
Now for the solution...
a) SELECT concat(table_name,' …
The NetBeans IDE has simplified the steps to deploy JRuby on Rails application on GlassFish. This blog explains the steps and is an update to screencast #web6.
- Download the install the latest NetBeans 6 Nightly. I downloaded the Ruby pack by
clicking on the "
Download" button in the Ruby column. - Create a new Rails Application
- Right-click in the Project window and select "
New Project...". Take all the defaults as shown below:
- Click on …
- Right-click in the Project window and select "
Returning to my post about memory consumption with Stored Function at this moment I want to annul that post. Trying to repeat described behavoir I cannot repeat that again and probably there was something wrong with the whole box, not MySQL. I apologize if it was confusing. Although I am almost sure this topic will popup somewhen.
I had some fun yesterday with some odd performance problems. So I did a run with oprofile and got this:
561612 25.0417 /lib64/tls/libc-2.3.4.so memset 429457 19.1491 /usr/lib/debug/lib/modules/2.6.9-34.ELsmp/vmlinux clear_page 214268 9.5540 /usr/lib/debug/lib/modules/2.6.9-34.ELsmp/vmlinux do_page_fault 144293 6.4339 /usr/lib/debug/lib/modules/2.6.9-34.ELsmp/vmlinux do_no_page 94410 4.2097 /usr/lib/debug/lib/modules/2.6.9-34.ELsmp/vmlinux buffered_rmqueue 64998 2.8982 /lib64/tls/libc-2.3.4.so memcpy 59565 2.6559 /usr/lib/debug/lib/modules/2.6.9-34.ELsmp/vmlinux __down_read_trylock 59369 2.6472 /usr/lib/debug/lib/modules/2.6.9-34.ELsmp/vmlinux handle_mm_fault 47312 2.1096 /usr/lib/debug/lib/modules/2.6.9-34.ELsmp/vmlinux free_hot_cold_page 39161 1.7462 /usr/lib/debug/lib/modules/2.6.9-34.ELsmp/vmlinux release_pages 39140 1.7452 …[Read more]
I was asked a question today, “DATETIME vs TIMESTAMP. When to use which & why?”
It’s a good MySQL introduction question, here are some general considerations for choosing one.
Do you need Date values other then an EPOCH value? (i.e. before
1970) If the answer is yes, then DATETIME is required.
If you do not however, then TIMESTAMP is the best choice for a
few reasons.
1. The TIMESTAMP columns uses 4 Bytes to record it’s value, while
DATETIME uses 8 bytes. Using the smallest storage is always a
best practice for all columns.
2. The TIMESTAMP column supports the CURRENT_DATE syntax in the
CREATE TABLE command. This enables the column to have a default
value for INSERT or for UPDATE, but not both. Indeed this is the
only data type that allows for any default value that is not a
constant.
3. All date functions (at least the ones I use) work equally as
well with TIMESTAMP and DATETIME.
I …
[Read more]Today, I am in Boston for training, I am shadowing Ronald Bradford, another MySQL consultant. It is fun and I learn a lot although it is not always easy to follow someone else mind. But we needed to evaluate the performance and the stability of a SAN. Do do so, we have used the bonnie++ tool. The server has 32 GB of memory and the filesystem was mounted under /data3. The command line used was the following:
mkdir /data3/testbonnie; nohup bonnie++ -d /data3/testbonnie -s 65000 -n 10 -r 32000 -x 5 -u root -g root &
After more six hours… the results were the following:
cat nohup.out | grep proddb | bon_csv2txt
Version @version@ ——Sequential Output—— –Sequential Input-
–Random-
-Per Chr- –Block– -Rewrite- -Per Chr- –Block– –Seeks–
Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP
/sec %CP
proddb06 65000M 71639 84 67884 13 54084 7 60194 60 126326 7 572.7
0 …