Showing entries 21903 to 21912 of 44045
« 10 Newer Entries | 10 Older Entries »
Call for MySQL Speakers Extended

The Independent Oracle Users Group, a dolphin-friendly database community, is offering four days of sessions dedicated to MySQL at COLLABORATE 11, and we want you to present! Bring your brainpower to the premier, user-driven MySQL event of 2011 - submit your abstract today. The deadline has been specially extended for MySQL speakers until October 11, but don’t wait to submit – get your session entered today! Learn more at http://collaborate11.ioug.org/mysql.

What makes a good MySQL index? Part 2: Cardinality

edit: added “Low cardinality isn’t always bad” section after Morgan’s comment

As we’ve seen already column size is important for indexes. Cardinality is really important too, it’s the uniqueness of the values included in the index.

Indexes are used by MySQL (and in any RDBMS) to help find rows quickly. We want to make it as easy as possible for MySQL to find the relevant rows, the more precise or specific we are the less the number of rows MySQL has to fetch.

Example Table

For this post I’ve created a table with some dummy data in it. Here’s the SQL I used to create it (in case you want to) which was generated with this hack script.

The table is fairly …

[Read more]
5 years and counting

Yesterday marked my 5th anniversary since I signed on the dotted line, and starting working with MySQL AB! I celebrated yesterday with a BBQ with the family, and a few vodka shots for old times sake. Interestingly, it was also the 5 year anniversary of the first 5.0 RC being announced.

Since that time I’ve transferred through to Sun, and now find my home to be Oracle (funnily, the user community that I left to join MySQL).

I’ve met a huge number of fantastically talented people, made a lot of new friends, seen a lot of new colleagues come on board as we expanded so quickly, and sadly seen a number of those colleagues leave to go onwards (and pretty much in all cases, upwards) within the IT world. Happily, a large number remain, and continue to amaze me with the work they have been doing, and focus that they have.

I’ve …

[Read more]
Database speed tests (mysql and postgresql) - part 1

There has been major changes in mysql and postgres over a couple of years. Mysql has been focusing on improving and optimizing innodb. Postgres on the other hand has been focusing on database replication and hot standby.

Recently postgres came out with version 9.0 which has built-in replication and hot standby - the two most requested feature in postgresql. Earlier people used to shy away from

Oracle OpenWorld 2010 Wrap-Up – from an #ODTUG Perspective

Oracle OpenWorld 2010 is over!  While I had to leave early Tuesday (the paying job takes precedence over the volunteer job), there are many things to talk about that happened while I was at OpenWorld this year.  I’ll attempt to cover a few of them in this posting.

Saturday Night, the ODTUG Board and YCC staff got together to discuss our plans and obligations for the week.  With Sunday User Forum, MySQL Sunday, and Oracle Develop to attend to during the week, along with many other meetings, this was an important start to the week.  It was nice for everyone to see everyone again, and to recharge and energize for the tasks ahead during the week.  Below is a picture of fellow Board Members Barbara Morris and Monty Latiolais at the dinner at Annabelle’s Bar and Bistro.

Saturday Evening Dinner before OpenWorld 2010

Sunday morning, I had a …

[Read more]
Some MySQL projects I think are cool - OpenQuery Graph Engine (OQG)

This project was announced a year or so ago by Antony Curtis who used to work for MySQL AB. Having met Antony a few times I was intrigued to see what he was up to. The quote on the OpenQuery website describes it well :
The Open Query GRAPH engine (OQGRAPH) is a computation engine allowing hierarchies and more complex graph structures to be handled in a relational fashion. In a nutshell, tree structures and friend-of-a-friend style searches can now be done using standard SQL syntax, and results joined onto other tables.
That sounds cool, and it's the first time I've heard of a MySQL 'Computation engine' plugin. Delving further into the manual gives some insight, and there's some unexpected twists there :

  • OQG is a storage engine, but data stored is not persistent w.r.t. server crashes.
[Read more]
Some MySQL projects I think are cool - Spider Storage Engine

One thing that has puzzled me about MySQL Server is that it became famous for sharded scale-out deployments in well known web sites and yet has no visible support for such deployments. The MySQL killer feature for some time has been built-in asynchronous replication and gigabytes of blogs have been written about how to setup, use, debug and optimise replication, but when it comes to 'sharding' there is nothing built in. Perhaps to have attempted to implement something would have artificially constrained user's imaginations, whereas having no support at all has allowed 1,000 solutions to sprout? Perhaps there just wasn't MySQL developer bandwidth available, or perhaps it just wasn't the best use of the available time. In any case, it remains unclaimed territory to this day.

On first hearing of the Federated storage engine some years ago, …

[Read more]
Some MySQL projects I think are cool - Flexviews

Most of the time we think of SQL queries as being executed at a point in time and generating a single definitive result, but huge efficiency gains are available when data changes are tracked and derived views are partially updated as needed rather than being fully recomputed periodically. MySQL has support for views on tables, but there is currently no support for materialized views. While thinking about this topic I decided to have another look at Justin Swanhart's Flexviews tool and it's definitely a cool MySQL based project.

Flexviews is an open source set of non-intrusive addons to MySQL enabling materialized views to be defined and maintained as the underlying tables are changed. If you're not sure what a materialized view is or why they can be useful then I recommend reading the intro on the Flexviews site. I was particularly impressed by the documented support for …

[Read more]
Let’s Build a Relational Database for the Cloud

As you might have guessed from my last couple blog posts, I’ve been experimenting with a few languages and libraries for a new project. I’ve finally gotten things far enough along to the point where I’d like to start getting other developers and potential users involved. I’m introducing SlackDB, an open source project that combines the functionality of relational databases with the ideas behind eventually consistent, shared-nothing data stores to provide a new database to support new and existing web applications in the cloud (enough buzzwords in there?). This is an idea I wrote about a while ago and recently I started putting a lot of night and weekend time into it.

It is still very early on in the development process, but the ideas behind it are starting to solidify and a fair amount of code is already written. It’s not all …

[Read more]
InnoDB performance: 5.5 versus 5.1 for concurrent writes and an IO bound server

I ran sysbench for a simple read-write workload on a 16-core x86 server using MySQL 5.1 and was disappointed by the results. I then tried 5.5 and was thrilled by the results. I tested MySQL 5.1.50 with the InnoDB plugin and the Facebook patch. That was compared with MySQL 5.5.6-rc with InnoDB.

 

At first I did not test for 5.1.50 without the Facebook patch. Eventually I tested for 5.1.47 and then 5.1.50 without the patch and results were very different (some better, some worse and the worst-case behavior in the patch is really bad). Finally I tested 5.1.47 with the patch and performance is good there. So something went wrong while porting the patch to 5.1.50 and we must fix it.

 

The benchmark used 8 sysbench tables with 72M rows each. The primary key indexes for all tables were 120GB and a 4GB InnoDB buffer pool was used. 8 instances of sysbench were run where each instance used between 1 and 128 …

[Read more]
Showing entries 21903 to 21912 of 44045
« 10 Newer Entries | 10 Older Entries »