Quite a few people have chimed in on a recent discussion about PHP, MySQL, database abstraction layers, and performance. I think enough viewpoints have been covered that I don't need to comment, but one question I don't see answered is "what are the qualities of a good SQL abstraction layer?" I think it's a very interesting -- and complicated -- question. As it turns out, the term has several meanings, and I think it's important to understand them. In this article I explain one way to categorize different types of database abstraction layers, the goals for each, and some useful success criteria.
This is not about open source, but still, I found it quite inspiring. On September 17, ultramarathon runner Dean Karnazes (sounds like Onassis), will embark on the ultimate endurance feat of running 50 marathons in 50 states in 50 days. I met Karnazes last year when he was speaking at the Silicon Valley Marathon. For a guy who is setting world records, he is incredibly humble. He just happens to be able to run several hundred miles non-stop without sleep. In fact, his record is 350 miles in 80 hours. He's also won the Badwater Ultramarathon, arguably the toughest endurance run in the world: 135 miles through Death Valley over 3 mountain ranges where …
[Read more]On August 28 — i.e., in two weeks from tomorrow — the European Parliament will return from its summer vacation. You can find the EP’s calendar here: There are different color codes, and those days which have no color at all are holidays and vacation days.
While the EP is not the only EU institution, it’s clearly one of the most important ones, and its return marks the end of what is usually the slowest part of the summer season in Brussels. Upon its return, the parliament is going to take a look at patent policy again, and is in particular going to evaluate the outcome of the European Commission’s patent policy hearing that took place in Brussels on July 12. In late May, several parliamentary groups (which are, in a simplified explanation, …
[Read more]
Travelling to Auckland (NZ) today, teaching a "MySQL 5.0 for
DBAs" training course this week. I'll also be visiting
AuckLUG on Monday evening. If you would like to catch up, just
drop me a line (arjen @ you know where).
New lessons learnt at Brisbane airport...
- finally found a shop (after security that sells Double
Coat TimTams;
- don't get melts or mochas from "BLD" - expensive and
not-so-good;
- it's still a friendly & fast airport.
AirNZ still has good legspace even on their 747-400s (they also
have 777s), and my 13" MacBook fits perfectly on the tray table.
Speaking of the MacBook, they wanted to weigh my backpack and
finally it weighted in at around 6kg including a bottle of water,
a few books, etc. That's all new and good, as with my old Dell
Inspiron 8500 (big widescreen, plus its power …
Quite a few people have chimed in on a recent discussion about PHP, MySQL, database abstraction layers, and performance. I think enough viewpoints have been covered that I don’t need to comment, but one question I don’t see answered is “what are the qualities of a good SQL abstraction layer?” I think it’s a very interesting—and complicated—question. As it turns out, the term has several meanings, and I think it’s important to understand them.
Setting up MySQL replication is fairly easy. Just tell the slaves which master they need to connect to and make sure the master is writing binlogs. Ok, it is a little more complicated, but in the end it's pretty straight-forward.
If however you have large number of slaves and a rather busy master machine, the network load can become significant. This is because all statements that are written to the binlog are transferred to all the slaves. They put them into their relay logs and asynchronously process them. Each slave may decide which statements need to be executed and which can be discarded. This is especially useful in setups where there are tables modified on the slaves that should not be replicated.
Use case
In a production scenario we have up to 35 slaves configured against a single master. The master does "full" binlogs, i. e. no exceptions are made. This is done on purpose, because the binlogs are backed up for …
[Read more]
mysql> CREATE TABLE `a` (
-> `a` text
-> ) ENGINE=TABLE_FUNCTIONS DEFAULT CHARSET=latin1
CONNECTION='/ usr/lib/libhello.so' ;
Query OK, 0 rows affected (0.04 sec)
mysql> select * from a;
+--------------+
| a |
+--------------+
| Hello World! |
| Hello World! |
+--------------+
2 rows in set (0.02 sec)
mysql>
This is one in a series of articles on how to use innotop, a MySQL and InnoDB monitor. In this
article I'll explain how innotop can make it much easier to
collect useful information from SHOW STATUS
and
SHOW VARIABLES
into one place. There are three modes
in innotop that do this in different ways, so one of them may
meet your needs.
Scaling Patterns This is a translation of a
german language article I wrote two weeks ago
for my german language blog.
In 2004, when I was still working for web.de, I gave a little talk on Scaleout on Linuxtag. Even back then one major message of the talk was "Every read
problem is a cache problem" and "Every write problem is a problem
of distribution and batching":
To scale, you have to partition your application into smaller
subsystems and …
I’ve recently completed a contract and I’ve been in discussions with agents and other employers for further work. Having had one of the worse experiences in my previous work, I’ve been extra careful to ensure what I’m told at the interview/meeting stage is indeed true and accurate (in my last case it was not). I’ve also not made the assumption that an organisation that is dependent on software has placed a certain level of value on what’s in place. (in my last case I did, simply due to the size of the organisation and volume of business).
So, when being asked by people what I’m seeking, outside of the technical skills and compendencies, I’m seeking an organisation that places value on it’s existing software, it’s software quality, it’s software improvement and most importantly it’s software developers. It was unfortunate that for an organisation that lived in software, and would not survive long (especially at …
[Read more]