Showing entries 39306 to 39315 of 44055
« 10 Newer Entries | 10 Older Entries »
MySQL Cluster and the Death of Secondary Indexes

Relational databases use indexes to speed up their performance usually due to the fact that their underlying storage is inherently slow (which has historically meant disk).

I've often created secondary indexes with MyISAM which aren't used in day-to-day operation but that are needed for debugging or exploration of the database.

For example, if you were to have a USER table with a handle (their account name) and an ID (the primary key) you could index by the handle but usually these are long strings and take up a good amount of CPU time to build the index and memory to cache the index.

It dawned on me the other day that this isn't necessary with MySQL Cluster (NDB). With MyISAM you need to use an index because a full table scan might take 10-20 minutes and hold back any INSERTs in the process which could become a big problem.

It also has secondary problems including confusing the OS level page cache and …

[Read more]
IN/=ANY Subqueries NULL woes

NULL values are suprisingly hazardous for MySQL's way of optimizing IN subqueries. MySQL takes the '=' from '=ANY' and tries to push it down into the subquery, essentially changing IN subquery into EXISTS subquery. That is, a subquery like

outer_expr IN (SELECT inner_expr FROM ... WHERE subq_where)

is converted to:

EXISTS (SELECT 1 FROM ... WHERE subq_where AND outer_expr=inner_expr)

and then MySQL can use the pushed-down equality to limit number of rows it has to look through when running the subquery. This "pushdown" works as long as outer_expr and inner_expr can't be NULL or you don't care whether subquery result is NULL or FALSE (MySQL figures that you don't care if the subquery is a part of OR or AND expression in the WHERE clause).When you start caring about producing correct NULL or FALSE results, problems start coming from left and right, literally:

NULL problem in the right part

[Read more]
MySQL Camp 2006

I recently attended the MySQL Camp 2006 un-conference at Google's headquarters in Mountain View, California. This article is a high-level overview of the event. If you didn't go, you really missed something good. Go to the next one!

mysqlreport v2.7 fixed

mysqlreport v2.7a has been released. It only fixes one bug: –host was completely ignored if a socket was available. Thanks to Sam for pointing this out to me.

IPV4 Field Type, MySQL Camp Example

Any bets on whether or not I remember to commit this patch?

For the record its the forth time I have written this field type (I've also done MACADDR and UUID before as well).

mysql> create table foo (a ipv4);
Query OK, 0 rows affected (0.02 sec)

mysql> show create table foo;
+------- +----------------------------------------------------------------------- --------------+
| Table | Create Table |
+------- +----------------------------------------------------------------------- --------------+
| foo | CREATE TABLE `foo` (
`a` ipv4 DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1 |
+------- +----------------------------------------------------------------------- --------------+
1 row in set (0.00 sec)


mysql> insert into foo VALUES ("10.0.2.1");
Query OK, 1 row affected (0.00 sec)

[Read more]
ARCHIVE, PeterZ's Post

I noticed on Monday PeterZ's post:
http://www.mysqlperformanceblog.com/2006/11/12/trying-archive-storage-engine/

I thought I would take a look for myself at what he found. From what I can tell he was working with accesslogs from Apache, so I did the same :)

So first result is MyISAM:

mysql> show table status \G
*************************** 1. row ***************************
Name: accesslog
Engine: MyISAM
Version: 7
Row_format: Dynamic
Rows: 3885977
Avg_row_length: 122
Data_length: 476739780
Max_data_length: 4294967295
Index_length: 102916096
Data_free: 0
Auto_increment: 3885978
Create_time: 2004-06-28 19:01:13
Update_time: 2006-11-12 22:59:46
Check_time: 2006-11-12 23:11:58

[Read more]
Beginning MYSQL 5 with Visual Studio.NET 2005

This tutorial gives you a practical introduction to MySQL 5 Application Development using the MYSQL Connector for .NET with Microsoft Visual Studio.NET 2005 and how to build a simple Database Application using VC# and MySQL 5.

SugarCRM - Introducing Sugar FastStack, Accelerated On-Site Deployments for SugarCRM on Apache, PHP and MySQL

SugarCRM Inc., the world's leading provider of commercial open source customer relationship management (CRM) software, today announced the availability of Sugar FastStack, a software support and delivery service that provides a fast and simple way to install a complete open source software solution, including Sugar software, the Apache Web Server, PHP and the MySQL database.

The Falcon!

Some early notes by Brian Aker on Falcon as discussed at the MySQL Camp.

Falcon is a transactional engine MySQL will be introducing. The first discussions were held about 3 years ago with Ann Harrison and about 1 1/2 years ago, MySQL started taking seriously the possibilities.

Falcon is not an InnoDB replacement. It’s a different way of looking at the problem of how it looks at and manages transactions, and how it’s designed. It flips around the way data is stored. Some points:

  • It uses as much memory as possible, like Oracle SGA or InnoDB pool.
  • It has a row cache not a page cache for more optimal memory use.
  • No locking at all. Jim doesn’t believe in it for concurrency control. It has total versioning.
  • Falcon has to keep all changes in memory, so not great for user transactions that may take longer
[Read more]
Where Have I Been?

If you've read this blog in the past, you may have wondered where I've been all these past five months. In truth, I often wonder myself--the last five months have gone by like a blur, as we've been doing a tremendous amount of work for both the opentaps open source ERP + CRM project and for the soon-to-graduate-from-incubation Apache OFBiz project.

Happily, all is for naught. opentaps and OFBiz have both come a long way in these past months, with better features and stability and more users and contributors.

The down-and-dirty work of making an open source ERP system work for real users is not necessarily glamorous, but it's definitely given me a better perspective on the how and why of open source ERP. Some of it falls in line with what we had expected, but some of it were quite surprising--in a good way. I hope to …

[Read more]
Showing entries 39306 to 39315 of 44055
« 10 Newer Entries | 10 Older Entries »