Überblick über NoSQL Datenbanken

Größe: px
Ab Seite anzeigen:

Download "Überblick über NoSQL Datenbanken"

Transkript

1 1 Überblick über NoSQL Datenbanken Seminararbeit Software Systems Engineering - WS 2012 / 2013 Mario David - Student - Master Informatik (SSE) Universität zu Lübeck Zusammenfassung Diese Seminararbeit umfasst die Einführung, die theoretischen Grundlagen, eine Taxonomie sowie einige exemplarische Beispiele aus dem Bereich von NoSQL Datenbanken. Nach einer Einführung der Begriffe sowie einer Motivation von dem relationalen Modell abzurücken wird u.a. auf das CAP-Theorem als theoretische Grundlage eingegangen. Desweiteren werden verschiedene NoSQL Datenbanken kategorisiert und diese Kategorien einzeln beschrieben. Dabei werden die beiden Datenbankmanagementsysteme Riak und CouchDB in ihren Grundzügen vorgestellt und deren jeweilige Vorzüge herausgearbeitet. Abschließend wird eine Zusammenfassung gegeben, die beschreibt wo die Kern- Unterscheide zu RDBM-Systemen bestehen. Index Terms NoSQL, Taxonomy, Key-Value-Stores, CAP- Theorem, document oriented databases, Riak, CouchDB I. EINFÜHRUNG IN NOSQL Der Begriff NoSQL (not only SQL) beschreibt, statt einer konkreten Technologie, verschiedenste Ansätze im Bereich Persistenz. Diese Technologien besitzen als kleinsten gemeinsamen Nenner die Eigenschaft, nicht auf dem relationalen Datenbankmodell aufzubauen. Das relationale Datenbankmodell beruht im Wesentlichen auf Entitäten, dies entspricht einer Tabelle mit Spalten und Zeilen, und Relationen, also Beziehungen zwischen diesen Entitäten. Zusätzlich besitzen bieten relationale Datenbanksysteme unter dem Akronym ACID eine starke Konsistenz für Transaktionen. Diese Eigenschaft lässt sich nur schlecht mit einer Anforderung nach horizontaler Skalierung vereinbahren, da um Konsistenz über mehrere Knoten zu gewährleisten ein großer Kommunikationsaufwand betrieben werden muss. A. Motivation für nicht relationale Datenbanksysteme Diese sogenannte horizontale Skalierung ( Scale Out - Skalierung über mehrere Computer) ist häufig Voraussetzung für Applikationen, die das Nutzeraufkommen mittelfristig schlecht abschätzen können (Facebook, Google, Twitter, usw.). Man spricht in diesem Zusammenhang auch von Internet- Scale Systems. Traditionelle relationale Datenbanken skalieren üblicherweise vertikal ( Scale-Up ), sprich: ein Computer wird mit entsprechend größerer Hardware ausgestattet, um steigenden Anforderungen weiterhin zu genügen. Diese Art der Skalierung funktioniert gut für Applikationen, bei denen das Nutzeraufkommen ein gewisses Maß an Elastizität nicht übersteigt. Existieren allerdings Skalierungsanforderungen wie die oben genannten, so lässt sich diese Art der Datenbankskalierung sowohl aus technischen, als auch als Kostengründen nicht durchführen. Es gibt allerdings noch weitere Faktoren, die eine Motivation sein können, von dem relationalen Modell Abstand zu nehmen: kein Zwang für ein fest definiertes Schema der Datenbank Hochverfügbarkeit Kostenvorteile bei Scale Out gegenüber Scale Up neuartige Abfragemethoden (bspw. Map Reduce) B. Einsatz von NoSQL Datenbanken NoSQL Datenbanken konzentrieren sich in den meisten Fällen auf einen Teilaspekt, wie bspw. Skalierbarkeit oder auch ein ausgeprägtes Datenmodell. Durch diese Spezialisierung bzw. diesen Kompromiss ist der Einsatz einer NoSQL Datenbank immer nur in Teilbereichen eines Gesamtsystems zu evaluieren. Auch relationale Datenbanken haben Vorteile, wie z.b. die Transaktionsfähigkeit oder den hohen Standardisierungsgrad der Abfragesprache (SQL). Daher ist der Einsatz von NoSQL Technologien häufig auch als Zu- und nicht Ersatz für bereits bestehende Datenbanksysteme zu sehen. C. Kategorien im nicht relationalen Umfeld Wie bereits angesprochen gibt es viele verschiedene Arten von Datenbanken, die alle unter dem Schlagwort NoSQL zusammengefasst werden. Diese lassen sich in verschiedene Kategorien unterteilen: Key-Value Stores Spaltenorientierte Datenbanken Dokumentenorientierte Datenbanken Graphendatenbanken Die meisten Datenbanken, die dem Begriff NoSQL zugeordnet werden, lassen sich einer dieser Kategorien zuordnen. In den nachfolgenden Kapiteln wird auf die einzelnen Kategorien detailliert eingegangen und ggf. eine Datenbank aus dieser Kategorie näher betrachtet. Zuvor wird jedoch auf verschiedene theoretische Grundlagen eingegangen, die alle der NoSQL Datenbanken gemeinsam betreffen. II. THEORETISCHE GRUNDLAGEN In diesem Kapitel werden verschiedene theoretische Grundlagen besprochen, die viele der Vorteile einer NoSQL Datenbank überhaupt erst ermöglichen. Desweiteren wird noch auf das sogenannte CAP-Theorem eingegangen, welches eine theoretische Basis für alle verteilten Systeme darstellt.

2 2 A. Horizontale Skalierung durch Sharding und Replikation Die Möglichkeit horizontal über mehrere Knoten zu skalieren verdanken viele NoSQL Datenbanken dem sogenannten Sharding. Bei dieser Technologie werden die zu persistierenden Daten horizontal über verschiedene Knoten partitioniert. Ein Beispiel für eine solche (auch wenn nicht gerade sinnvolle) Partitionierung ist, die gespeicherten Kundeninformationen anhand des ersten Buchstabens des Namens auf 26 Cluster- Knoten einer NoSQL Datenbank zu verteilen. Ein wichtiger Aspekt ist hierbei, dass die einzelnen Knoten im Cluster Anfragen lokal beantworten können müssen. Ansonsten würden Join-Operationen über verschiedene Knoten stattfinden, wodurch die angestrebte Skalierbarkeit negativ beeinflusst wird. Diese lokale Anfragenbearbeitung wird häufig über Replikation und de-normalisierte Daten gelöst. Statt auf einen genauen Schnitt der Daten, bei dem exakt jeder Datensatz einem Knoten zugeordnet ist, zu setzen, werden die Daten dazu auf mehreren Knoten vorgehalten, um lokale Verarbeitung zu ermöglichen. De-normalisierte Daten ermöglichen diese lokale Verarbeitung dadurch, dass bspw. bei einer dokumentenorientierten Datenbank zu einem Kunden zusätzlich alle Bestellungen dieses Kunden als Attribut gespeichert werden, obwohl die Bestelldaten zusätzlich unter einem anderen Key / Knoten zu finden sind. Die Replikation spielt an dieser Stelle eine entscheidende Rolle. Viele NoSQL Datenbanken verlassen sich, statt auf einer geringen Anzahl von hochverfügbaren Servern, auf eine Vielzahl von Servern, die isoliert betrachtet nicht hochverfügbar sind. Ein Ausfall eines Knoten im Cluster kann toleriert werden, da die Daten immer auf mehreren Knoten zur Verfügung stehen. Dass dieser Fall, der Ausfall eines Knoten, im NoSQL Bereich als normal angesehen wird zeigt auch die Verwendung einer verteilten Hashtabelle. Auf diese spezielle Art einer Hashtabelle wird nachfolgend eingegangen. B. Verteilte Hashtabellen Einer der Vorreiter im Bereich NoSQL Datenbanken ist Amazon Dynamo[1]. Die im Jahr 2007 vorgestellte Lösung verwendet intern zur Kommunikation zwischen den Knoten des Clusters verteilte Hashtabellen (Distributed Hash Tables, DHT s). Diese ermöglichen innerhalb eines P2P- Netzwerkes die Ressourcenlokalisierung effizient und schnell durchzuführen. Verteilte Hashtabellen basieren auf dem Prinzip des sog. consistent hashing. Diese besondere Form des Hashings optimiert den Beitritt, Ausfall und Austritt eines Knoten im Netzwerk, da hier nicht der gesamte Datenbestand neu umverteilt werden muss, sondern lediglich die betroffenen Keys auf die Umliegenden Knoten verteilt werden. C. CAP Theorem Alle Arten von verteilten Systemen unterliegen dem CAP- Theorem. Es wurde von Eric A. Brewer[2] aufgestellt und beschreibt die Eigenschaft, dass ein verteiltes System nur 2 von 3 der folgenden Eigenschaften vollständig erfüllen kann: Konsistenz (C) Verfügbarkeit (A) Partitionstoleranz (P ) Konsistenz ist die Eigenschaft, dass alle Knoten zu gleichen Zeit die gleichen Daten sehen. Verfügbarkeit beschreibt die Eigenschaft in der jede Anfrage von dem System beantwortet werden kann und Partitionstoleranz bedeutet, dass das Gesamtsystem auch bei Verlust von Nachrichten oder Netzwerkpartitionierung in der Lage ist weiterzuarbeiten. Bei dem Eintreten einer Netzwerkpartitionierung, bspw. durch die Verbindungsunterbrechung zwischen zwei Rechenzentren entsteht eine Situation, in der die Daten der Replikate nicht mehr überall konsistent sind. Die Entscheidung, wie auf diese Situation reagiert wird, obliegt meist 1 dem Entwickler der NoSQL Datenbank. Entweder die zurückgelieferten Daten sind konsistent (C&P), wodurch evtl. manche Anfragen nicht mehr beantwortet werden können, oder alle Anfragen werden beantwortet, sind jedoch ggf. nicht konsistent (A&P). Die ursprüngliche Formulierung von Eric Brewer in seiner Präsentation im Jahre 2000[3] lautete: A shared-data system can have at most two of the three following properties: Consistency, Availability, and tolerance to network Partitions. Dies ist in der Realität, wie Brewer 2012 selbst klarstellte[4] nicht anzutreffen, da wie oben beschrieben die Situation einer Netzwerkpartitionierung in WAN Umgebungen jederzeit entstehen kann und somit die Entwickler von NoSQL Lösungen im wesentlichen lediglich die Wahl zwischen C und A haben (ggf. wird dem Benutzer der Datenbank die Entscheidung überlassen - siehe Riak: III-A4). Eine häufig gewählte Antwort bzw. ein für viele Anwendungsfälle akzeptabler Kompromiss auf die angesprochene Entscheidung ist BASE. Dieses Akronym steht für die englischen Begriffe basically available, soft state, eventually consistent. Es beschreibt die Eigenschaft, dass ein verteiltes System grundsätzlich verfügbar ist, allerdings nicht jeder Knoten des Clusters zwangläufig die gleichen Daten zu gleichen Zeit sieht (dies schlussendlich jedoch tut). Der Begriff eventually consistency wurde vornehmlich durch Werner Vogels (CTO von Amazon) in seinem gleichnamigen Artikel[5] geprägt. BASE erfüllt die Eigenschaften A&P des CAP-Theorems und wird häufig von Datenbanken eingesetzt, die auf Ausfallsicherheit spezialisiert sind. Ein Beispiel für eventually consistent ist der weltweite Domain Name Service (DNS). Bei der Registrierung einer neuen Domain dauert die komplette Propagierung der Informationen zu allen DNS Servern eine gewisse Zeit. Innerhalb dieser Zeit sind die DNS Server an sich jedoch verfügbar (sofern sie erreichbar sind), auch wenn sie ggf. noch nicht die korrekten Daten liefern. III. KEY-VALUE STORES Diese Art von Datenbanken speichert, wie der Name schon vermuten lässt, immer zu einem gegebenen Schlüssel (Key) einen beliebigen Wert (Value) ab. Diese einfache Art der Datenspeicherung ist in der Regel sehr performant und lässt sich gut skalieren. Allerdings ist eine solche Datenbank häufig nicht gut geeignet, um komplexe Abfragen zu realisieren, da die 1 Ggf. ist es möglich als Anwender zur Laufzeit diese Entscheidung zu treffen. Siehe III-A4

3 3 Datenbank meist nichts über die Struktur der Werte weiß. Man kann innerhalb dieser Kategorie noch zwischen In-Memory Datenbanken und persistenten Datenbanken unterscheiden. Ein Beispiel für eine In-Memory Datenbank, die ihren gesamten Datenbestand im Hauptspeicher hält ist memcached[6]. Für eine persistente Variante ist hier bspw. Riak[7] zu nennen, auf die nachfolgend detailliert eingegangen wird. Weitere Datenbanken in dieser Kategorie sind Apache Cassandra[8], Amazon Dynamo[9] und Redis[10]. A. RESTful Dynamo Implementierung: Riak Riak ist ein verteilter Key-Value Store, der auf den Prinzipien der Amazon Dynamo Veröffentlichung basiert. Implementiert ist Riak in Erlang, einer funktionalen Programmiersprache für die Entwicklung von verteilten Systemen. Die Philosophie hinter Erlang: Let it crash, erkennt man auch in Riak wieder. Riak ist fehlertolerant. Das bedeutet, dass es ein völlig normaler Vorgang ist, Knoten zum Datenbank-Cluster hinzuzufügen und zu entfernen (beabsichtigt oder unbeabsichtigt). 1) Zugriffsmöglichkeiten: Wie viele NoSQL Datenbanken, ist auch für Riak die primäre Zugriffsmöglichkeit das HTTP Protokoll mit der angebotenen REST Schnittstelle. Anfragen an die Datenbank werden via URLs gestellt. Über Headerinformationen und HTTP-Verben lassen sich unterschiedliche Arten von Anfragen realisieren. Riak antwortet mit den gängigen HTTP-Statuscodes zur Beschreibung des Status der Anfrage. Durch die Verwendung von HTTP als Zugriffsprotokoll bietet Riak für jeder Programmiersprache eine Verbindungsmöglichkeit, die in der Lage ist HTTP-Anfragen zu generieren (bzw. Bibliotheken dafür bereitstellt). Somit ist es nicht notwendig einen Datenbanktreiber für jede Programmiersprache zu erstellen. Ebenfalls bietet HTTP Möglichkeiten wie Caching, Security und MIME Types, von denen Riak profitieren kann, ohne dass es eigene Mechanismen dafür bereitstellen muss. HTTP als Transportprotokoll hat allerdings auch einige Nachteile. So ist die Tatsache, dass HTTP ein ASCII-Protokoll ist, ein Nachteil bezüglich der Übertragungsgeschwindigkeit. Für diesen speziellen Fall ist es auch möglich Riak über das Binärprotokoll Google Protocol Buffers [11] anzusprechen. 2) CRUD: Für die Kommunikation mit dem Riak Server wird in diesen Beispielen das Kommandozeilen-Werkzeug curl[12] verwendet. In Riak entspricht eine Datenbank in etwa einem sogenannten Bucket. Ein Bucket ist eine virtueller Schlüsselraum, in dem jeder Schlüssel eindeutig sein muss. Zudem ist es möglich für jeden Bucket verschiedene, voneinbobander isolierte Konfigurationen einzustellen[13]. Das Standard URL Schema lautet folgendermaßen: Für die Erzeugung eines Datensatzes gibt es zwei Möglichkeiten. Entweder durch explizite Angabe des Keys unter dem der Datensatz später zu finden sein soll: PUT oder durch die automatische Vergabe des Keys: POST Anbei ein Beispiel für die erste Variante: $ curl -v -X PUT bob -H Content-type: application/json -d nickname : B., breed : Australian Kelpie, age : 2 Um Datensätze eines Buckets abzurufen wird das HTTP- Verb GET verwendet: $ curl HTTP/ OK X-Riak-Vclock: a85hygbgzgdkbvicr4m2cgcs+x4ygymrmy+ V4XJC/Cm+LAA= Link: </riak/dogs>; rel="up" ETag: "4pQlxK0OzKmotRvLkoScsq" Content-Type: application/json... "nickname": "B.", "breed": "Australian Kelpie", age : 2 Die Verbindung zwischen zwei Datensätzen innerhalb von Riak geschieht über die explizite Erstellung von Links. Das Schema für die Definition von Links ist folgendermaßen: Link: </riak/[bucket_name]/[key]>; riaktag="[my_tag] " Ein Beispiel für die Erstellung eines Link: curl -X PUT -H " Content-Type: application/json" -H "Link: </riak /dogs/wuffy>; riaktag=\"contains\"" -d "room" : 23 Nun ist es möglich, diese Links, die in den HTTP-Responses als Header Informationen verschickt werden, zu durchlaufen: curl -i Die Syntax:,, ist dabei folgendermaßen zu interpretieren: [bucket name],[tag], [keep]. Es ist somit möglich die Links zwischen Einträgen in der Datenbank auf einen gewissen Bereich einzugrenzen. Durch die Verwendung von mehrfacher Anwendung des Link-Walking kann somit bequem durch den Datenbestand navigiert werden. 3) Map Reduce: Wie viele NoSQL Datenbanken bietet auch Riak eine Möglichkeit an Daten lokal auf den Knoten zu verarbeiten und die aggregierten Ergebnisse dann zusammen zu tragen. Dafür verwendet Riak ein Verfahren namens Map Reduce [14], welches ursprünglich von der Firma Google Inc. im Jahre 2004 vorgestellt wurde. Die praktische Verwendung von MapReduce in Riak funktioniert über Javascript. Es werden dabei per HTTP-Request Funktionen mitgeschickt, die in Javascript definieren, was genau bei einem Map bzw. Reduce Schritt ausgeführt werden soll. Alternativ ist es auch möglich, ähnlich wie in relationalen Datenbanken sogennante Stored Procedures anzulegen, die diese Javascript Funktionen in der Datenbank persistieren. Dann kann in einem Query per Name auf diese Funktionen zugegriffen werden. Ein Beispiel für eine solche Anfrage lautet: curl -X POST -H "content-type:application/json" http ://localhost:10018/mapred "inputs":[ ["rooms","23"],["rooms","24"],[" rooms","25"]

4 4 ], "query":[ "map": "language":"javascript", "source": "function(v) var parsed_data = JSON.parse(v.values[0].data); var data = ; data[parsed_data.style] = parsed_data.capacity; return [data]; " ] 4) CAP Theorem in der Praxis: Die Entscheidung bei einer verteilten Datenbank, wie auf eine eintretende Partitionierung des Netzwerkes eingegangen wird, obliegt in der Regel dem Datenbankentwickler. Dieser Entscheidet, ob das DBMS dem C&P bzw. dem A&P Ansatz folgt. Riak verfolgt hier eine interessante Strategie. Grundsätzlich folgt Riak dem A&P Ansatz, allerdings lässt sich der Faktor Konsistenz als Parameter verstehen, der auf einer Pro-Anfrage-Basis variabel ist. Dabei gibt bei Anfragen die drei Parameter N, W und R. N beschreibt die Anzahl Replikate im Cluster, W gibt die notwendige Anzahl von Knoten, bei denen ein erfolgreicher Schreibvorgang stattgefunden hat, an, bis der Schreibvorgang insgesamt als erfolgreich angesehen wurde. Somit gilt für W < N, dass der Schreibvorgang als erfolgreich akzeptiert wurde, auch wenn noch nicht alle Schreibvorgänge abgeschlossen sind. Der Parameter R gibt die Anzahl der Konten an, von denen ein Lesevorgang ausgeführt werden soll. Durch diese Parameter lassen sich verschiedene Konsistenzmodelle herbeiführen: Eventually Consistency: W + R N(siehe II-C: BASE) Consistency by writes: W = N, R = 1 Consistency by reads: W = 1, R = N Consistency by quorum: W + R > N Insbesondere die drei letzteren wurden dabei genauer in [15] beschrieben. In Riak können diese drei Parameter per URL bzw. im Body der HTTP Anfrage mitgeliefert werden: curl -X PUT -H " Content-Type: application/json" -d "props":"w ":2, "n_val":1, "r": 2 IV. SPALTENORIENTIERTE DATENBANKEN Die zweite Kategorie von NoSQL-Datenbanken, auf die hier näher eingegangen wird sind spaltenorientierte Datenbanken. Ihren Ursprung hat diese Datenbank in dem Bereich OLAP (Online Analytical Processing) und ihrer Optimierung. Die wesentliche Eigenschaft von spaltenorientieren Datenbanken ist die zusammenhängende Speicherung der Daten einer Spalte auf dem Speichermedium. Bei relationalen Datenbanksystemen wird hingegen Zeilenweise persistiert. Bei OLAP- Anwendungen ist genau diese Art der physikalischen Speicherung von Vorteil, da hier in der Regel Auswertungen betrachtet werden, die sich auf einzelne Spalten und ihre Aggregation beziehen. Es werden dabei meist keine ganze Datensätze (bspw. ein Kundendatensatz) betrachtet, sondern eher einzelne Spalten der gesamten Tabelle (bspw. die Postleitzahlen aller Kunden) um Auswertungen über den gesamten Datenbestand zu erstellen. Die Erzeugung einer Spalte in einem RDBMS ist deutlich aufwendiger und bezieht sich immer auf die gesamte Tabelle. Das ist bei spaltenorienterten Datenbank nicht der Fall. Es kann durchaus eine Spalte in einer Zeile existieren und in der nächsten nicht. Dieses Verhalten kann auch als Mittelweg in Bezug auf das Schema zwischen einer relationalen Datenbank und einem Key-Value Store angesehen werden. Vertreter dieser Kategorie sind u.a. Google BigTable, bzw. dessen Open Source Implementierung: HBase, Apache Cassandra. V. DOKUMENTENORIENTIERTE DATENBANKEN Ähnlich wie Key-Value Stores, speichern dokumentenorientierte Datenbanken zu einem gegebenen Schlüssel einen Wert ab. Allerdings hat dieser Wert eine dokumentenartige Struktur (z.b. ein JSON Dokument). Abgesehen von der gegebenen Struktur des JSON Formates gibt es allerdings keine weiteren Einschränkungen bezüglich der Struktur. So können beliebige valide JSON Dokumente unter verschiedenen Schlüsseln abgelegt werden. Dabei sind auch geschachtelte Strukturen innerhalb des Dokumentes erlaubt. Im Unterschied zu Key-Value Stores hat das DBMS also grundlegende Informationen über die Struktur des Dokuments. Diese Eigenschaft wird dazu genutzt, mehr Abfragelogik in die Datenbank zu bringen und direkt zu verarbeiten. Im Gegensatz zu anderen NoSQL-Kategorien, gibt es bei den dokumentenorientieren Datenbanken mit Lotus Notes schon einen Vertreter, dessen Anfänge in die 80er Jahre zurückreichen. Weitere Datenbankmanagementsysteme in diesem Bereich sind bspw.: MongoDB, CouchDB als auch die Hybrid-DMB Systeme: Apache Cassandra und Redis. Auf einen Vertreter (CouchDB) wird stellvertretend im nachfolgenden Kapitel näher eingegangen. A. CouchDB CouchDB ist eine solche dokumentenorientierte Datenbank, wobei der Name als Akronym für Cluster of unreliable commodity hardware Data Base steht. Der Fokus lässt sich somit bereits aus dem Namen erkennen. Statt teurer zuverlässiger Spezial-Hardware ist die Verwendung eines beliebig großen Clusters von Standard-Hardware vorgesehen. Der Entwickler von CouchDB war auch an der Entwicklung von Lotus Notes beteiligt, sodass gewisse Konzepte übernommen wurden, jedoch um heutige Technologien (z.b. Map Reduce) erweitert wurde. Implementiert ist CouchDB, ebenso wie Riak, in Erlang. Auf die wesentlichen Merkmale von CouchDB wird nachfolgend eingegangen. 1) Datenbankkommunikation per HTTP / REST: Genau wie bei Riak wird auch bei CouchDB das HTTP-Protokoll verwendet, um mit der Datenbank zu interagieren. Es verwendet für die verschiedenen CRUD-Operationen die HTTP-Verben. Um Beispielsweise ein einzelnes Dokument abzufragen wird folgender Aufruf verwendet: $ curl ae98eaf98dfef987af6756dfd655e

5 5 "_id":"ae98eaf98dfef987af6756dfd655e", "_rev":" ad87e6feda876aa", "name":"blind Dog", "albums": [ "title":"the Last Adventures Of Captain Dog", "year":2001, ] Dabei wird eine GET Operation auf die id ae98eaf98dfef987af6756dfd655e ausgeführt. Als Ergebnis erhält man das Dokument. Zusätzlich gibt es zwei weitere Informationen: id, rev. Diese beiden Eigenschaften beschreiben die Identität eines Dokumentes. In CouchDB wird neben der eindeutigen ID eine zusätzliche Revisionssnummer gespeichert. Der Grund für dieses Vorgehen wird in Kapitel V-A3 näher erläutert. Ein neues Dokument kann per HTTP POST auf die Datenbank URL erzeugt werden: $ curl -X POST " -H " Content-Type: application/json" -d "name": " Eric Clapton" Hier ist bereits zu erkennen, dass CouchDB kein festes Schema für die Dokumente vorsieht. Bei dem obigen Beispiel wurde unter dem Key albums eine Menge von Objekten gespeichert. Dies ist bei dem neu hinzugefügten Dokument nicht der Fall. Bei dem Aktualisieren eines existierenden Datensatzes wird in CouchDB immer das vollständige Dokument mit den aktualisierten Werten übergeben. Dabei ist wichtig, dass die korrekte Revisionsnummer verwendet wird. $ curl -X PUT " ae98eaf98dfef987af6756dfd655e" -H "Content-Type: application/json" -d "_id": "ae98eaf98dfef987af6756dfd655e", "_rev": " adebbdb12341", "name": "Eric Clapton", "albums": ["Pilgrim", "Edge ", "461 Ocean Boulevard"] Als Rückgabe erhält man, sofern die aktuellste Revisionsnummer verwendet wurde: "ok":true, "id":"ae98eaf98dfef987af6756dfd655e", "rev":" adef123efea12321b" eine Erfolgsmeldung mit der neuen Revisionssnummer des Dokuments. Weitere Hintergrundinformationen zum Thema Revisionen und deren Verwendung ist im 2) Verwendung von Views: Views werden in CouchDB, ähnlich wie in relationalen Datenbanksystemen, dazu verwendet die Daten darzustellen. Im Falle von CouchDB sind diese Daten meist Dokumente, die zu neuen aggregierten Dokumenten transformiert werden. Dazu verwendet CouchDB wie Riak den Map-Reduce-Ansatz. Grundsätzlich gibt es in CouchDB die Möglichkeit von ad-hoc Anfragen als auch von vorberechneten Design Dokumenten. Der Unterschied ist im Wesentlichen, dass bei ad-hoc Anfragen die Map-Funktion auf jedes Dokument in der Datenbank ausgeführt wird. Dieses Verhalten schließt einen Einsatz im Produktivbetrieb aus, da die Berechnung von solchen ad-hoc Anfragen extrem langsam sein kann. Die alternative: vorberechnete Design Dokumente werden demnach nicht zum Anfragezeitpunkt ausgewertet, sondern stattdessen vorberechnet. Dieser Geschwindigkeitsgewinn schlägt sich allerdings negativ in der Flexibilität nieder. Ein Design-Dokument enthält typischerweise mehrere Views. Ein Beispiel für einen solchen View ist die Indizierung der Musikdatenbank nach Namen. Dazu kann folgende, in Java Script definierte, Map Funktion verwendet werden: function(document) if ( name in document) emit(document.name, document._id); Diese kann per entsprechender HTTP-POST-Operation auf den CouchDB-Server übertragen werden. Der Reduce Teil des Views ist dabei optional. Mit folgender Anfrage ist da daraufhin möglich diesen View zu betrachten: $ curl _view/by_name?key="eric Clapton" "total_rows":1, "offset":0, "rows":[ "id":"ae98eaf98dfef987af6756dfd655e", "key":"eric Clapton", "value":"ae98eaf98dfef987af6756dfd655e" ] 3) Multiversion Concurrency Control: CouchDB verwendet ein Verfahren namens Multiversion Concurrency Control. Es wird, statt ein Dokument bei einem Update zu überschreiben, eine weitere Version dieses Dokumentes gespeichert. Da es nun für eine ID mehrere Dokumente gibt, ist es notwendig, eine Revisionsnummer einzuführen, die innerhalb dieser ID wieder zu Eindeutigkeit führt. Der Hauptgrund für dieses Vorgehen ist, dass dadurch blockierende Schreib- / Lesezugriffe verhindert werden können. Statt die Update-Anfragen verschiedener Benutzer sequentiell abzuarbeiten wird jedes Dokument unter einer anderen Revision persistiert. Dieses Verhalten entspricht in etwa einem Versionsverwaltungssystem, allerdings kann bei CouchDB nicht gewährleistet werden, dass stets alle Versionen verfügbar sind. Durch Komprimierungsvorgänge und Replikation bei großen Datenmengen sind u.u. alte Revisionen nicht dauerhaft verfügbar[16]. CouchDB &ist an dieser Stelle sehr explizit bezüglich Konflikten. Es wird dem Benutzer der Datenbank überlassen, ggf. eine Konfliktbehandlung selbst durchzuführen. Für die Kommunikation wird dabei der entsprechende HTTP- Statuscode 409 -(Conflict) verwendet. VI. GRAPHENDATENBANKEN Die letzte und neueste Kategorie im Bereich NoSQL sind Graphendatenbanken. Hier wird für die Repräsentation von Daten ein Graph verwendet. Entsprechend gibt es die Konzepte von Konten und Kanten zwischen diesen Knoten. Sowohl an Kanten als auch an Knoten können Key-Value Paare angehängt werden, die die Daten enthalten. Der besondere Vorteil an Graphendatenbanken ist die Verwendung der vielen graphentheoritischen Algorithmen zum Traversieren von Graphen. Da in einem Graphen beliebige Knoten miteinander

6 6 verbunden sein können, gibt es normalerweise kein Schema für Graphendatenbanken. Der Einsatzzweck ist immer dort gegeben, wo man in RDBM-Systemen selbst referenzierende Entitäten oder Baumstrukturen vorfindet. Ein Beispiel dafür sind Freundschaftsbeziehungen in sozialen Netzwerken. Vertreter dieser Kategorie sind u.a. Neo4J und BigData. Bezüglich der Anfragesprachen gibt es im Bereich Graphendatenbanken im Gegensatz zu anderen Kategorien der NoS- QL Bewegung eine gewisse Konsolidierung, da die Art auf Graphen zuzugreifen sich in den Implementierungen nicht wesentlich unterscheidet. Ein bekannter Vertreter einer solchen Anfragesprache ist die domänenspezifische Sprache Gremlin, mit der es möglich ist auf verschiedene Datenbanken aus diesem Umfeld zuzugreifen. A. Semantic Web Datenbanken Eine Unterkategorie der Graphendatenbanken stellt der Bereich der Semantic Web Datenbanken dar. Diese Datenbanken ermöglichen den Zugriff auf Graphen, die aus RDF Triplen bestehen. Die Abfragesprache ist mit SPARQL / SPASQL (SPARQL innerhalb einer SQL Anfrage) allerdings fest definiert. Dieses feste Schema in der Abfrage, aber auch bei der Datenbasis (RDF-Tripel haben immer eine gewisse Struktur), ist der Hauptunterschied zu anderen Graphendatenbanken. VII. ZUSAMMENFASSUNG Der Bereich der NoSQL Datenbanksysteme ist äußerst vielfältig. Die einzelnen Kategorien unterscheiden sich im dem Grad, in dem Sie von dem klassischen, relationalen Modell abweichen. Dieser Grad hängt im Wesentlichen von folgenden beiden Eigenschaften ab: Kenntnisse über das Schema der Daten Flexibilität der Anfragen Einfache Key-Value Datenspeicher haben wenig Kenntnis über das Schema. Daher sind die Anfragearten gewissermaßen begrenzt. Die Anfragelogik wird in dieser Kategorie in Richtung der verwendenden Anwendung verschoben. Hybridmodelle, wie Spaltendatenbanken oder Dokumentenorientierte Datenbanken gehen hier einen Mittelweg, der einem entweder gewisse Schemastrukturen vorgibt und somit in der Lage ist, mehr Flexibilität in der Anfrage zu ermöglichen. Durch ihre unterschiedlichen Annahmen an Konsistenz (siehe CAP-Theorem) sind viele NoSQL Datenbanken in der Lage Hochverfügbarkeit und ein einfaches horizontales Skalieren zu ermöglichen. Nichtsdestotrotz gibt es auch weiterhin den Bedarf an relationalen Datenbanksystemen. Diese sind insbesondere dann von Vorteil, wenn die genaue Struktur der Daten zu Beginn festgelegt werden kann bzw. eine sehr große Anfrageflexibilität notwendig ist. Zusammenfassend lässt sich sagen, dass NoSQL Datenbanken das relationale Modell keineswegs ersetzen werden. Vielmehr ist es wahrscheinlich, dass diese beiden Welten in Koexistenz innerhalb eines Projektes verwendet werden, um die Vorteile, die beide Ansätze besitzen zu vereinen. LITERATUR [1] G. DeCandia, D. Hastorun, M. Jampani, G. Kakulapati, A. Lakshman, A. Pilchin, S. Sivasubramanian, P. Vosshall, and W. Vogels. Dynamo: Amazon s highly available key-value store. [Online]. Available: [2] S. Gilbert and N. Lynch. Brewer s conjecture and the feasibility of consistent, available, partition-tolerant web services. [Online]. Available: [3] D. E. A. Brewer. Towards robust distributed systems. [Online]. Available: brewer/cs262b-2004/ PODC-keynote.pdf [4]. Cap twelve years later: How the rules have changed. [Online]. Available: cap-twelve-years-later-how-the-rules-have-changed [5] W. Vogels. Eventually consistent - revisited. [Online]. Available: consistent.html [6] Memcached official website. [Online]. Available: [7] B. T. Inc. Riak official website. [Online]. Available: products/riak-overview/ [8] A. S. Foundation. Apache cassandra official website. [Online]. Available: [9] Amazon. Amazon dynamo db official website. [Online]. Available: [10] Citrusbyte. Redis official website. [Online]. Available: [11] G. Inc. Google protocol buffers: An overview. [Online]. Available: [12] curl official website. [Online]. Available: [13] B. T. Inc. Riak bucket explanation. [Online]. Available: http: //docs.basho.com/riak/1.2.1/references/appendices/concepts/buckets/ [14] J. Dean and S. Ghemawat. Mapreduce: Simplied data processing on large clusters. [Online]. Available: content/untrusted dlcp/research.google.com/de//archive/mapreduce-osdi04.pdf [15] E. Rahm, Mehrrechner-Datenbanksysteme: Grundlagen der verteilten und parallelen Datenbankverarbeitung. Addison-Wesley (Deutschland) GmbH, [16] Versioning docs in couchdb. [Online]. Available: design/sofa/ list/post/post-page?startkey= %5b%22Versioning-docs-in-CouchDB%22%5d

Überblick und Vergleich von NoSQL. Datenbanksystemen

Überblick und Vergleich von NoSQL. Datenbanksystemen Fakultät Informatik Hauptseminar Technische Informationssysteme Überblick und Vergleich von NoSQL Christian Oelsner Dresden, 20. Mai 2011 1 1. Einführung 2. Historisches & Definition 3. Kategorien von

Mehr

ISBN: 978-3-8428-0679-5 Herstellung: Diplomica Verlag GmbH, Hamburg, 2011

ISBN: 978-3-8428-0679-5 Herstellung: Diplomica Verlag GmbH, Hamburg, 2011 Nils Petersohn Vergleich und Evaluation zwischen modernen und traditionellen Datenbankkonzepten unter den Gesichtspunkten Skalierung, Abfragemöglichkeit und Konsistenz Diplomica Verlag Nils Petersohn Vergleich

Mehr

ANALYTICS, RISK MANAGEMENT & FINANCE ARCHITECTURE. NoSQL Datenbanksysteme Übersicht, Abgrenzung & Charakteristik

ANALYTICS, RISK MANAGEMENT & FINANCE ARCHITECTURE. NoSQL Datenbanksysteme Übersicht, Abgrenzung & Charakteristik ARFA ANALYTICS, RISK MANAGEMENT & FINANCE ARCHITECTURE NoSQL Datenbanksysteme Übersicht, Abgrenzung & Charakteristik Ralf Leipner Domain Architect Analytics, Risk Management & Finance 33. Berner Architekten

Mehr

SimpleVOC-Yetanother. Bausteine für eine Key/Value- Datenbank

SimpleVOC-Yetanother. Bausteine für eine Key/Value- Datenbank SimpleVOC-Yetanother Memcached? Bausteine für eine Key/Value- Datenbank SimpleVOC Yet another memcached? Bausteine für eine Key/Value Datenbank. Theorie (Martin Schönert) Praxis (Frank Celler) Eine Weisheit

Mehr

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Suche schlecht beschriftete Bilder mit Eigenen Abfragen Suche schlecht beschriftete Bilder mit Eigenen Abfragen Ist die Bilderdatenbank über einen längeren Zeitraum in Benutzung, so steigt die Wahrscheinlichkeit für schlecht beschriftete Bilder 1. Insbesondere

Mehr

Stefan Edlich Achim Friedland Jens Rampe Benjamin Brauer. NoSQL. Einstieg in die Welt nichtrelationaler Web 2.0 Datenbanken HANSER

Stefan Edlich Achim Friedland Jens Rampe Benjamin Brauer. NoSQL. Einstieg in die Welt nichtrelationaler Web 2.0 Datenbanken HANSER Stefan Edlich Achim Friedland Jens Rampe Benjamin Brauer NoSQL Einstieg in die Welt nichtrelationaler Web 2.0 Datenbanken HANSER Geleitwort 1 Vorwort 1 1 Einführung 1 1.1 Historie 1 1.2 Definition und

Mehr

Apache HBase. A BigTable Column Store on top of Hadoop

Apache HBase. A BigTable Column Store on top of Hadoop Apache HBase A BigTable Column Store on top of Hadoop Ich bin... Mitch Köhler Selbstständig seit 2010 Tätig als Softwareentwickler Softwarearchitekt Student an der OVGU seit Oktober 2011 Schwerpunkte Client/Server,

Mehr

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem Fachbericht zum Thema: Anforderungen an ein Datenbanksystem von André Franken 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis 1 2 Einführung 2 2.1 Gründe für den Einsatz von DB-Systemen 2 2.2 Definition: Datenbank

Mehr

Kapitel 4 Die Datenbank Kuchenbestellung Seite 1

Kapitel 4 Die Datenbank Kuchenbestellung Seite 1 Kapitel 4 Die Datenbank Kuchenbestellung Seite 1 4 Die Datenbank Kuchenbestellung In diesem Kapitel werde ich die Theorie aus Kapitel 2 Die Datenbank Buchausleihe an Hand einer weiteren Datenbank Kuchenbestellung

Mehr

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken Dateiname: ecdl5_01_00_documentation_standard.doc Speicherdatum: 14.02.2005 ECDL 2003 Basic Modul 5 Datenbank - Grundlagen

Mehr

NoSQL HANSER. Einstieg in die Web 2.0 Datenbanken. Stefan Edlich Achim Friedland Jens Hampe Benjamin Brauer Markus Brückner

NoSQL HANSER. Einstieg in die Web 2.0 Datenbanken. Stefan Edlich Achim Friedland Jens Hampe Benjamin Brauer Markus Brückner Stefan Edlich Achim Friedland Jens Hampe Benjamin Brauer Markus Brückner NoSQL Einstieg in die Web 2.0 Datenbanken 2., akutalisierte und erweiterte Auflage HANSER Geleitwort Vorwort Vorwort zur 2. Auflage

Mehr

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen Binäre Bäume 1. Allgemeines Binäre Bäume werden grundsätzlich verwendet, um Zahlen der Größe nach, oder Wörter dem Alphabet nach zu sortieren. Dem einfacheren Verständnis zu Liebe werde ich mich hier besonders

Mehr

25.09.2014. Zeit bedeutet eine Abwägung von Skalierbarkeit und Konsistenz

25.09.2014. Zeit bedeutet eine Abwägung von Skalierbarkeit und Konsistenz 1 2 Dies ist ein Vortrag über Zeit in verteilten Anwendungen Wir betrachten die diskrete "Anwendungszeit" in der nebenläufige Aktivitäten auftreten Aktivitäten in einer hochgradig skalierbaren (verteilten)

Mehr

Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER

Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER Abamsoft Finos in Verbindung mit der Webshopanbindung wurde speziell auf die Shop-Software shop to date von DATA BECKER abgestimmt. Mit

Mehr

Softwareentwicklungspraktikum Sommersemester 2007. Feinentwurf

Softwareentwicklungspraktikum Sommersemester 2007. Feinentwurf Softwareentwicklungspraktikum Sommersemester 2007 Feinentwurf Auftraggeber Technische Universität Braunschweig

Mehr

Übung: Verwendung von Java-Threads

Übung: Verwendung von Java-Threads Übung: Verwendung von Java-Threads Ziel der Übung: Diese Übung dient dazu, den Umgang mit Threads in der Programmiersprache Java kennenzulernen. Ein einfaches Java-Programm, das Threads nutzt, soll zum

Mehr

Datensicherung. Beschreibung der Datensicherung

Datensicherung. Beschreibung der Datensicherung Datensicherung Mit dem Datensicherungsprogramm können Sie Ihre persönlichen Daten problemlos Sichern. Es ist möglich eine komplette Datensicherung durchzuführen, aber auch nur die neuen und geänderten

Mehr

BüroWARE Exchange Synchronisation Grundlagen und Voraussetzungen

BüroWARE Exchange Synchronisation Grundlagen und Voraussetzungen BüroWARE Exchange Synchronisation Grundlagen und Voraussetzungen Stand: 13.12.2010 Die BüroWARE SoftENGINE ist ab Version 5.42.000-060 in der Lage mit einem Microsoft Exchange Server ab Version 2007 SP1

Mehr

Einführung in CouchDB

Einführung in CouchDB Einführung in CouchDB Zurücklehnen und entspannen! http://slog.io Thomas Schrader (@slogmen) 12/2010 Übersicht Bestandsaufnahme Ansatz Geschichte Technologien Features Skalierbarkeit Kurz & Gut Fazit Relationale

Mehr

Speicher in der Cloud

Speicher in der Cloud Speicher in der Cloud Kostenbremse, Sicherheitsrisiko oder Basis für die unternehmensweite Kollaboration? von Cornelius Höchel-Winter 2013 ComConsult Research GmbH, Aachen 3 SYNCHRONISATION TEUFELSZEUG

Mehr

Datenübernahme von HKO 5.9 zur. Advolux Kanzleisoftware

Datenübernahme von HKO 5.9 zur. Advolux Kanzleisoftware Datenübernahme von HKO 5.9 zur Advolux Kanzleisoftware Die Datenübernahme (DÜ) von HKO 5.9 zu Advolux Kanzleisoftware ist aufgrund der von Update zu Update veränderten Datenbank (DB)-Strukturen in HKO

Mehr

Fragenkatalog zum Kurs 1666 (Datenbanken in Rechnernetzen) Kurstext von SS 96

Fragenkatalog zum Kurs 1666 (Datenbanken in Rechnernetzen) Kurstext von SS 96 Fragenkatalog zum Kurs 1666 (Datenbanken in Rechnernetzen) Kurstext von SS 96 Dieser Fragenkatalog wurde aufgrund das Basistextes und zum Teil aus den Prüfungsprotokollen erstellt, um sich auf mögliche

Mehr

Allgemeines zu Datenbanken

Allgemeines zu Datenbanken Allgemeines zu Datenbanken Was ist eine Datenbank? Datensatz Zusammenfassung von Datenelementen mit fester Struktur Z.B.: Kunde Alois Müller, Hegenheimerstr. 28, Basel Datenbank Sammlung von strukturierten,

Mehr

Software Engineering Klassendiagramme Assoziationen

Software Engineering Klassendiagramme Assoziationen Software Engineering Klassendiagramme Assoziationen Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Lesen von Multiplizitäten (1) Multiplizitäten werden folgendermaßen

Mehr

Um ein solches Dokument zu erzeugen, muss eine Serienbriefvorlage in Word erstellt werden, das auf die von BüroWARE erstellte Datei zugreift.

Um ein solches Dokument zu erzeugen, muss eine Serienbriefvorlage in Word erstellt werden, das auf die von BüroWARE erstellte Datei zugreift. Briefe Schreiben - Arbeiten mit Word-Steuerformaten Ab der Version 5.1 stellt die BüroWARE über die Word-Steuerformate eine einfache Methode dar, Briefe sowie Serienbriefe mit Hilfe der Korrespondenzverwaltung

Mehr

Professionelle Seminare im Bereich MS-Office

Professionelle Seminare im Bereich MS-Office Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion

Mehr

RESTful Web. Representational State Transfer

RESTful Web. Representational State Transfer RESTful Web Representational State Transfer 1 Warum REST? REST ist die Lingua Franca des Webs Heterogene (verschiedenartige) Systeme können mit REST kommunizieren, unabhängig von Technologie der beteiligten

Mehr

Der Support für Windows Server 2003 endet endgültig alles was Ihnen dann noch bleibt ist diese Broschüre.

Der Support für Windows Server 2003 endet endgültig alles was Ihnen dann noch bleibt ist diese Broschüre. Der Support für Windows Server 2003 endet endgültig alles was Ihnen dann noch bleibt ist diese Broschüre. 14. Juli 2015. Der Tag, an dem in Ihrem Unternehmen das Licht ausgehen könnte. An diesem Tag stellt

Mehr

Primzahlen und RSA-Verschlüsselung

Primzahlen und RSA-Verschlüsselung Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also

Mehr

Kurzanleitung zu. von Daniel Jettka 18.11.2008

Kurzanleitung zu. von Daniel Jettka 18.11.2008 Kurzanleitung zu Tigris.org Open Source Software Engineering Tools von Daniel Jettka 18.11.2008 Inhaltsverzeichnis 1.Einführung...1 2.Das Projektarchivs...3 2.1.Anlegen des Projektarchivs...3 2.2.Organisation

Mehr

2.5.2 Primärschlüssel

2.5.2 Primärschlüssel Relationale Datenbanken 0110 01101110 01110 0110 0110 0110 01101 011 01110 0110 010 011011011 0110 01111010 01101 011011 0110 01 01110 011011101 01101 0110 010 010 0110 011011101 0101 0110 010 010 01 01101110

Mehr

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER Inhalt 1 Einleitung... 1 2 Einrichtung der Aufgabe für die automatische Sicherung... 2 2.1 Die Aufgabenplanung... 2 2.2 Der erste Testlauf... 9 3 Problembehebung...

Mehr

In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken.

In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken. In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access Die Grundlagen der Datenbanken kurspc15 Inhaltsverzeichnis Access... Fehler! Textmarke nicht

Mehr

mywms Vorlage Seite 1/5 mywms Datenhaltung von Haug Bürger

mywms Vorlage Seite 1/5 mywms Datenhaltung von Haug Bürger mywms Vorlage Seite 1/5 mywms Datenhaltung von Haug Bürger Grundlegendes Oracle9i PostgreSQL Prevayler Memory mywms bietet umfangreiche Konfigurationsmöglichkeiten um die Daten dauerhaft zu speichern.

Mehr

Datenübernahme easyjob 3.0 zu easyjob 4.0

Datenübernahme easyjob 3.0 zu easyjob 4.0 Datenübernahme easyjob 3.0 zu easyjob 4.0 Einführung...3 Systemanforderung easyjob 4.0...3 Vorgehensweise zur Umstellung zu easyjob 4.0...4 Installation easyjob 4.0 auf dem Server und Arbeitsstationen...4

Mehr

OPERATIONEN AUF EINER DATENBANK

OPERATIONEN AUF EINER DATENBANK Einführung 1 OPERATIONEN AUF EINER DATENBANK Ein Benutzer stellt eine Anfrage: Die Benutzer einer Datenbank können meist sowohl interaktiv als auch über Anwendungen Anfragen an eine Datenbank stellen:

Mehr

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER INHALTSVERZEICHNIS 1. Datenbanken 2. SQL 1.1 Sinn und Zweck 1.2 Definition 1.3 Modelle 1.4 Relationales Datenbankmodell 2.1 Definition 2.2 Befehle 3.

Mehr

Database Exchange Manager. Infinqa IT Solutions GmbH, Berlin Stralauer Allee 2 10245 Berlin Tel.:+49(0) 30 2900 8639 Fax.:+49(0) 30 2900 8695

Database Exchange Manager. Infinqa IT Solutions GmbH, Berlin Stralauer Allee 2 10245 Berlin Tel.:+49(0) 30 2900 8639 Fax.:+49(0) 30 2900 8695 Database Exchange Manager Replication Service- schematische Darstellung Replication Service- allgemeines Replikation von Daten von bzw. in ein SAP-System und einer relationalen DMS-Datenbank Kombination

Mehr

Guide DynDNS und Portforwarding

Guide DynDNS und Portforwarding Guide DynDNS und Portforwarding Allgemein Um Geräte im lokalen Netzwerk von überall aus über das Internet erreichen zu können, kommt man um die Themen Dynamik DNS (kurz DynDNS) und Portweiterleitung(auch

Mehr

Prof. Dr.-Ing. Rainer Schmidt 1

Prof. Dr.-Ing. Rainer Schmidt 1 Prof. Dr.-Ing. Rainer Schmidt 1 Business Analytics und Big Data sind Thema vieler Veröffentlichungen. Big Data wird immer häufiger bei Google als Suchbegriff verwendet. Prof. Dr.-Ing. Rainer Schmidt 2

Mehr

Hilfe zur Urlaubsplanung und Zeiterfassung

Hilfe zur Urlaubsplanung und Zeiterfassung Hilfe zur Urlaubsplanung und Zeiterfassung Urlaubs- und Arbeitsplanung: Mit der Urlaubs- und Arbeitsplanung kann jeder Mitarbeiter in Coffee seine Zeiten eintragen. Die Eintragung kann mit dem Status anfragen,

Mehr

IRF2000 Application Note Lösung von IP-Adresskonflikten bei zwei identischen Netzwerken

IRF2000 Application Note Lösung von IP-Adresskonflikten bei zwei identischen Netzwerken Version 2.0 1 Original-Application Note ads-tec GmbH IRF2000 Application Note Lösung von IP-Adresskonflikten bei zwei identischen Netzwerken Stand: 27.10.2014 ads-tec GmbH 2014 IRF2000 2 Inhaltsverzeichnis

Mehr

Outsourcing und Offshoring. Comelio und Offshoring/Outsourcing

Outsourcing und Offshoring. Comelio und Offshoring/Outsourcing Outsourcing und Offshoring Comelio und Offshoring/Outsourcing INHALT Outsourcing und Offshoring... 3 Comelio und Offshoring/Outsourcing... 4 Beauftragungsmodelle... 4 Projektleitung vor Ort und Software-Entwicklung

Mehr

1. Einführung. 2. Archivierung alter Datensätze

1. Einführung. 2. Archivierung alter Datensätze 1. Einführung Mit wachsender Datenmenge und je nach Konfiguration, kann orgamax mit der Zeit langsamer werden. Es gibt aber diverse Möglichkeiten, die Software wieder so zu beschleunigen, als würden Sie

Mehr

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge Ab der Version forma 5.5 handelt es sich bei den Orientierungshilfen der Architekten-/Objektplanerverträge nicht

Mehr

Informatik 12 Datenbanken SQL-Einführung

Informatik 12 Datenbanken SQL-Einführung Informatik 12 Datenbanken SQL-Einführung Gierhardt Vorbemerkungen Bisher haben wir Datenbanken nur über einzelne Tabellen kennen gelernt. Stehen mehrere Tabellen in gewissen Beziehungen zur Beschreibung

Mehr

Facebook I-Frame Tabs mit Papoo Plugin erstellen und verwalten

Facebook I-Frame Tabs mit Papoo Plugin erstellen und verwalten Facebook I-Frame Tabs mit Papoo Plugin erstellen und verwalten Seit Anfang Juni 2012 hat Facebook die Static FBML Reiter deaktiviert, so wird es relativ schwierig für Firmenseiten eigene Impressumsreiter

Mehr

Lokale Installation von DotNetNuke 4 ohne IIS

Lokale Installation von DotNetNuke 4 ohne IIS Lokale Installation von DotNetNuke 4 ohne IIS ITM GmbH Wankelstr. 14 70563 Stuttgart http://www.itm-consulting.de Benjamin Hermann hermann@itm-consulting.de 12.12.2006 Agenda Benötigte Komponenten Installation

Mehr

2. Einrichtung der ODBC-Schnittstelle aus orgamax (für 32-bit-Anwendungen)

2. Einrichtung der ODBC-Schnittstelle aus orgamax (für 32-bit-Anwendungen) 1. Einführung: Über den ODBC-Zugriff können Sie bestimmte Daten aus Ihren orgamax-mandanten in anderen Anwendungen (beispielsweise Microsoft Excel oder Microsoft Access) einlesen. Dies bietet sich beispielsweise

Mehr

Durchführung der Datenübernahme nach Reisekosten 2011

Durchführung der Datenübernahme nach Reisekosten 2011 Durchführung der Datenübernahme nach Reisekosten 2011 1. Starten Sie QuickSteuer Deluxe 2010. Rufen Sie anschließend über den Menüpunkt /Extras/Reisekosten Rechner den QuickSteuer Deluxe 2010 Reisekosten-Rechner,

Mehr

Umstellung des Schlüsselpaares der Elektronischen Unterschrift von A003 (768 Bit) auf A004 (1024 Bit)

Umstellung des Schlüsselpaares der Elektronischen Unterschrift von A003 (768 Bit) auf A004 (1024 Bit) Umstellung des Schlüsselpaares der Elektronischen Unterschrift von A003 (768 Bit) auf A004 (1024 Bit) 1. Einleitung Die Elektronische Unterschrift (EU) dient zur Autorisierung und Integritätsprüfung von

Mehr

Update und Konfiguraton mit dem ANTLOG Konfigurations-Assistenten

Update und Konfiguraton mit dem ANTLOG Konfigurations-Assistenten Update und Konfiguraton mit dem ANTLOG Konfigurations-Assistenten Der Konfigurations-Assistent wurde entwickelt, um die unterschiedlichen ANTLOG-Anwendungen auf den verschiedensten Umgebungen automatisiert

Mehr

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b AGROPLUS Buchhaltung Daten-Server und Sicherheitskopie Version vom 21.10.2013b 3a) Der Daten-Server Modus und der Tresor Der Daten-Server ist eine Betriebsart welche dem Nutzer eine grosse Flexibilität

Mehr

Einführung in. Logische Schaltungen

Einführung in. Logische Schaltungen Einführung in Logische Schaltungen 1/7 Inhaltsverzeichnis 1. Einführung 1. Was sind logische Schaltungen 2. Grundlegende Elemente 3. Weitere Elemente 4. Beispiel einer logischen Schaltung 2. Notation von

Mehr

Anforderungen an die HIS

Anforderungen an die HIS Anforderungen an die HIS Zusammengefasst aus den auf IBM Software basierenden Identity Management Projekten in NRW Michael Uebel uebel@de.ibm.com Anforderung 1 IBM Software Group / Tivoli Ein Feld zum

Mehr

Reporting Services und SharePoint 2010 Teil 1

Reporting Services und SharePoint 2010 Teil 1 Reporting Services und SharePoint 2010 Teil 1 Abstract Bei der Verwendung der Reporting Services in Zusammenhang mit SharePoint 2010 stellt sich immer wieder die Frage bei der Installation: Wo und Wie?

Mehr

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt Inhaltsverzeichnis Aufgabe... 1 Allgemein... 1 Active Directory... 1 Konfiguration... 2 Benutzer erstellen... 3 Eigenes Verzeichnis erstellen... 3 Benutzerkonto erstellen... 3 Profil einrichten... 5 Berechtigungen

Mehr

SharePoint Demonstration

SharePoint Demonstration SharePoint Demonstration Was zeigt die Demonstration? Diese Demonstration soll den modernen Zugriff auf Daten und Informationen veranschaulichen und zeigen welche Vorteile sich dadurch in der Zusammenarbeit

Mehr

Step by Step Webserver unter Windows Server 2003. von Christian Bartl

Step by Step Webserver unter Windows Server 2003. von Christian Bartl Step by Step Webserver unter Windows Server 2003 von Webserver unter Windows Server 2003 Um den WWW-Server-Dienst IIS (Internet Information Service) zu nutzen muss dieser zunächst installiert werden (wird

Mehr

Beschreibung und Bedienungsanleitung. Inhaltsverzeichnis: Abbildungsverzeichnis: Werkzeug für verschlüsselte bpks. Dipl.-Ing.

Beschreibung und Bedienungsanleitung. Inhaltsverzeichnis: Abbildungsverzeichnis: Werkzeug für verschlüsselte bpks. Dipl.-Ing. www.egiz.gv.at E-Mail: post@egiz.gv.at Telefon: ++43 (316) 873 5514 Fax: ++43 (316) 873 5520 Inffeldgasse 16a / 8010 Graz / Austria Beschreibung und Bedienungsanleitung Werkzeug für verschlüsselte bpks

Mehr

Typisierung des Replikationsplan Wirries, Denis Datenbankspezialist

Typisierung des Replikationsplan Wirries, Denis Datenbankspezialist Typisierung des Replikationsplan Wirries, Denis Datenbankspezialist Feintypisierung - Überblick Ergebnisse Ergebnisse aus aus anderen anderen Arbeitsergebnissen Arbeitsergebnissen Replikationsplan Replikationsplan

Mehr

XAMPP-Systeme. Teil 3: My SQL. PGP II/05 MySQL

XAMPP-Systeme. Teil 3: My SQL. PGP II/05 MySQL XAMPP-Systeme Teil 3: My SQL Daten Eine Wesenseigenschaft von Menschen ist es, Informationen, in welcher Form sie auch immer auftreten, zu ordnen, zu klassifizieren und in strukturierter Form abzulegen.

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als

Mehr

Eigenen WSUS Server mit dem UNI WSUS Server Synchronisieren

Eigenen WSUS Server mit dem UNI WSUS Server Synchronisieren Verwaltungsdirektion Informatikdienste Eigenen WSUS Server mit dem UNI WSUS Server Synchronisieren Inhaltsverzeichnis Einleitung... 3 Installation WSUS Server... 4 Dokumente... 4 Step by Step Installation...

Mehr

Kommunikations-Management

Kommunikations-Management Tutorial: Wie kann ich E-Mails schreiben? Im vorliegenden Tutorial lernen Sie, wie Sie in myfactory E-Mails schreiben können. In myfactory können Sie jederzeit schnell und einfach E-Mails verfassen egal

Mehr

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage: Zählen und Zahlbereiche Übungsblatt 1 1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage: Für alle m, n N gilt m + n = n + m. in den Satz umschreiben:

Mehr

White Paper. Konfiguration und Verwendung des Auditlogs. 2012 Winter Release

White Paper. Konfiguration und Verwendung des Auditlogs. 2012 Winter Release White Paper Konfiguration und Verwendung des Auditlogs 2012 Winter Release Copyright Fabasoft R&D GmbH, A-4020 Linz, 2011. Alle Rechte vorbehalten. Alle verwendeten Hard- und Softwarenamen sind Handelsnamen

Mehr

Hinweise zum Update des KPP Auswahltools (Netzwerkinstallation) auf Version 7.2

Hinweise zum Update des KPP Auswahltools (Netzwerkinstallation) auf Version 7.2 Hinweise zum Update des KPP Auswahltools (Netzwerkinstallation) auf Version 7.2 Installationsvoraussetzungen: Die Update-Routine benötigt das DotNet-Framework 4.0 Client Profile, das normalerweise über

Mehr

E-Mail-Inhalte an cobra übergeben

E-Mail-Inhalte an cobra übergeben E-Mail-Inhalte an cobra übergeben Sie bieten ihren potentiellen oder schon bestehenden Kunden über ihre Website die Möglichkeit, per Bestellformular verschiedene Infomaterialien in Papierform abzurufen?

Mehr

Multicast Security Group Key Management Architecture (MSEC GKMArch)

Multicast Security Group Key Management Architecture (MSEC GKMArch) Multicast Security Group Key Management Architecture (MSEC GKMArch) draft-ietf-msec-gkmarch-07.txt Internet Security Tobias Engelbrecht Einführung Bei diversen Internetanwendungen, wie zum Beispiel Telefonkonferenzen

Mehr

Updatehinweise für die Version forma 5.5.5

Updatehinweise für die Version forma 5.5.5 Updatehinweise für die Version forma 5.5.5 Seit der Version forma 5.5.0 aus 2012 gibt es nur noch eine Office-Version und keine StandAlone-Version mehr. Wenn Sie noch mit der alten Version forma 5.0.x

Mehr

Klausurteilnehmer. Wichtige Hinweise. Note: Klausur Informatik Programmierung, 17.09.2012 Seite 1 von 8 HS OWL, FB 7, Malte Wattenberg.

Klausurteilnehmer. Wichtige Hinweise. Note: Klausur Informatik Programmierung, 17.09.2012 Seite 1 von 8 HS OWL, FB 7, Malte Wattenberg. Klausur Informatik Programmierung, 17.09.2012 Seite 1 von 8 Klausurteilnehmer Name: Matrikelnummer: Wichtige Hinweise Es sind keinerlei Hilfsmittel zugelassen auch keine Taschenrechner! Die Klausur dauert

Mehr

Übungen zur Softwaretechnik

Übungen zur Softwaretechnik Technische Universität München Fakultät für Informatik Lehrstuhl IV: Software & Systems Engineering Markus Pister, Dr. Bernhard Rumpe WS 2002/2003 Lösungsblatt 9 17. Dezember 2002 www4.in.tum.de/~rumpe/se

Mehr

3. Stored Procedures und PL/SQL

3. Stored Procedures und PL/SQL 3. Stored Procedures und PL/SQL Wenn eine Anwendung auf einer Client-Maschine läuft, wird normalerweise jede SQL-Anweisung einzeln vom Client an den Server gesandt, und jedes Ergebnistupel wird einzeln

Mehr

Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0)

Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0) Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0) Peter Koos 03. Dezember 2015 0 Inhaltsverzeichnis 1 Voraussetzung... 3 2 Hintergrundinformationen... 3 2.1 Installationsarten...

Mehr

Internet Explorer Version 6

Internet Explorer Version 6 Internet Explorer Version 6 Java Runtime Ist Java Runtime nicht installiert, öffnet sich ein PopUp-Fenster, welches auf das benötigte Plugin aufmerksam macht. Nach Klicken auf die OK-Taste im PopUp-Fenster

Mehr

CNAME-Record Verknüpfung einer Subdomain mit einer anderen Subdomain. Ein Alias für einen Domainnamen.

CNAME-Record Verknüpfung einer Subdomain mit einer anderen Subdomain. Ein Alias für einen Domainnamen. Seite 1 von 5 Nameserver Fragen zu den Nameservereinstellungen df FAQ Technische FAQ Nameserver Welche Nameserver-Records stehen zur Verfügung? Bei domainfactory können folgende Nameservereinträge erstellt

Mehr

.procmailrc HOWTO. zur Mailfilterung und Verteilung. Stand: 01.01.2011

.procmailrc HOWTO. zur Mailfilterung und Verteilung. Stand: 01.01.2011 .procmailrc HOWTO zur Mailfilterung und Verteilung Stand: 01.01.2011 Copyright 2002-2003 by manitu. Alle Rechte vorbehalten. Alle verwendeten Bezeichnungen dienen lediglich der Kennzeichnung und können

Mehr

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Seite erstellen Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Es öffnet sich die Eingabe Seite um eine neue Seite zu erstellen. Seiten Titel festlegen Den neuen

Mehr

1 Einführung... 25. 2 Die Grundlagen... 55. 3 Praxis 1 das Kassenbuch (zentraler CouchDB-Server)... 139. 4 Praxis 2 das Kassenbuch als CouchApp...

1 Einführung... 25. 2 Die Grundlagen... 55. 3 Praxis 1 das Kassenbuch (zentraler CouchDB-Server)... 139. 4 Praxis 2 das Kassenbuch als CouchApp... Auf einen Blick 1 Einführung... 25 2 Die Grundlagen... 55 3 Praxis 1 das Kassenbuch (zentraler CouchDB-Server)... 139 4 Praxis 2 das Kassenbuch als CouchApp... 161 5 CouchDB-Administration... 199 6 Bestehende

Mehr

Kurzanleitung. MEYTON Aufbau einer Internetverbindung. 1 Von 11

Kurzanleitung. MEYTON Aufbau einer Internetverbindung. 1 Von 11 Kurzanleitung MEYTON Aufbau einer Internetverbindung 1 Von 11 Inhaltsverzeichnis Installation eines Internetzugangs...3 Ist mein Router bereits im MEYTON Netzwerk?...3 Start des YAST Programms...4 Auswahl

Mehr

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress. Anmeldung http://www.ihredomain.de/wp-admin Dashboard Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress. Das Dashboard gibt Ihnen eine kurze Übersicht, z.b. Anzahl der Beiträge,

Mehr

7. Übung - Datenbanken

7. Übung - Datenbanken 7. Übung - Datenbanken Informatik I für Verkehrsingenieure Aufgaben inkl. Beispiellösungen 1. Aufgabe: DBS a Was ist die Kernaufgabe von Datenbanksystemen? b Beschreiben Sie kurz die Abstraktionsebenen

Mehr

Lieferschein Dorfstrasse 143 CH - 8802 Kilchberg Telefon 01 / 716 10 00 Telefax 01 / 716 10 05 info@hp-engineering.com www.hp-engineering.

Lieferschein Dorfstrasse 143 CH - 8802 Kilchberg Telefon 01 / 716 10 00 Telefax 01 / 716 10 05 info@hp-engineering.com www.hp-engineering. Lieferschein Lieferscheine Seite 1 Lieferscheine Seite 2 Inhaltsverzeichnis 1. STARTEN DER LIEFERSCHEINE 4 2. ARBEITEN MIT DEN LIEFERSCHEINEN 4 2.1 ERFASSEN EINES NEUEN LIEFERSCHEINS 5 2.1.1 TEXTFELD FÜR

Mehr

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7 Einrichtung des Cisco VPN Clients (IPSEC) in Windows7 Diese Verbindung muss einmalig eingerichtet werden und wird benötigt, um den Zugriff vom privaten Rechner oder der Workstation im Home Office über

Mehr

Kapiteltests zum Leitprogramm Binäre Suchbäume

Kapiteltests zum Leitprogramm Binäre Suchbäume Kapiteltests zum Leitprogramm Binäre Suchbäume Björn Steffen Timur Erdag überarbeitet von Christina Class Binäre Suchbäume Kapiteltests für das ETH-Leitprogramm Adressaten und Institutionen Das Leitprogramm

Mehr

Vermeiden Sie es sich bei einer deutlich erfahreneren Person "dranzuhängen", Sie sind persönlich verantwortlich für Ihren Lernerfolg.

Vermeiden Sie es sich bei einer deutlich erfahreneren Person dranzuhängen, Sie sind persönlich verantwortlich für Ihren Lernerfolg. 1 2 3 4 Vermeiden Sie es sich bei einer deutlich erfahreneren Person "dranzuhängen", Sie sind persönlich verantwortlich für Ihren Lernerfolg. Gerade beim Einstig in der Programmierung muss kontinuierlich

Mehr

Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen

Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen 9 3 Web Services 3.1 Überblick Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen mit Hilfe von XML über das Internet ermöglicht (siehe Abb.

Mehr

Installation SQL- Server 2012 Single Node

Installation SQL- Server 2012 Single Node Installation SQL- Server 2012 Single Node Dies ist eine Installationsanleitung für den neuen SQL Server 2012. Es beschreibt eine Single Node Installation auf einem virtuellen Windows Server 2008 R2 mit

Mehr

Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten

Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten 2008 netcadservice GmbH netcadservice GmbH Augustinerstraße 3 D-83395 Freilassing Dieses Programm ist urheberrechtlich geschützt. Eine Weitergabe

Mehr

SEPA Lastschriften. Ergänzung zur Dokumentation vom 27.01.2014. Workshop Software GmbH Siemensstr. 21 47533 Kleve 02821 / 731 20 02821 / 731 299

SEPA Lastschriften. Ergänzung zur Dokumentation vom 27.01.2014. Workshop Software GmbH Siemensstr. 21 47533 Kleve 02821 / 731 20 02821 / 731 299 SEPA Lastschriften Ergänzung zur Dokumentation vom 27.01.2014 Workshop Software GmbH Siemensstr. 21 47533 Kleve 02821 / 731 20 02821 / 731 299 www.workshop-software.de Verfasser: SK info@workshop-software.de

Mehr

Handbuch Fischertechnik-Einzelteiltabelle V3.7.3

Handbuch Fischertechnik-Einzelteiltabelle V3.7.3 Handbuch Fischertechnik-Einzelteiltabelle V3.7.3 von Markus Mack Stand: Samstag, 17. April 2004 Inhaltsverzeichnis 1. Systemvorraussetzungen...3 2. Installation und Start...3 3. Anpassen der Tabelle...3

Mehr

1 Mathematische Grundlagen

1 Mathematische Grundlagen Mathematische Grundlagen - 1-1 Mathematische Grundlagen Der Begriff der Menge ist einer der grundlegenden Begriffe in der Mathematik. Mengen dienen dazu, Dinge oder Objekte zu einer Einheit zusammenzufassen.

Mehr

Folge 19 - Bäume. 19.1 Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12

Folge 19 - Bäume. 19.1 Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12 Grundlagen: Folge 19 - Bäume 19.1 Binärbäume - Allgemeines Unter Bäumen versteht man in der Informatik Datenstrukturen, bei denen jedes Element mindestens zwei Nachfolger hat. Bereits in der Folge 17 haben

Mehr

Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me

Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me Bevor Sie die Platte zum ersten Mal benutzen können, muss sie noch partitioniert und formatiert werden! Vorher zeigt sich die Festplatte

Mehr

Windows Vista Security

Windows Vista Security Marcel Zehner Windows Vista Security ISBN-10: 3-446-41356-1 ISBN-13: 978-3-446-41356-6 Leseprobe Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-41356-6 sowie im Buchhandel

Mehr

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen Open Source professionell einsetzen 1 Mein Background Ich bin überzeugt von Open Source. Ich verwende fast nur Open Source privat und beruflich. Ich arbeite seit mehr als 10 Jahren mit Linux und Open Source.

Mehr

Einfache und effiziente Zusammenarbeit in der Cloud. EASY-PM Office Add-Ins Handbuch

Einfache und effiziente Zusammenarbeit in der Cloud. EASY-PM Office Add-Ins Handbuch Einfache und effiziente Zusammenarbeit in der Cloud EASY-PM Office Add-Ins Handbuch Inhaltsverzeichnis 1. Einführung... 3 2. Ribbonmenü... 4 3. Dokument... 5 3.1 Öffnen... 5 3.2 Speichern... 6 3.3 Speichern

Mehr