Dienstag Juli 14, 2009

Links 20090713 - Python, Django, MySQL, Pinax, CouchDB

Open Web Tools Directory - Eine Seite für Webentwickler auf der div. Entwicklungstools bzw. deren Webseiten etwas aussergewöhnlich dargestellt werden und ein Beweis, das man dafür nicht unbedingt Flash braucht.
mysqlreport - Ein wichtiges Tool für MySQL Admins. Es wertet div. Status Variablen aus und kann so z.B. Cache/Hit-Ratios für den Buffercache usw. berechnen. Damit bekommt man sehr schnell einen Überblick, ob Variablen event. falsch eingestellt sind.
CouchDB - CouchDB ist keine relationale DB sondern speicher einfach nur Dokumente auf die per RESTful HTTP API zugegriffen wird. Die DB kann auch über mehrere Rechner repliziert werden.
Pinax - Pinax baut auf dem Python Framework Django auf und stellt div. Applikationen zur Verfügung. Ursprünglich für eine Social Network Site entwickelt, enthält es entsprechend viele Apps aus dem Bereich. Siehe dazu auch: Create a new social networking site in few hours using pinax platform (django)
Ein Django Fan oder warum Django benutzen: One Laptop Battery Later And I'm A Django Fan

Montag Juli 06, 2009

PostgreSQL-Replikation mit Londiste und SkyTools - Teil 1

Warum SkyTools / Londiste? Ich war auf der Suche nach einer Replikationslösung, die mir einfach die Daten von einer Master-DB auf eine Slave-DB kopiert. Die Slave-DB ist read-only. Man muss grundsätzlich vorwegnehmen, das es unter Postgres leider keinen Replikationsmechanismus gibt, wie ihn die MySQL hat. Dort werden die Transaktionslogs auf dem Slave nachgefahren. D.h. das wirklich alle Statements auch auf dem Slave ausgeführt werden inkl. aller DDL-Statements (also sowas wie CREATE TABLE). Das ist bei (fast) keiner Replikationslösung, die es unter Postgres gibt, der Fall. Ich vermute mal, das das PGCluster macht, welcher auch Multimaster-Replikation unterstützt. Zu dieser Lösung habe ich aber kein Vertrauen, da im Supportforum keiner der Entwickler antwortet. Ausserdem ist der PGCluster oder auch PGCluster-II (wird wohl eh nie erscheinen) immer eine speziell angepasste Version von Postgres und hängt der Entwicklung immer hinterher (und aktuell schon ziemlich...). Ich mag keine so reingeschusterten Sachen. Dann gibt es noch den CyberCluster, der in eine ähnliche Kategorie fällt und auf PGCluster aufbaut, aber auch so seine Probleme hat, wie ich mal auf der Postgres-Mailingliste erfahren habe.

Dann gibt es noch Tools, die soz. Statements replizieren auf zwei oder mehrere Datenbanken und wie ein vorgeschalteter Proxy arbeiten, mit dem sich die Clients verbinden. pgpool-II gehört da dazu. Aber was mach ich, wenn eine Node ausfällt? Die Daten bei dieser Art Replikation müssen zwangsläufig auseinander laufen, wenn eine DB ausfällt. Eine Antwort darauf gibt Gerd Koenig in pgpool-II for beginners (PDF). Das ist an sich schon mal nicht schlecht, aber diese Methode benötigt eigentlich fast schon ein komplettes Recovery der DB, damit die Datenbanken wieder konistent werden.

Dann gibt's noch Bucardo. Da ist zwar der Entwickler sehr aktiv, aber mir gefällt das dahinterliegende Konzept gar nicht, mit rsync irgendwelche Daten durch die Gegend zu kopieren. Prinzipiell handelt es sich hierbei um eine Multi-Master-Replikation.

Weiterhin hätten wir noch den Mammoth Replicator. Der war mal kommerziell und ist jetzt OpenSource. Hier kann man auch Support von Enterprise DB kaufen. Bin ich aber auch nicht so wirklich überzeugt von dem Konzept.

Bleiben grob noch zwei Tools: Slony-I und Londiste.

Slony-I ist schon irgendwie das Schweizer Taschenmesser und Urgestein unter den Replikationslösungen - nur ungleich komplizierter zu bedienen. Und das war für mich dann auch der Grund, es mit Londiste/SkyTools zu versuchen, welches die Skype-Entwickler als OpenSource veröffentlich haben und das teilweise in Python geschrieben ist - was gleich noch viel mehr für die Lösung spricht ;-)

Hier mal eine Übersicht über die wichtigsten Links bezügl. Londiste/SkyTools:

SkyTools Download:
Londiste ist ein Teil der SkyTools. Version 2.1.9 ist gerade aktuell. Diese Version kann man sich auf pgFoundry downloaden. Da ich aber einen Teil der Funktionalität von Version 3 brauche, lade ich mir das Source-Paket (http://pgfoundry.org/pipermail/skytools-users/2009-April/001029.html) runter, welches Marko Kreen in einem Posting der SkyTools-Mailingliste erwähnt hat. Version 3 ist aktuell noch Alpha - wobei ich mir ziemlich sicher bin, das das Skye intern schon länger im Einsatz ist und sicherlich weit weniger Alpha ist, als so manches andere Prgramm ;-) Bei mir läuft das jetzt auf jeden Fall schon mal seit 3 Monaten ganz gut durch.

SkyTools @ PostgreSQL Wiki
http://wiki.postgresql.org/wiki/SkyTools

Londiste Tutorial (Version 2)
http://pgsql.tapoueh.org/site/html/londiste/londiste.html

SkyTools Users Archives Mailingliste
http://pgfoundry.org/pipermail/skytools-users/

Manpage für londiste (Version 2)
http://manpages.ubuntu.com/manpages/jaunty/man1/londiste.1.html

Whats you favourite PostgreSQL Replication Tool:
1. Slony-I
2. pgpool2
3. londiste
http://www.postgresql.org/community/survey.61

PostgreSQL Replication using Slony-I
http://jayant7k.blogspot.com/2008/11/postgresql-replication-using-slony-i.html

Database management tools from Skype: WAL shipping, queueing, replication. The tools are named walmgr, PgQ and Londiste, respectively
http://pgfoundry.org/projects/skytools/

Und in Teil 2 erklär ich dann, wie ich es eingerichtet habe...

Dienstag Juni 23, 2009

Red Hot Chilli Pipers - Duddelsack mal anders

Also wer auf schottische Piper steht, der sollte sich unbedingt mal diese Jungs hier antun. Ich könnte das den ganzen Tag anhören ;-) Das ist schon ziemlich cool, welchen Sound die auf den Pipes durchpusten. Smoke on the water, Thunderstruck von ACDC, We will rock you von Queen, usw. spielen die Jungs einfach grandios! Hammersound!


<A HREF="http://ws.amazon.de/widgets/q?ServiceVersion=20070822&MarketPlace=DE&ID=V20070822%2FDE%2Ftauceti%2F8014%2Fb63a2b3d-3d35-4d9c-816c-125d10a98624&Operation=NoScript">Amazon.de Widgets</A>


Montag Juni 08, 2009

Links 20090607 - Amazon EC2 und S3, Karesansui

Karesansui Project - Eine OpenSource Virtualization Management Applikation basierend auf Xen und CentOS 5.3. Das Ganze kann man über den Webbrowser bedienen.
SkyNet Lives! (aka EC2 @ SmugMug) - Der Artikel ist noch vom letzten Jahr, aber trotzdem interessant. Das zeigt doch ganz gut, was mit Amazons Cloud (EC2 und S3 Storage) möglich ist.

Sonntag Juni 07, 2009

Links 20090606 - openID, Content Analysis, Bug Tracker, Netzstatistik

Identity Management: Authentifizierungsdienste mit OpenID
Einführung in die OpenID-Java-Bibliothek openid4java
Apache Tika: Content Analysis Toolkit - Das ist ein ganz interessantes Unterprojekt von Apache Lucene. Man kann damit aus vielen Formaten (z.B. die Microsoft Office Dokument, MP3, Wave, gz, zip, HTML, div. Bilderformate, OpenDocument, RTF, PDF, usw.) entweder Metainformationen extrahieren oder die Dokumente in strukturierte Formate wie XML, usw bringen. Ganz praktisch für eine eigene Suchmaschine ;-)
Roundup Issue Tracker - Bug Tracking und TODO Management inkl. Kommandozeilen-, Web- und EMail-Interfaces.
darkstat - Ein weiteres Stat-Utility mit dem man Netzwerktraffic und Statistiken messen kann und Reports dann über HTTP anguggen kann. Ähnlich ntop.

Sonntag Mai 31, 2009

Links 20090530 - PostgreSQL, Database Unit Tests und VCS, Trainingsvideos

Post Facto: Version Control System (VCS) for PostgreSQL: Nachdem CVS oder Subversion in der Programmierwelt ja schon lange existieren. Post Facto wiederum protokolliert Schemaänderungen in einer Datenbank in Form von SQL-Dateien.
Unit Test Your Database - Und wenn wir schon bei VCS bei Datenbanken sind, warum nicht auch noch Unit Tests für die DB schreiben? Dazu gab es auf der PostgreSQL Conference 09 eine Vortrag. Auf dieser Seite findet man div. Links zum Thema u.a. zu pgTAP und PGUnit. Das PDF-Dokument vom Vortrag gibt es hier.
PostgreSQL on Vimeo - Aktuell über 34 Videos über das Thema Postgres gibt es bei Vimeo anzuschauen. U.a. finden sich hier Vorträge der PgCon-Konferenz wie z.B. PostgreSQL HA mit Linux and DRBD.
PostgreSQL Experts - Hier findet man u.a. das Performance Whack-a-Mole Tutorial (pgCon 2009) PDF (download). Letzteres sollte man unbedingt gelesen haben. Dieses 109 seitige PDF ist wirklich interessant.
PostgreSQL Lightning Talks pgCon 2009 (ca. 2 Std. Video und Slideshow).

Samstag Mai 30, 2009

Links 20090529 - Firefox, openresolv, postgresqlfs

Lifehacker: Top 10 Must-Have Firefox Extensions, 2009 Edition
openresolv: the DNS management framework - Das ist eine recht praktische Sache, wenn man verschiedene DNS-Server verwendet. Die /etc/resolv.conf ist ja normalerweise recht statisch. So kann es aber eventl. notwendig sein, das man für das VPN, Wireless, Ethernet oder andere Subnetze andere DNS-Server ansprechen möchte. Mit openresolv ist das machbar.
postgresqlfs: FUSE driver to access PostgreSQL databases as a file system - Peter Eisentraut hat ein etwas ungewöhnliches Filesystem entwickelt ;-)

Freitag Mai 29, 2009

Empfehlenswerte MySQL-Bücher

Trotz aller Abneigung gegenüber MySQL meinerseites, man kommt einfach nicht drum herum :-( Wer nicht unbedingt eine 08/15 Wald- und Wiesen-DB betreibt oder betreiben muss, dem seien folgende zwei Bücher schwer ans Herz gelegt:

MySQL Administrator Bible:

High Performance MySQL: Optimierung, Datensicherung & Lastverteilung:


Ersteres ist in englischer Sprache. Das Zweite ist die deutsche Übersetzung des gleichnamigen Buchs aus dem Englischen. Diese Bücher muss man gelesen haben.

Das Blog zu den Büchern findet sich hier: High Availability MySQL. Sollte man auf dem Radar haben...

Amiga MOD-Files per FUSE-FS abspielen mit uadefs

Schon witzig, was es alles heutzutage als Filesystem gibt ;-) So kann man mit uadefs ein Verzeichnis mit Tracker-Dateien mounten und dann auf dieses Verzeichnis mit jedem beliebigen Player, der WAV-Dateien abspielen kann, diese Dateien abspielen. Das funktioniert ähnlich wie bei sshfs (ermöglicht ein Filesystem eines entfernten Rechners per SSH zu mounten):

1. mkdir -p ~/mnt/uadefs
2. uadefs /amiga/songs ~/mnt/uadefs
3. vlc ~/mnt/uadefs/mod.foo

Voraussetzung ist natürlich, das man das FuSE-Paket installiert hat. uadefs ist bei Gentoo ein Teil des uade-Pakets (Unix Amiga Delitracker Emulator).

Samstag Mai 09, 2009

Links 20090508 - Fraktale, Eclipse Plugin, Python Lib, Desktop, Linux BIOS, KDE4 Apps, KVM, freiesMagazin

qosmic - A cosmic recursive flame fractal editor - Damit kann man flam3-Fractal Bilder erstellen und rendern lassen. Machen schon was her die Dinger ;-)
New Eclipse Plugin Adds Cloud Hosting for Java, PHP and Rails Applications
itools - Eine Bibliothek für Python die eine ganze Reihe an Funktionen für Internationalisierung (i18n), XML, CSV, Virtual Filesystem und OpenDocument zur Verfügung stellt.
Firefox Extension Desktop - Dieses Plugin ist noch experimental - Aber ziemlich praktisch. Mit CTRL-T öffnet man wie gewohnt einen neuen Tab. Auf dieser - normalerweise leeren - Fläche kann man jetzt Webseiten bzw. Screenshots davon platzieren, die man oft braucht. Ein Klick drauf und schon ist die Seite da. Trotz Alpha-Status läuft das Plugin bei mir einwandfrei.
First Graphics Game Written On/For a 16-Bit Home PC
MapReduce vs. Parallel DBs
Flashing Your Motherboard BIOS From The Linux Desktop
Top 10 KDE4 Applikationen
freiesMagazin Mai 2009 erschienen - U.a. mit dem Thema: Virtualisierung im Allgemeinen und KVM unter Proxmox VE im Speziellen

Freitag Mai 08, 2009

Links 20090507 - Tomcat, Applet-Tag, P2P-Streaming, Python IDE, Postgres-Migration

Tribler and Bitlet offer two takes on torrent-powered video streaming.
Jopr 2.2 adds Tomcat Management - Bisher eher für JBoss User interessant, kann dieses Tool nun auch einzelne Tomcat-Instanzen verwalten.
How Do Java Developers Edit-In-Place and Monitor?
The End of the Applet Tag - Das Java Applet-Tag hat ausgedient. Anthony Goubard beschreibt in seinem Blog wie's gemacht wird.
PG_Migrator Alpha Released - Bruce Momjian hat eine erste Version seines pg_migrator's für den Umstieg von PostgreSQL 8.3 auf 8.4 freigegeben.
PIDA - Python Integrated Development Application (Python IDE) - Neben Eric eine weitere interessante Entwicklungsumgebung für Python.


Mittwoch Mai 06, 2009

MySQL Performance- und Diagnose-Tool Jet Profiler

Normalerweise bin ich ja kein Fan von ClosedSource Programmen insbesondere im OpenSource Umfeld. Aber dieses Tool hier ist wirklich praktisch und ich habe bisher auch noch nicht wirklich was Besseres gefunden, wenn es um die Performanceanalyse einer MySQL-DB geht, insbesondere wenn man auf der Suche nach langsamen Queries, Locks, Cache-Hit-Ratio's, usw. geht. Man bekommt diese Infos zwar auch teilweise anderweitig, aber kaum so gut und übersichtlich aufbereitet, was letztendlich viel Arbeit spart.

Vom Jet Profiler kann man sich eine soweit ganz funktionale, freie Version downloaden, aber leider wird man relativ schnell feststellen, das man ohne die 499 Dollar teure Version nicht so arg weit kommt. Nicht ganz billig, aber das ist Oracle auch nicht ;-) Wenn man täglich hört "die Datenbank ist langsam...", dann ist dieses Programm die Antwort. Das Programm ist in Java geschrieben und ist allen Unkenrufen zum Trotz (was man immer noch von Java-Programmen hört) schnell und gut bedienbar. Es läuft unter Linux, Mac OS X und Windows.

Donnerstag Apr. 30, 2009

Links 20090429 - pyjamas, python-ldap, python-postgresql, Tahoe, Linux Grafik

pyjamas - Ein Python AJAX-Framework ähnlich GWT. Man erstellt hier seinen AJAX Code in Python, den das Framework dann in JavaScript konvertiert.
GreasySpoon - Inspiriert von der Firefox Extension GreaseMonkey kann man mit dem Teil hier Traffic an einem ICAP Server abfangen und manipulieren per Java/JavaScript. Ein möglicher ICAP Server wäre z.B. der Squid Proxy.
python-ldap - LDAP client API for Python
py-postgresql - Stellt ein PG-API, postgresql.api und DB-API 2.0 Interface zur Verfügung, um unter Python einfach mit einer PostgreSQL-Datenbank arbeiten zu können.
Tahoe, the Least-Authority Filesystem - Ein dezentrales, ausfallsicheres und verschlüsseltes Dateisystem, das ähnlich einem Peer-to-Peer Netz arbeitet.
Linux Graphics Users Forum - Wie der Name schon sagt... ;-)

Montag Apr. 27, 2009

Xerxes, Romeo Knight und Bendik @ Breakpoint 2009

Wie schon zur Breakpoint 2008 haben auch 2009 Xerxes, Romeo Knight und Bendik wieder eine Performance abgeliefert. Die MP3's gibt's hier als Download. Toller Sound!

Radio Paralax - RetroVision: Best of Breakpoint 2009

4 Stunden Video zum Download von Radio Paralax mit den besten Demos der Demoparty Breakpoint 2009, die über Ostern stattfand. Vorallem für Leute interessant, die kein Windows mehr haben :-)