The 2008 MySQL Conference & Expo is nearing, and I’ve still got unpublished notes from the 2007 conference! In a way, its a good thing - too much was published during conference time, its hard to keep track. Here comes my notes from a superb keynote by Guy Kawasaki, titled The Art of Innovation, presented at the MySQL Conference & Expo 2007.
… on Apple
- “Back then, sexual harassment was a good thing”
- Apple allowed first class travel as long as you worked for
Steve back in the day :-)
… on being a/pitching to a VC
A good test for entrepreneurs is: “Are you using MySQL”. Guy’s a
VC, he likes you to use cheap, highly available tools.
Make meaning - don’t go to a VC and say you want to make money. It means you’ve attracted the wrong …
[Read more]
Take a look at these two numbers:
CREATE TABLE my_table (
number_1 BIGINT(4),
number_2 INT (10)
);
Which one do you think takes up less space? The answer is that
BIGINT always takes 8 bytes and that INT always takes 4 bytes.
The value in the parenthesis has nothing to do with storage. The
only use I am aware of that it has, is with the ZEROFILL feature
(which I never use):
mysql> CREATE TABLE a (a INT(5) ZEROFILL);
Query OK, 0 rows affected (0.16 sec)
mysql> INSERT INTO a VALUES (1);
Query OK, 1 row affected (0.03 sec)
mysql> SELECT * FROM a;
+-------+
| a |
+-------+
| 00001 |
+-------+
1 row in set (0.00 sec)
It seems that there are a lot of open source packages with INT(4)
(or similar). If you only need 4 digits, you …
Ok, in case you just showed up going “finally!”, I’m sorry to let you down - I haven’t yet ported NDB API to erlang.
But I should - and I want to.
Brian was just talking about concurrent program and mentioned erlang. Turns out that when I was starting off working on the NDB/Connectors, Elliot asked me if I’d considered erlang. Always up for learning a new language I did a quick check, but there were no swig bindings, so I put it off until later.
Then later came and I still hadn’t written any code, so I found a book online and started reading. I have to say erlang is very cool.
There is no way on earth I can wrap the NDB API in any meaningful way using erlang. However, I might be able to reimplement the wire protocol in erlang and have the resulting thing be way more stable and scalable. Thing is - it really made me …
[Read more]Registration is now open for the sixth annual MySQL Conference & Expo. Co-presented by MySQL AB and O'Reilly Media, the conference will take place April 14-17, 2008, in Santa Clara, California. The event is expected to bring together over 1,600 open source and database users from some of the most exciting and fastest-growing companies in the world, as well as from the large and active MySQL Community. The program for 2008 will include keynote presentations by Jacek Becla of Stanford Linear Accelerator and MySQL CEO Marten Mickos.
More information is available at www.mysqlconf.com.
TechIQ, which focuses on the VAR IT channel business, has identified the top 10 open source companies they expect to succeed in 2008. It's a good article and although it includes some obvious choices, it also includes a few well-thought out surprises. So it's not your typical end-of-year round up. This one has some creative thinking behind it. I think there's a lot of potential for VARs to get behind the open source movement and help customers with implementations as well as integration of open source offerings. (Disclaimer: I admit that I blushed to see MySQL in the list. But... READ MORE
Article from Slashdot:
http://developers.slashdot.org/article.pl?sid=07/12/17/1635200&from=rss
The point is that to make use of multiple way systems, aka
machines with a mix of processors and cores, you have to put more
thought into your designs.
I've always thought that perl, PHP, and to some extent Java came
about because developers could write code in weakly typed/garbage
collected systems faster.
Sure, Java is not weakly typed, but the way I see developers
program with it, you would not know the difference.
These languages gave us tools to develop against systems that had
plenty of memory. Until the advent of 32bit systems, you really
had to watch the amount of memory you were using.
Memory issues Today?
"Not so much".
Memory is …
I prepared the release builds for 5.0.11 yesterday evening and they have been uploaded to the mirrors. All automated tests passed without error and my initial manual tests showed everything working. Nevertheless Tax found a show-stopper bug later today following our manual testing procedures.
The problem is located in the SQL generation code for tables. We introduced a new internal index type for foreign key index columns that is maintained automatically by the tool. This new type caused the generated SQL to be corrupt. We tried a simply fix today but were not able to fully solve it. We will take time tomorrow to properly fix the issue and I will trigger new build after that. Then it will take about 20h till the mirrors have catched up and we can announce the new release.
Sorry for the delay.
We presented a webinar along with MySQL last week. The topic was MySQL Backup from the perspective of an Oracle DBA. We got some really good questions at the end of the webinar. Here is a transcript of Q&A:
Q from Trey: Will this Webinar be available online for viewing later?
A from MySQL: Yes. It will be on our site in a few days at http://www.mysql.com/news-and-events/on-demand-webinars/
Q from Randy: Is a copy of presentation available on web? Where?
A from Zmanda : slides are available on Zmanda Network: http://network.zmanda.com/
Q from Jing: Converting database from oracle to MySQL, any limitation regards the version compatibility?
A from MySQL: We provide a free GUI migration tool that helps migrate Oracle data objects to MySQL. For a complete and very detailed …
[Read more]
I made a mistake in using the delete command in our production
environment. I had 17 million rows and I only needed to keep 3
million rows, so I issued a delete sql to erase the 15 million
rows. Bad move! Because I immediately saw how the I/O of the
machine went up very high and the delete sql caused a huge load
spike. On top of that, I had to run an optimize table command
because MySQL did not free the deleted space and this caused
another load spike.
In retrospect, I should have done the following items:
1. Instead of delete sql, I should have issued a create new table
and select the 3 million rows from the old table. This would have
been faster and it would not be necessary to run optimize
table.
2. If I have to use delete and and optimize table, I could have
copied the table to a non-production database and run the
commands there. After it has finished executing all the
processes, I can copy the new …