advertisement

Catacomb Datenbankabstraktion mit mod_dbd

50 %
50 %
advertisement
Information about Catacomb Datenbankabstraktion mit mod_dbd

Published on May 6, 2008

Author: KJoe

Source: slideshare.net

Description

Techtalk von Bernd Sydow zum Thema "Catacomb Datenbankabstraktion mit mod_dbd" (DLR Köln-Porz, 06.05.2008).
advertisement

Datenbankabstraktion des Catacomb WebDAV Server mit apr_dbd/mod_dbd

Gliederung Gliederung Grundlagen Apache Grundlagen WebDAV Datenbankmodell Analyse Entwurf Implementierung Evaluation

Gliederung

Grundlagen Apache

Grundlagen WebDAV

Datenbankmodell

Analyse

Entwurf

Implementierung

Evaluation

Grundlagen Apache Dreigeteilte Architektur Apache Portable Runtime Multi-Processing Modules Core Module

Dreigeteilte Architektur

Apache Portable Runtime

Multi-Processing Modules

Core Module

Grundlagen Apache (APR)‏ Apache Portable Runtime wird separat von dem Apache Webserver entwickelt. APR besteht aus 3 Teilen APR Core – Abstrahiert Betriebssytemabhängige Funktionen APR-Util – Erweitert die Bibliothekfunktionalität um nützliche Funktionen APR-Iconv – Portable Implementation von iconv() Bibliothek (für Win32)‏

Apache Portable Runtime wird separat von dem Apache Webserver entwickelt.

APR besteht aus 3 Teilen

APR Core – Abstrahiert Betriebssytemabhängige Funktionen

APR-Util – Erweitert die Bibliothekfunktionalität um nützliche Funktionen

APR-Iconv – Portable Implementation von iconv() Bibliothek (für Win32)‏

Grundlagen Apache (apr_dbd/mod_dbd)‏ apr_dbd teil der Apache Portable Runtime Einfache/kleine API Keine Sprachabstraktion mod_dbd teil der Apache Distribution Connection Pooling Verbindungsmanagment

apr_dbd teil der Apache Portable Runtime

Einfache/kleine API

Keine Sprachabstraktion

mod_dbd teil der Apache Distribution

Connection Pooling

Verbindungsmanagment

Grundlagen WebDAV Erweiterung des HTTP Standard 1.1 um schreibzugriff Weitere Standards die WebDAV erweitern DeltaV – Versionierung DASL – Serverseitige Suche ACP – Zugriffskontrolle

Erweiterung des HTTP Standard 1.1 um schreibzugriff

Weitere Standards die WebDAV erweitern

DeltaV – Versionierung

DASL – Serverseitige Suche

ACP – Zugriffskontrolle

Datenbankmodell

Analyse Ablauf des Datenbankzugriffs sehr ähnlich SQL teilweise Befehle MySQL zentrisch Volltextsuche Speichern und Lesen von Resourcen Direkte Verwendung der MySQL C-API ausserhalb von dbms_mysql.c Autowerte sind Datenbankabhängig

Ablauf des Datenbankzugriffs sehr ähnlich

SQL teilweise Befehle MySQL zentrisch

Volltextsuche

Speichern und Lesen von Resourcen

Direkte Verwendung der MySQL C-API ausserhalb von dbms_mysql.c

Autowerte sind Datenbankabhängig

Entwurf dbms_mysql.c entfernen und Funktionsaufrufe durch apr_dbd Aufrufe ersetzen Datenbankabhängige Funktionen in die Datenbank verlagern durch User-Defined-Functions Volltextsuche Autowerte SQL Statments umformulieren für SQL99 Konformität Speichern von Resourcen Auslesen von Resourcen

dbms_mysql.c entfernen und Funktionsaufrufe durch apr_dbd Aufrufe ersetzen

Datenbankabhängige Funktionen in die Datenbank verlagern durch User-Defined-Functions

Volltextsuche

Autowerte

SQL Statments umformulieren für SQL99 Konformität

Speichern von Resourcen

Auslesen von Resourcen

Implementierung ohne apr_dbd (query)‏ Prepare Parameter setzen 1 - n Statement ausführen Statement schließen q = dbms_prepare(pool, &( d->db ), "DELETE FROM dasl_resource WHERE serialno=?"); dbms_set_int(q, 1, r->serialno); dbms_execute( q ); dbms_query_destroy( q );

Prepare

Parameter setzen 1 - n

Statement ausführen

Statement schließen

Implementierung mit apr_dbd (query)‏ Prepare Parameter setzen und Statement ausführen rv = apr_dbd_prepare(dbd->driver, pool, dbd->handle, "DELETE FROM version_resource " "WHERE serialno=%s", NULL, &pquery); rv = apr_dbd_pvquery(dbd->driver, pool, dbd->handle, &nrows, pquery, apr_ltoa(pool, r->serialno));

Prepare

Parameter setzen und Statement ausführen

Evaluation mod_dbd branch Durchschnittlich um den Faktor 2 langsamer Ausnahmen Get1024K und CopyCol Verzicht auf temporäre Tabellen (CopyCol)‏ BASE64 Kodierung + Catacomb erstellt Datei (Get*k)‏

Durchschnittlich um den Faktor 2 langsamer

Ausnahmen Get1024K und CopyCol

Verzicht auf temporäre Tabellen (CopyCol)‏

BASE64 Kodierung + Catacomb erstellt Datei (Get*k)‏

Evaluation mod_dbd acp branch Durchschnittlich um den Faktor 2 langsamer Ausnahmen zusätzlich zum mod_dbd branch (DeleteCol, SetAclMultiCol)‏ Gleiche SQL Statements werden mehrfach hintereinander ausgeführt. Vorteil für Prepared Statements

Durchschnittlich um den Faktor 2 langsamer

Ausnahmen zusätzlich zum mod_dbd branch (DeleteCol, SetAclMultiCol)‏

Gleiche SQL Statements werden mehrfach hintereinander ausgeführt. Vorteil für Prepared Statements

Add a comment

Related pages

Datenbankabstraktion im CATACOMB WebDAV Server mit mod dbd ...

Datenbankabstraktion im CATACOMB WebDAV Server mit mod_dbd und exemplarischer Implementierung Bernd Sydow Hochschule Aalen Diplomarbeit
Read more

Catacomb WebDAV Server – Wikipedia

Durch die Datenbankabstraktion mit mod_dbd des Apache Projekts werden eine ... Das Catacomb Projekt hat als erstes Open Source Projekt die WebDAV ...
Read more

Datenbank-Abstraktion mit mod_dbd für den Catacomb WebDAV ...

Datenbank-Abstraktion mit mod_dbd für den Catacomb WebDAV-Server on ... Der Catacomb WebDAV Server ist bei seiner Entstehung auf eine spezische Datenbank ...
Read more

Hardware-Aktuell - Lexikon - Catacomb WebDAV Server

Durch die Datenbankabstraktion mit mod_dbd des Apache Projekts werden eine vielzahl von ... Catacomb unterstützt folgende Erweiterungen des ...
Read more

Markus Litz - HubSlide

Catacomb Datenbankabstraktion mit mod_dbd Techtalk von Bernd Sydow zum Thema "Catacomb Datenbankabstr... 6 months ago. Technology. Catacomb Apachecon Fast ...
Read more

electronic library - Datenbank-Abstraktion mit mod_dbd für ...

Datenbank-Abstraktion mit mod_dbd für den Catacomb WebDAV-Server Sydow, Bernd (2008) Datenbank-Abstraktion mit mod_dbd für den Catacomb WebDAV-Server.
Read more