Einbinden von fremden Datenquellen

Was sind externe Datenquellen?

Populär sind Anbieter wie Facebook, Instagram, Twitter etc. aber auch Immobilienplattformen, PKW Plattformen etc..

Die Pflege der Daten sollte nur in einem System erfolgen und anschließend in die verschiedenen Medien importiert und direkt verarbeitet genutzt werden. Doppelte Pflege ist redundant und auch wenig zeit- und kostenschonend.

Welche Möglichkeiten zur Nutzung von externen Datenquellen es gibt hängt davon ab, welche Möglichkeiten das datenführende System bietet. Bei den oben genannten gibt es zumeist sog. Schnistellenbeschreibungen (API‘s), die eine direkte Möglichkeit bieten, die Daten zu Erhalten. Oft werden dazu sog. REST Schnittstellen mit Authentifizierung genutzt, welche auch schreibende Methoden bieten können.

Auslesen und Anzeigen von Daten

Prinzipiell sollten die Performance und die Möglichkeiten der Abfrage einer API bestimmen, ob die Daten direkt ins gewünschte Format gewandelt angezeigt werden oder ob diese zunächst in die TYPO3 Datenbank eingetragen werden. Direkt angezeigt bedeutet, dass die Daten nicht vorher in die Datenbank geschrieben werden.

Bei der Abfrage eines zweiten Servers wird immer eine Verbindung (Request) aufgebaut, welcher natürlich gewisse Latenzen und Antwortzeiten beinhaltet. Darüber hinaus kann es entscheiden sein, ob die API Schnittstelle des Anbieters auch die Manipulation der Ergebnismenge ermöglicht. Dies bedeutet genauer betrachtet, dass Schnittstellen bei denen immer nur die gesamten Daten geliefert werden eher ungeeignet zur direkten Ausgabe sind. Besser wäre in diesem Fall das Importieren in die TYPO3 DB, da dies deutlich schneller sein würde.

Importieren der Daten in die TYPO3 DB

Ist die API Schnittstelle nicht in der Lage die Ergebnismenge zu filtern, so ist die zu erwartende Datenmenge nicht selten sehr groß. Zudem bedeutet dies, dass eine Manipulation manuell erfolgen muß. Ein Beispiel ist eine detaillierte Kategorisierung von Datensätzen, welche im TYPO3 Frontend diverse Filtermöglichkeiten bereitstellen soll.

In dem Fall macht ein Import mehr Sinn, da durch die Angaben des Benutzers im Frontend die Anfragen erstellt werden. Dies geschieht i.d.R. mit sogenannten AJAX Calls, welche die Seite nicht einmal verlassen und somit auch für mobile Nutzer keine Hürde darstellen.