MySQL Cluster (aka NDB) ist eine storage engine für den MySQL Server. Im Gegensatz zu den anderen storage engines wie MyISAM oder InnoDB, ist NDB nicht in den MySQL Server gelinkt, sondern läuft als separater Prozeß auf i.d.R. mehreren separaten Maschinen. Das Handlerton im MySQL Server enthält für NDB lediglich Adaptierungsfunktionen und spricht mit den NDB-Prozessen über das Netzwerk.
Der offizielle MySQL-Drink. Und so wird es gemacht:
"Salmiakki - der offizielle MySQL Drink"
vollständig lesen
Eine relativ typische Aufgabe liegt diese Woche auf meinem Tisch:
Ein Kunde hat eine relativ schnell getaktete Abrechnungsaufgabe,
bei der auf Benutzerkonten Guthaben eingezahlt wird und diese
dann für Inanspruchnahme von Diensten aufgebraucht werden.
Dies ist eine typische OLTP Aufgabe, bei der wir viele simple
Writes mit einem hohen Parallelitätsgrad in eine Datenbank
bekommen. Die Datenbank ist klein genug, daß sie komplett ins RAM
paßt, wir haben mindestens eine 1:1 Ratio von Writes zu Reads
oder sogar mehr Writes als Reads und alle Writes müssen immer
komplett ACID sein. Entsprechend läuft die Datenbank komplett mit
InnoDB, mit sync_binlog und mit innodb_flush_log_at_trx_commit
=1.
"Günstige OLTP Hardware" vollständig lesen
Links: Strukturen im Speicher, Rechts: Strukturen auf Disk.
Oben: Log-Strukturen, Unten: Tablespace-Strukturen.
"Die InnoDB Storage Engine: Konfiguration"
vollständig lesen
Die Storage Engine InnoDB ist eine Storage Engine, die
ACID-konform betrieben werden kann, Transaktionen beherrscht und
Foreign Key Constraints prüfen kann. Sie ist geeignet für alle
Anwendungen, die Online Transaction Processing machen oder aus
anderen Gründen eine hohe Rate von paralellen Schreibzugriffen
haben.
"Die InnoDB Storage Engine" vollständig lesen
Monty hat heute MySQL 5.1-maria als Bitkeeper Tree
veröffentlicht. Binaries kommen später. Q: What is goal of Maria
in current (MySQL 5.1-Maria) release?
A: To make a crash-safe alternative to MyISAM. That is, on crash,
Maria will on mysqld restart recover all tables to the state at
the start of a statement or at the start of a previous LOCK
TABLES.
Aus irgendeinem Grund werden die Firmen, für die ich arbeite
verkauft, kaum 2 Jahre nachdem ich da angefangen habe. Das war
bei web.de so und jetzt passiert es gerade wieder: Sun hat meinen Arbeitgeber für eine runde Milliarde
Dollar gekauft.
Was ich davon halten soll, weiß ich noch nicht - das wird sich
erst ein den kommenden neun Monaten zeigen. Die nächsten 3 Monate
werden meiner Erwartung nach die Anwälte erst einmal die letzten
Details auskämpfen, und dann schaue ich mir den Laden mal an. Im
September oder so erzähle ich Euch dann mal, wie das so ist.
Der Fotodienst Flickr wurde vor 5 Jahren in Betrieb genommen. Am
29. Dezember wurde das Foto 2147483647 auf Flickr hochgeladen. Diese
Zahl ist 2 hoch 31 minus 1, also MAXINT für einen 32 Bit Signed
Integer. Dies hat zu einem Integer Overflow
in einer Bibliothek geführt, die Signed Integer als ID für
Flickr-Bilder verwendet hat.
Hier sind ein paar simple Abfragen von INFORMATION_SCHEMA, mit
denen man offensichtliche Designdummheiten bei Datenbankschemata
finden kann:
CODE:mysql> select table_schema, table_name, column_name, column_type
from information_schema.columns
where table_schema not in ("information_schema", "mysql") …
Jemand möchte ein LDAP-Backend für Serendipity entwickeln, also nicht S9Y-User mit LDAP authentisieren, sondern S9Y-Artikel in LDAP speichern. In meinem MySQL-Blog in englischer Sprache erkläre, ich wieso das eine doofe Idee ist: LDAP is not relational.