Autor Thema: Neue Idee: NoSQL-Datenbank  (Gelesen 1571 mal)

Martin Lemke

  • Administrator
  • *****
  • Beiträge: 14272
  • TK 2130 Lübeck, Schleswig-Holstein, Germany
    • Spinnenerfassung in SH
Neue Idee: NoSQL-Datenbank
« am: 2017-08-20 15:00:44 »
Der Vorteil eine NoSQL-Datenbank liegt unter anderem darin, dass nicht alle Datensätze die selben Datenfelder haben müssen. Die Daten werden nicht in einer Tabelle gespeichert, sondern in Dokumenten. Bei CouchDB sind das JavaScript-Dokumente.

Hier mal ein als Beispiel mit dem System CouchDB:
{
  "_id": "4548991b739bacaf7ac5a9d8f500720b",
  "_rev": "6-a03408c70ed7c9811063db302db286e1",
  "family": "Linyphiidae",
  "name": {
    "genus": "Walckenaeria",
    "spec": "acuminata"
  },
  "gender": "m",
  "size": {
    "min": 2.8,
    "max": 3.2
  },
  "head": [
    "rised"
  ],
  "color": {
    "prosoma": [
      "uni",
      "black"
    ],
    "opisthosoma": [
      "uni",
      "grey"
    ],
    "legs": [
      "uni",
      "yellow brown"
    ]
  }
}


Ich stehe noch ganz am Anfang, mich mit CouchDB vertraut zu machen und auch die bestellte Literatur zum Thema ist bei mir noch nicht eingetroffen. Ich glaube aber, dass das System Potential hat.

Die Abfrage erfolgt nicht mit SQL, sondern mit JavaScripten. Die Kommunikation erfolgt über JSON über das HTTPS-Protokoll und ist damit sehr einfach in Skripte (z.B. PHP) einzubauen.

Ich muss noch einiges über die Abfragemöglichkeiten lernen. Im Moment läuft CouchDB auf meinem Laptop.

Wenn man jetzt alle Arten auf diese Weise typisieren wollte, wäre das nicht zu bewältigen. Aber ich will ein paar Arten eingeben, vielleicht besonders knifflige. Erstmal nur zum Rumspielen. Ich liebäugle auch mit der Einbindung von Bilderlinks.

Falls es wirklich funktioniert und sich als echte Bestimmungshilfe erweist, wäre es ein langfristiges Projekt. Im Moment sind nur die in Deutschland vorkommenden Walckenaeria-Arten drin. Der Teildatensatz 'color' (Bsp. oben) existiert nur beim Männchen von W. acuminata. Es gibt noch eine Reihe von Hürden, wie etwa ungenaue Daten. So gibt ROBERTS bisweilen andere Körperlängen an als araneae. Da ist Fehlertoleranz gefragt.

Die momentane experimentelle Datenstruktur muss nicht der Weißheit letzter Schluss sein. Aber man fängt sinnvollerweise immer mit einfachen Lösungen an, wenn man sich einarbeiten und experimentieren möchte.

CouchDB können wir leider auf arages.de nicht installieren. Ich plane daher, einen externen Coudserver dafür anzumieten (10 €/Monat) ist mir das wert. Aber zunächst riecht mir mein Laptop.

Martin