Showing entries 36486 to 36495 of 44823
« 10 Newer Entries | 10 Older Entries »
The Limits of Open Source

There was an article this week in InfoWeek entitled How Linux is Testing the Limits of Open Source Development which really hit home. In many ways, it's reflecting some of the issues that our much smaller opentaps Open Source ERP + CRM project is going through as well, and it made me realize that there may be a natural, self-correcting mechanism which limits the growth of open source projects.

Let me give you an example of how I think this works: Imagine a really smart developer sat down and started an open source project. She starts writing code, and pretty soon the software is useful. More and more people download it, and soon some other contributors/developers show up. The rate of development increases, and more features show up, leading (hopefully) to more developers. …

[Read more]
MySQL Master-Master Replication Manager 1.0 Released

It’s been a long time since we’ve started this project and it is time to make a checkpoint. So, I’ve decided to release final 1.0 version and make 1.X branch stable while all serious development with deep architectural changes will be done 2.X branch (trunk at this moment).

Changes from previous release:

  • Perl semaphores implementation caused huge memory leaks (mmmd_mod).
  • Now we do not send any commands to hard offline hosts with dead TCP/IP stack to prevent mointoring problems for other hosts.
  • Removed legacy StartSlave method from agent code which caused problems on some Perl versions
  • Added a few fixes to prevent non-exclusive roles from moving. This caused internal status structures to …
[Read more]
Conferences and co-presenters

I’m noticing some trends of late, as I go through the proposals for the MySQL Conference & Expo 2008.

Rails: has it lost its steam? I’d like to see some talk submissions for Ruby and Ruby on Rails users, clearly. This stuff is still hot on the web (look at Twitter, and Dopplr, for instance) and there’s lots more out there.

I’m recommending a lot of people work on talks together. I don’t know if this will happen, but we have mashups in this web 2.0 world, I don’t see why we don’t have talk mashups with 2 presenters. Having a co-presenter not only keeps your talk real, but keeps the momentum going (especially when your talk is scheduled early in the morning or after …

[Read more]
Data distribution and distribution awareness

How come performance degrade with more data nodes?
Some of you might have noticed that performance might actually drop slightly when you move from a two node cluster to a four node cluster. To understand this we need to understand how information is and tables are organized in MySQL Cluster. Moreover, I will also mention a bit on distribution awareness, a feature that can be used to minimze this performance drop in bigger configurations.

In MySQL Cluster a table divided into fragments and spread on the data nodes.
You have as many fragments (Fx) as you have data nodes (Nx).
If you have four data nodes, then a table will have four fragments:

Table T1= {F1, F2, F3, F4}

These fragments will be laid out on the data nodes as follows:

N1=F1P
N2=F2P
N3=F3P
N4=F4P

I have written FxP, where P indicates the Primary fragment and potential …

[Read more]
My Initial MySQL db is Broken, Help!

Typically a backup or dump of a MySQL server includes all of the databases available, using the -A or –all-databases options. But what of restoring, and recovering that dump?

One can simply go to the target machine, and delete everything in the data directory, right? Oops, you didn’t delete the initial MySQL database did you? How about the special “information_schema”, MySQL’s data dictionary? The other option of course is to use mysqladmin:

SQL> mysqladmin -f -u root -p drop mydatabase

But still I’ve had cases where I’ve dropped parts or all of these initial MySQL databases. So what to do if you do?

Luckily MySQL comes with a shell script to save you in just such cases. It’s called mysql_install_db and can typically be found in /usr/bin. For Oracle folks you can almost think of this like the catalog.sql which in turn runs the sql.bsq file. It is illustrative to take a look at this shell …

[Read more]
Becoming a DBA, Part I

A recent thread on SQLServerCentral.com had an individual what it took to be a successful DBA. Couple that with a RunAs Radio podcast with SQL Server MVP Brad McGehee on Being a Better DBA and that raises the question, "What does it take to become a DBA?"

I came at being a DBA from a round about route. I was first a developer, became a system administrator, went back to being a developer, and then finally became a DBA. While I primarily work directory services and architecture now, I've worked to keep my DBA skill set, because being a DBA is something that I loved doing and still love when I get a chance to dive back in full throttle. Therefore, I thought I would offer some thoughts on what I think it …

[Read more]
Hacking to make ALTER TABLE online for certain changes

Suppose you want to remove auto_increment from 100G table. No matter if it's InnoDB or MyISAM, you'd usually ALTER TABLE `huge_table` CHANGE `id` `id` int(6) NOT NULL and then wait hours for table rebuild to complete. If you're unlucky i.e. you have a lot of indexes and not too much RAM - you could end up waiting days. If you want to make this happen quick - there's another way. Not documented, but works well with both - InnoDB and MyISAM.

Now that more and more folks hit the InnoDB auto-inc scalability issue with MySQL 5.0 and older versions, employing other techniques to maintain the PK auto incremental becomes more of an issue. One of the steps here is to remove current PK auto_incremental from the table. As a rule of thumb, this usually involves altering huge InnoDB tables and huge tables take time to rebuild. …

[Read more]
Structuring the Blog Better

For a variety reasons, including personal/family concerns and workload, I've not been able to write as often as I'd like. That doesn't just include the blog, but also writing articles. It's been a long while since I've written an article for SSC. I want to get back to writing at least monthly, if not more often. One of the keys to writing well is to write every day. Therefore, I'm going to provide some structure to the blog in order to make it easier to post every weekday with something that will hopefully be useful. Here's the types of posts that should be present based on the day of the week:

  • Monday - Career Development
  • Tuesday - Tips, Tricks, and SQL Scripts
  • Wednesday - Tools, Tools, and More Tools
  • Thursday - Tips, Tricks, and SQL Scripts
[Read more]
Initial findings on EC2

Yesterday I reported that I was looking into EC2 to see how it performed as a MySQL Server. Well, I got around to running some benchmarks today. My home machine (AMD64 3000 (I think), Ubuntu 7.10, 7200RPM drive, 1G RAM) can handle almost 730 transactions/second on a basic sysbench test:

sysbench --test=oltp --mysql-table-engine=myisam --oltp-table-size=1000000 --mysql-socket=/var/run/mysqld/mysqld.sock  prepare
sysbench --num-threads=16 --max-requests=100000 --test=oltp --oltp-table-size=1000000 --mysql-socket=/var/run/mysqld/mysqld.sock --oltp-read-only run



What does EC2 (small instance) rate? 132.26 transactions/second.

I've got to say - I'm a little disappointed, since that's more than 5 times worse. I will test the other instance types over the coming days, and try and make my environment a little more controlled.

Databases are often disk i/o bound. Maybe they've …

[Read more]
PHP Comes to DC

The DC PHP Conference is right around the corner, and it looks like it's going to be great. (It's not too late to register.) Not only is this conference inexpensive ($450 for both days, $250 for one, and $150 for students), it boasts an impressive lineup of speakers.

Among the scheduled talks, I see Facebook, Digg, and Ning represented:

[Read more]
Showing entries 36486 to 36495 of 44823
« 10 Newer Entries | 10 Older Entries »