SQL blind inserts are a common mistake, but they're easily avoided. This article explains what blind inserts are and how to avoid them, as well as dispelling a common misconception about how to avoid them.
Kris and I sat together last Tuesday to discuss the MySQL
Community in Belgium. Apparently, there is not really something
active their. So, it's about time to do something about
that.
We organizing a user meeting at the X-Tend office in Kontich 29th
of August 2006. This is a Tuesday, so no excuse not to coming
around!
Thanks to Kris for opening the office for this. I hope I'll be
able to entertain people with lots of chats!
Sign up here http://upcoming.org/event/90055.
Geert and I decided it was time for a MySQL Usergroup in Belgium , actually mainly a meeting so we set a date and I`m opening our office for the first meeting.
More info: First MySQL Usergroup Belgium at X-Tend (Tuesday, August 29, 2006)
activeCollab is an easy to use, web based, open source collaboration and project management tool. It's basically the OSS version of Basecamp, a tool I like but would love to customize. I have a developer installing activeCollab right now...it's all PHP/MySQL so should be straight ahead development.
Also today I saw Coghead, which offers a very interesting drag and drop project management as a hosted tool. Screenshots are available, but no demo...the website contains arguably the best marketing fluff/BS web copy I have read in a long time. I love when Web 2.0 empowers me.
ADVERTISEMENT
…
Hello,
Looks like Martin Skold's article on MySQL Cluster's
implementation of ALTER TABLE is finally up.
Check it out at: http://dev.mysql.com/tech-resources/articles/mysql-cluster-50.html
Also, looks like the body of my last post on the NDB API
documentation got truncated, here it is again...
In the event you missed the announcement on one of the MySQL
distribution lists from Stephan...
As part of the effort of making MySQL Cluster a more mainstream
product, it's been on our agenda for a very long time to rewrite
the NDB API documentation so that it becomes usable by mere
mortals. It took nearly three months to do this, because the new
documentation is almost 300 pages long! The MySQL NDB API Guide
covers two low-level APIs for writing applications that work with
MySQL's NDB …
Brian Aker recently published good write up about using MySQL replication. The piece I find missing however is good description of warning about limits of this approach as well as things you need to watch out for. You can call me person with negative mind but I tend to think about limits as well. So what would be my list of limits and watch outs in this case ?
- Limited write scaling. As Brian writes this works best for read intensive envinronments. Write scaling however can be real problem. Not moderate increase of write ratio can dramatically reduce performance but you also need to watch out for slave being able to keep up at all. Remember writes to slave are serialized so if you master happens to be 8 core system with 20 hard drives you may be in trouble even if writes only consume 10% of resources as almost only one core and only one disk will be …
[Read more]Igor is doing great work on moving forward the XML based database schema format originally developed by Manuel Lemos as part of Metabase that is used in MDB2_Schema. The idea is to add the ability to also handle UPDATE and DELETE statement next to the currently supported CREATE, DROP, ALTER and INSERT statements. This format is even supported by DBDesigner4 and the DatabaseSchema ez component. For the uninitiated if you: The idea behind this schema format is to make it possible to define a single database schema that can be used to create, alter and initialize databases in any number of RDBMS. For example currently MDB2_Schema supports MySQL, PostGreSQL, Oracle, SQLite, MS SQL Server, Interbase/Firebird.
While Igor and I were discussing things we discovered that we …
[Read more]
If there is a common method of scaling with MySQL databases it is
the
Read Replication Cluster solution.
Most websites start out with a single database and grow from
there.
If the site's content is being generated from their database
then
they will eventually hit a wall with reads from the database.
Tuning
and hardware will buy you some growth but in the end disks spin
only
so quickly. Luckily most websites are predominantly read
intensive
and for this reason replication will solve scaling problems for
many
people. Replication is a means by which MySQL sends updates of
one
database to one or more databases which will act as a slave.
These
changes are atomic, which means the changes are applied in full.
No
row will ever be partially updated, and no transaction will be
seen
on the slave that did not commit on the master
Make a change in the …
It is always nice to be able to say a system "performs well", is
very "reliable" or is "scalable". But what do these terms
actually mean?
One of the primary goals of my research on SQLbusRT is finding
formulas which can predict the performance, reliability and
scalability of the system under development, looking at the
scenario it is implemented in.
Ofcourse saying "good performance", "very reliable" and "yes it
is scalable" does not suffice. The formulas should provide a
meaningful outcome, which is comparable to other outcomes.
I might not be clear to everyone. Let me give an example, using
something we always like to talk about: the weather.
We can say the weather is good or bad today, but that is just a
personal opinion. If we want to compare todays weather with the
weather of tomorrow for instance, we need numbers. We can give
useful information on the weather by giving:
I've never been all that interested in solving small problems.
Small problems with scaling are resolved with single indexes,
upgrades to hardware, or simply creating a bigger pipe.
When the measure of the Internet was a T-1, you could flood the
network with the average 486. At the time I watched people buy
hardware in the hundred's of thousands, and sometimes more, which
never went used. Today's hardware is overkill for a lot of
applications, so the first step in scaling is often tuning the
hardware that you have already purchased. Make use of what you
already have.
The "Slashdot Effect" is a perfect example of what is normally a
small problem. What is the Slashdot Effect? Point tens of
thousands of eyeballs at a website and watch it crash. The root
cause of this? Most of the time it is because the site operator
had their Apache max connections set to some ridiculous number.
Users would bring the site down because there …