Showing entries 19973 to 19982 of 44108
« 10 Newer Entries | 10 Older Entries »
Percona welcomes Stewart Smith

Percona is pleased to welcome Stewart Smith to the team. Stewart does not need an extended introduction for MySQL Community, but just in case: Stewart has a long history with both the MySQL and Drizzle code bases. He’s been one of the core Drizzle developers since the start of the project (working on Drizzle for Sun and then Rackspace), he maintains HailDB and previously worked for MySQL (and then Sun) on MySQL Cluster (NDB).

Stewart joins Percona to lead our development team and will take lead role in both Percona Server and Percona XtraBackup products. You can certainly expect more mutual exchange of features and ideas between Drizzle, …

[Read more]
Dynamic Cursor Fix

Permalink: http://bit.ly/1pl6kz5



This is the workaround to create dynamic cursors in MySQL and is meant to be used together with the general purpose dynamic cursor stored procedure.

Increase the compared value of colValN in the WHILE-DO construct to the maximum number of columns your dynamic cursor will be needing. This fixes MySQL's limitation on cursors by providing the dynamic cursor with consistent column names that are independent of the underlying SELECT statement and also provide a predictable number of columns.

The final result is that the temporarily created table will be constant, while the records that the cursor will traverse will remain dynamic. The code in …

[Read more]
Installing GearmanD on Amazon's EC2 Linux AMI Small Instance

Linux AMI is very close to Centos/RedHat but its Amazon's own distro. Here are some quick steps on installing Gearmand on your system. I am currently using it to distribute jobs across many instances, to run asynchronously or synchronously where the Apache CPU isn't blocked on long running procs, like fetching data from a website realtime, massaging the data and returning it to the browser or resizing images.


#
# put the stuff in /var/tmp
#

cd /var/tmp;

#
# get the source
#
wget http://launchpad.net/gearmand/trunk/0.20/+download/gearmand-0.20.tar.gz

#
# setup libs required for the source to complie
#

yum install -y libevent-devel.i386
yum install -y gcc-c++.i386
yum instal -y boost-devel.i386 // C++ libs
yum install -y libuuid-devel.i686 -- do not install the i386 version, it puts uuid.h …

[Read more]
Finding an optimal balance of I/O, CPU, and RAM for MySQL

For a long time I’ve wanted to know how MySQL scales as you add more memory to the server. Vadim recently benchmarked the effects of increasing memory and CPU core count. He looked for a balance between utilizing the hardware as much as possible, limiting the system complexity, and lowering the price-to-performance ratio.

The outcome of the research, which was sponsored by Virident, is that as you add CPUs and increase memory size, MySQL doesn’t scale as well as we would like, and solid-state storage — specifically, the Virident tachIOn drive — has more bandwidth than MySQL can fully utilize at present. Therefore, to decrease the price-to-performance ratio and increase the utilization of the tachIOn drive, Vadim sharded the database into smaller instances and colocated them on the same machine. It’s not a new approach, but to date I’m not aware of anyone measuring the different configurations the way Vadim has done.

You …

[Read more]
Using any general purpose computer as a special purpose SIMD computer

Often times, from a computing perspective, one must run a function on a large amount of input. Often times, the same function must be run on many pieces of input, and this is a very expensive process unless the work can be done in parallel.

Shard-Query introduces set based processing, which on the surface appears to be similar to other technologies on the market today. However, the scaling features of Shard-Query are just a side effect of the fact that it operates on sets in parallel. Any set can be operated on to any arbitrary degree of parallelism up to, and including, the cardinality of the set.
Given that:

  1. It is often possible to arbitrarily transform one type of expression into a different, but compatible type for computational purposes as long as the conversion is bidirectional
  2. An range operation over a set of integers or dates can be transformed into one or more discrete sub-ranges
  3. Any …
[Read more]
Working around the broken MySQL documentation search

Since the Oracle take-over of Sun, the documentation search for the MySQL manual has gone downhill fast.  There was a point in time where it was downright broken, though it does appear to be performing better now.  However, it seems to have lost the functionality of being able to narrow a search by mysql version.  

For example, doing a quick search on ‘partition key’ doesn’t really get me what I want, I get references to 5.6 and 5.5, but I really want 5.1.  

http://search.oracle.com/search/search?q=key+partitioning&group=MySQL

I’m also seeing links to stuff outside the documentation, like this guy: http://www.mysql.com/products/enterprise/partitioning.html

All of this isn’t horrible, but back when the search was really broken, I moved to what think is a much cleaner …

[Read more]
MySQL Certification

According to the Oracle website the following certifications are available for MySQL:

There were two new versions released since MySQL 5.0. MySQL 5.0 was released in …

[Read more]
Log Buffer #220, A Carnival of the Vanities for DBAs

When big news is released, the world of modern information shakes – and nowhere is this more visible than with the blogs. Log Buffer is the ideal joint for the shakers and movers of the blogosphere. This edition Log Buffer #220 sheds a spotlight on those hot spots.

Oracle:

Gary Myers blogs about the encouraging women in information technology and mentioned Pythian’s own Gwen Shapira.

Dom Brooks is getting a bit tired of the number of bugs in 11gR2 listed as “Fixed in 12.1″.

Tim Hall is …

[Read more]
What kind of High Availability do you need?

Henrik just wrote a good article on different ways of achieving high availability with MySQL. I was going to respond in the comments, but decided it is better not to post such a long comment there.

One of the questions I think is useful to ask is what kind of high availability is desired. It is quite possible for a group of several people to stand in a hallway and talk about high availability, all of them apparently discussing the same thing but really talking about very different things.

Henrik says “At MySQL/Sun we recommended against asynchronous replication as a HA solution so that was the end of it as far as MMM was concerned. Instead we recommended DRBD, shared disk or MySQL Cluster based solutions.” Notice that all of those are synchronous technologies (at least, the way MySQL recommended them to be configured), generally …

[Read more]
A General Purpose Dynamic Cursor - Part 3 of 3

Permalink: http://bit.ly/1jxurF0



See part 1 for the rationale behind the code and part 2 to understand limitations faced by cursors in MySQL.

The code snippet below shows an example that performs an action with the cursor data as well as a good way to debug the stored procedure. This iteration also works around MySQL's cursor problem mentioned in part 2 by calling the dynamic cursor fix stored …

[Read more]
Showing entries 19973 to 19982 of 44108
« 10 Newer Entries | 10 Older Entries »