![Page 1: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/1.jpg)
Analytik in der DB
Analytik in der DatenbankModellanwendung näher an den Daten
Balázs Bárány
Berater für Analytik und Data Warehousing
Linuxtage Graz 2014
![Page 2: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/2.jpg)
Analytik in der DB
Inhalt
Überblick und GrundlagenVorgehensmodell
Analytische Modellierung
Modellanwendung in der DatenbankEinfache ModellartenKomplexe Modelle
PL/R in PostgreSQL
![Page 3: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/3.jpg)
Analytik in der DB
Überblick und Grundlagen
Analytik bzw. analytics
I Deskriptiv
I Prädiktiv
I Explorativ
I Statistik, Data Mining, KDD, Machine Learning, DataScience, ...?
I Anwendungsfelder
I Klassi�zierung, Regression, Assoziation, Clustering
![Page 4: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/4.jpg)
Analytik in der DB
Überblick und Grundlagen
Analytik bzw. analytics
I Deskriptiv
I Prädiktiv
I Explorativ
I Statistik, Data Mining, KDD, Machine Learning, DataScience, ...?
I Anwendungsfelder
I Klassi�zierung, Regression, Assoziation, Clustering
![Page 5: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/5.jpg)
Analytik in der DB
Überblick und Grundlagen
Analytik bzw. analytics
I Deskriptiv
I Prädiktiv
I Explorativ
I Statistik, Data Mining, KDD, Machine Learning, DataScience, ...?
I Anwendungsfelder
I Klassi�zierung, Regression, Assoziation, Clustering
![Page 6: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/6.jpg)
Analytik in der DB
Überblick und Grundlagen
Methoden und Werkzeuge
I Verfahren und Algorithmen
I InformiertI Uninformiert
I Software
I Open Source: R, RapidMiner, Weka, KNIME, ...I Proprietär: SPSS, SAS, ...
![Page 7: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/7.jpg)
Analytik in der DB
Überblick und Grundlagen
Methoden und Werkzeuge
I Verfahren und Algorithmen
I InformiertI Uninformiert
I Software
I Open Source: R, RapidMiner, Weka, KNIME, ...I Proprietär: SPSS, SAS, ...
![Page 8: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/8.jpg)
Analytik in der DB
Überblick und Grundlagen
Freie Werkzeuge
I RapidMiner
I �Commercial source model�I Community-Version von Sourceforge.net und GithubI Aktuelle Version 6: interaktives Tutorial,Usability-Verbesserungen
I R �environment for statistical computing and graphics�
I Befehlszeile, SkriptingI GUIs
![Page 9: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/9.jpg)
Analytik in der DB
Überblick und Grundlagen
Freie Werkzeuge
I RapidMiner
I �Commercial source model�I Community-Version von Sourceforge.net und GithubI Aktuelle Version 6: interaktives Tutorial,Usability-Verbesserungen
I R �environment for statistical computing and graphics�
I Befehlszeile, SkriptingI GUIs
![Page 10: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/10.jpg)
Analytik in der DB
Überblick und Grundlagen
Vorgehensmodell
Data-Mining-Prozess
Cross Industry Standard Process for Data Mining, Kenneth Jensen/Wikimedia Commons
![Page 11: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/11.jpg)
Analytik in der DB
Überblick und Grundlagen
Vorgehensmodell
Themen dieses Vortrags
Cross Industry Standard Process for Data Mining, Kenneth Jensen/Wikimedia Commons
![Page 12: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/12.jpg)
Analytik in der DB
Überblick und Grundlagen
Vorgehensmodell
Projekt in der Praxis
I Daten liegen in einer relationalen Datenbank
I Analyse, Modellerstellung, Evaluierung in der Analysesoftware
I Ziel: Anwendung des Modells auf neue Daten
I Neue Daten lesen, ID-Feld zwischenspeichernI Modell anwendenI Ergebnis zurückschreiben
I Probleme:
I Ine�ziente RoundtripsI Interaktion zwischen mehreren SystemenI Batch-Verarbeitung, Latenz
![Page 13: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/13.jpg)
Analytik in der DB
Überblick und Grundlagen
Vorgehensmodell
Projekt in der Praxis
I Daten liegen in einer relationalen Datenbank
I Analyse, Modellerstellung, Evaluierung in der Analysesoftware
I Ziel: Anwendung des Modells auf neue Daten
I Neue Daten lesen, ID-Feld zwischenspeichernI Modell anwendenI Ergebnis zurückschreiben
I Probleme:
I Ine�ziente RoundtripsI Interaktion zwischen mehreren SystemenI Batch-Verarbeitung, Latenz
![Page 14: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/14.jpg)
Analytik in der DB
Überblick und Grundlagen
Vorgehensmodell
Projekt in der Praxis
I Daten liegen in einer relationalen Datenbank
I Analyse, Modellerstellung, Evaluierung in der Analysesoftware
I Ziel: Anwendung des Modells auf neue Daten
I Neue Daten lesen, ID-Feld zwischenspeichernI Modell anwendenI Ergebnis zurückschreiben
I Probleme:
I Ine�ziente RoundtripsI Interaktion zwischen mehreren SystemenI Batch-Verarbeitung, Latenz
![Page 15: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/15.jpg)
Analytik in der DB
Überblick und Grundlagen
Vorgehensmodell
Projekt in der Praxis
I Daten liegen in einer relationalen Datenbank
I Analyse, Modellerstellung, Evaluierung in der Analysesoftware
I Ziel: Anwendung des Modells auf neue Daten
I Neue Daten lesen, ID-Feld zwischenspeichernI Modell anwendenI Ergebnis zurückschreiben
I Probleme:
I Ine�ziente RoundtripsI Interaktion zwischen mehreren SystemenI Batch-Verarbeitung, Latenz
![Page 16: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/16.jpg)
Analytik in der DB
Überblick und Grundlagen
Vorgehensmodell
Integration in die Datenerfassung
I Etwas besser:
I Integrierte Software
I Ablösung des Legacy-Systems?
I Integration über o�ene Schnittstellen
I Webservices, remote procedure calls, ...
I Predictive Model Markup Language (PMML)
I Integration in den Datenbankserver
![Page 17: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/17.jpg)
Analytik in der DB
Überblick und Grundlagen
Vorgehensmodell
Integration in die Datenerfassung
I Etwas besser:
I Integrierte Software
I Ablösung des Legacy-Systems?
I Integration über o�ene Schnittstellen
I Webservices, remote procedure calls, ...
I Predictive Model Markup Language (PMML)
I Integration in den Datenbankserver
![Page 18: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/18.jpg)
Analytik in der DB
Überblick und Grundlagen
Vorgehensmodell
Integration in die Datenerfassung
I Etwas besser:
I Integrierte Software
I Ablösung des Legacy-Systems?
I Integration über o�ene Schnittstellen
I Webservices, remote procedure calls, ...
I Predictive Model Markup Language (PMML)
I Integration in den Datenbankserver
![Page 19: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/19.jpg)
Analytik in der DB
Überblick und Grundlagen
Vorgehensmodell
Integration in die Datenerfassung
I Etwas besser:
I Integrierte Software
I Ablösung des Legacy-Systems?
I Integration über o�ene Schnittstellen
I Webservices, remote procedure calls, ...
I Predictive Model Markup Language (PMML)
I Integration in den Datenbankserver
![Page 20: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/20.jpg)
Analytik in der DB
Überblick und Grundlagen
Vorgehensmodell
Integration in die Datenerfassung
I Etwas besser:
I Integrierte Software
I Ablösung des Legacy-Systems?
I Integration über o�ene Schnittstellen
I Webservices, remote procedure calls, ...
I Predictive Model Markup Language (PMML)
I Integration in den Datenbankserver
![Page 21: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/21.jpg)
Analytik in der DB
Analytische Modellierung
Modellierungsverfahren
I Lineare Regression
I Gleichung in der Form y = ax+b
I Erweiterungen: nicht normalverteilte Daten, nichtlinear,multivariat
I Naive-Bayes-Methode
I Entscheidungsbäume
I Support Vector Machines
I ... und viele mehr
![Page 22: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/22.jpg)
Analytik in der DB
Analytische Modellierung
Modellierungsverfahren
I Lineare Regression
I Gleichung in der Form y = ax+b
I Erweiterungen: nicht normalverteilte Daten, nichtlinear,multivariat
I Naive-Bayes-Methode
I Entscheidungsbäume
I Support Vector Machines
I ... und viele mehr
![Page 23: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/23.jpg)
Analytik in der DB
Analytische Modellierung
Modellierungsverfahren
I Lineare Regression
I Gleichung in der Form y = ax+b
I Erweiterungen: nicht normalverteilte Daten, nichtlinear,multivariat
I Naive-Bayes-Methode
I Entscheidungsbäume
I Support Vector Machines
I ... und viele mehr
![Page 24: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/24.jpg)
Analytik in der DB
Analytische Modellierung
Modellierungsverfahren
I Lineare Regression
I Gleichung in der Form y = ax+b
I Erweiterungen: nicht normalverteilte Daten, nichtlinear,multivariat
I Naive-Bayes-Methode
I Entscheidungsbäume
I Support Vector Machines
I ... und viele mehr
![Page 25: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/25.jpg)
Analytik in der DB
Analytische Modellierung
Modellierungsverfahren
I Lineare Regression
I Gleichung in der Form y = ax+b
I Erweiterungen: nicht normalverteilte Daten, nichtlinear,multivariat
I Naive-Bayes-Methode
I Entscheidungsbäume
I Support Vector Machines
I ... und viele mehr
![Page 26: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/26.jpg)
Analytik in der DB
Analytische Modellierung
Modellierungsverfahren
I Lineare Regression
I Gleichung in der Form y = ax+b
I Erweiterungen: nicht normalverteilte Daten, nichtlinear,multivariat
I Naive-Bayes-Methode
I Entscheidungsbäume
I Support Vector Machines
I ... und viele mehr
![Page 27: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/27.jpg)
Analytik in der DB
Analytische Modellierung
Beispiel: lineare Regression
I Fragestellung: Höchstgeschwindigkeit von �Kurvigkeit� desStraÿenabschnitts abhängig?
I Methode: Länge des Straÿenabschnitts / Länge der Geradenzwischen Start- und Endpunkt
Beispiel
> mod <- lm(geschw ~ kurvigkeit, data=strkurv)
> coef(mod)
(Intercept) kurvigkeit
86.14846 -63.79144
![Page 28: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/28.jpg)
Analytik in der DB
Analytische Modellierung
Beispiel: lineare Regression
I Fragestellung: Höchstgeschwindigkeit von �Kurvigkeit� desStraÿenabschnitts abhängig?
I Methode: Länge des Straÿenabschnitts / Länge der Geradenzwischen Start- und Endpunkt
Beispiel
> mod <- lm(geschw ~ kurvigkeit, data=strkurv)
> coef(mod)
(Intercept) kurvigkeit
86.14846 -63.79144
![Page 29: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/29.jpg)
Analytik in der DB
Analytische Modellierung
Beispiel: Entscheidungsbaum
I Fragestellung: Darf die Straÿe mit Fahrrädern befahrenwerden?
I Methode: Entscheidungsbaum in RapidMiner
![Page 30: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/30.jpg)
Analytik in der DB
Analytische Modellierung
Beispiel: Entscheidungsbaum
I Fragestellung: Darf die Straÿe mit Fahrrädern befahrenwerden?
I Methode: Entscheidungsbaum in RapidMiner
![Page 31: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/31.jpg)
Analytik in der DB
Analytische Modellierung
Komplexer Entscheidungsbaum
genauer, aber viel komplexer!
![Page 32: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/32.jpg)
Analytik in der DB
Modellanwendung in der Datenbank
Einfache Modellarten
Modelle in SQL-Datenbanken
I Lineare Regression und Varianten: trivial
I Parameter eintragen, View oder Stored Procedure erstellen undaktualisieren
Beispiel
CREATE VIEW maxspeed_prediction ASSELECT osm_id,GREATEST(86.14846 + -63.79144 * (ST_Length(geo) / ST_Distance(ST_StartPoint(geo), ST_EndPoint(geo)) - 1),20.0
) AS maxspeed_predFROM österreich_strasseWHERE maxspeed is nullAND ST_Distance(ST_StartPoint(geo), ST_EndPoint(geo)) > 0
![Page 33: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/33.jpg)
Analytik in der DB
Modellanwendung in der Datenbank
Einfache Modellarten
Variante für einfachere Wartung
I View-Lösung nicht leicht automatisch zu aktualisieren
I Besser: Parameter-Tabelle und Funktion
Beispiel
CREATE TABLE maxspeed_pred_param (intercept double precision, kurvigkeit double precision
);
CREATE FUNCTION kurvigkeit ... ;
SELECT osm_id, GREATEST(20.0,mpp.intercept + mpp.kurvigkeit * kurvigkeit(way)
) AS maxspeed_predFROM osm_austria_roadsCROSS JOIN maxspeed_pred_param mpp ;
![Page 34: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/34.jpg)
Analytik in der DB
Modellanwendung in der Datenbank
Einfache Modellarten
Regelbasierte Modelle
I Entscheidungsbäume und Rule-Modelle in SQLI Baum: Pfade verfolgen, Entscheidungen in CASE WHEN ...THEN überführen
I �Tree to Rules�-Operator in RapidMiner
Beispiel
1 if oneway = no then yes (608 / 439)2 if oneway = yes and highway = motorway then no (0 / 32)3 if oneway = yes and highway = motorway_link then no (0 / 5)4 if oneway = yes and highway = primary then no (44 / 256)5 if oneway = yes and highway = primary_link then no (2 / 82)6 if oneway = yes and highway = residential then yes (5 / 0)7 if oneway = yes and highway = secondary then no (11 / 47)8 if oneway = yes and highway = secondary_link then no (2 / 3)9 if oneway = yes and highway = trunk then no (0 / 28)10 if oneway = yes and highway = trunk_link then no (0 / 11)11 if oneway = yes and highway = unclassi�ed then yes (2 / 0)
![Page 35: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/35.jpg)
Analytik in der DB
Modellanwendung in der Datenbank
Einfache Modellarten
Regelbasierte Modelle
I Entscheidungsbäume und Rule-Modelle in SQLI Baum: Pfade verfolgen, Entscheidungen in CASE WHEN ...THEN überführen
I �Tree to Rules�-Operator in RapidMiner
Beispiel
1 if oneway = no then yes (608 / 439)2 if oneway = yes and highway = motorway then no (0 / 32)3 if oneway = yes and highway = motorway_link then no (0 / 5)4 if oneway = yes and highway = primary then no (44 / 256)5 if oneway = yes and highway = primary_link then no (2 / 82)6 if oneway = yes and highway = residential then yes (5 / 0)7 if oneway = yes and highway = secondary then no (11 / 47)8 if oneway = yes and highway = secondary_link then no (2 / 3)9 if oneway = yes and highway = trunk then no (0 / 28)10 if oneway = yes and highway = trunk_link then no (0 / 11)11 if oneway = yes and highway = unclassi�ed then yes (2 / 0)
![Page 36: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/36.jpg)
Analytik in der DB
Modellanwendung in der Datenbank
Einfache Modellarten
Regeln in SQL überführt
I Syntaxänderungen für SQL
Beispiel
SELECT osm_id,
CASE WHEN oneway = 'no' THEN true
WHEN oneway = 'yes' AND highway = 'motorway' THEN false
WHEN oneway = 'yes' AND highway = 'residential' THEN true
WHEN ...
ELSE null
END as fahrrad_erlaubt
FROM osm_austria_roads;
Wartung aufwändig und fehleranfällig!
![Page 37: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/37.jpg)
Analytik in der DB
Modellanwendung in der Datenbank
Komplexe Modelle
Komplexe Modelle
I komplexe Datenstrukturen und Berechnungen
I schwer in SQL abzubilden, Wartungsaufwand bei Änderungen
I Muÿ es SQL sein?
I PostgreSQL ist multilingualI PL/Perl, PL/Python, PL/JavaScript, PL/Java ...
I PL/R
![Page 38: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/38.jpg)
Analytik in der DB
Modellanwendung in der Datenbank
Komplexe Modelle
Komplexe Modelle
I komplexe Datenstrukturen und Berechnungen
I schwer in SQL abzubilden, Wartungsaufwand bei Änderungen
I Muÿ es SQL sein?
I PostgreSQL ist multilingualI PL/Perl, PL/Python, PL/JavaScript, PL/Java ...
I PL/R
![Page 39: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/39.jpg)
Analytik in der DB
Modellanwendung in der Datenbank
Komplexe Modelle
Komplexe Modelle
I komplexe Datenstrukturen und Berechnungen
I schwer in SQL abzubilden, Wartungsaufwand bei Änderungen
I Muÿ es SQL sein?
I PostgreSQL ist multilingualI PL/Perl, PL/Python, PL/JavaScript, PL/Java ...
I PL/R
![Page 40: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/40.jpg)
Analytik in der DB
PL/R in PostgreSQL
Überblick: PL/R
I Erstes Release 2003
I Oracle: 2010 (mind. 23.000 $)
I Aktuelle Version 8.3.0.15 für PostgreSQL 9.3
I Lizenz: GPL
![Page 41: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/41.jpg)
Analytik in der DB
PL/R in PostgreSQL
Überblick: PL/R
I Erstes Release 2003
I Oracle: 2010 (mind. 23.000 $)
I Aktuelle Version 8.3.0.15 für PostgreSQL 9.3
I Lizenz: GPL
![Page 42: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/42.jpg)
Analytik in der DB
PL/R in PostgreSQL
Überblick: PL/R
I Erstes Release 2003
I Oracle: 2010 (mind. 23.000 $)
I Aktuelle Version 8.3.0.15 für PostgreSQL 9.3
I Lizenz: GPL
![Page 43: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/43.jpg)
Analytik in der DB
PL/R in PostgreSQL
Überblick: PL/R
I Erstes Release 2003
I Oracle: 2010 (mind. 23.000 $)
I Aktuelle Version 8.3.0.15 für PostgreSQL 9.3
I Lizenz: GPL
![Page 44: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/44.jpg)
Analytik in der DB
PL/R in PostgreSQL
Sicherheitsüberlegungen
I Installation als �untrusted language�
I Funktionen erstellen nur als Datenbankadministrator
I Freigabe der Ausführung für unprivilegierte Benutzer
Beispiel
# Mit Admin-Rechten
CREATE FUNCTION r_add(zahl1 double precision, zahl2 double
precision)
RETURNS double precision AS $func$
return(zahl1 + zahl2)
$func$
LANGUAGE 'plr';
GRANT EXECUTE ON FUNCTION r_add(double precision, double
precision)
TO normaluser;
![Page 45: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/45.jpg)
Analytik in der DB
PL/R in PostgreSQL
Sicherheitsüberlegungen
I Installation als �untrusted language�
I Funktionen erstellen nur als Datenbankadministrator
I Freigabe der Ausführung für unprivilegierte Benutzer
Beispiel
# Mit Admin-Rechten
CREATE FUNCTION r_add(zahl1 double precision, zahl2 double
precision)
RETURNS double precision AS $func$
return(zahl1 + zahl2)
$func$
LANGUAGE 'plr';
GRANT EXECUTE ON FUNCTION r_add(double precision, double
precision)
TO normaluser;
![Page 46: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/46.jpg)
Analytik in der DB
PL/R in PostgreSQL
Sicherheitsüberlegungen
I Installation als �untrusted language�
I Funktionen erstellen nur als Datenbankadministrator
I Freigabe der Ausführung für unprivilegierte Benutzer
Beispiel
# Mit Admin-Rechten
CREATE FUNCTION r_add(zahl1 double precision, zahl2 double
precision)
RETURNS double precision AS $func$
return(zahl1 + zahl2)
$func$
LANGUAGE 'plr';
GRANT EXECUTE ON FUNCTION r_add(double precision, double
precision)
TO normaluser;
![Page 47: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/47.jpg)
Analytik in der DB
PL/R in PostgreSQL
Sicherheitsüberlegungen
I Installation als �untrusted language�
I Funktionen erstellen nur als Datenbankadministrator
I Freigabe der Ausführung für unprivilegierte Benutzer
Beispiel
# Mit Admin-Rechten
CREATE FUNCTION r_add(zahl1 double precision, zahl2 double
precision)
RETURNS double precision AS $func$
return(zahl1 + zahl2)
$func$
LANGUAGE 'plr';
GRANT EXECUTE ON FUNCTION r_add(double precision, double
precision)
TO normaluser;
![Page 48: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/48.jpg)
Analytik in der DB
PL/R in PostgreSQL
Funktionalität
I Aggregations- und Window-Funktionen
I Trigger-Funktionen in R
I Datenbankabfragen, PostgreSQL-Umgebung
I Gleichnamige R-Funktion ohne Funktions-Body einbinden
Beispiel
# Liefert n normalverteilte Zufallszahlen
CREATE FUNCTION rnorm(n integer, mean double precision, sd
double precision)
RETURNS double precision[]
AS �
LANGUAGE 'plr';
![Page 49: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/49.jpg)
Analytik in der DB
PL/R in PostgreSQL
Funktionalität
I Aggregations- und Window-Funktionen
I Trigger-Funktionen in R
I Datenbankabfragen, PostgreSQL-Umgebung
I Gleichnamige R-Funktion ohne Funktions-Body einbinden
Beispiel
# Liefert n normalverteilte Zufallszahlen
CREATE FUNCTION rnorm(n integer, mean double precision, sd
double precision)
RETURNS double precision[]
AS �
LANGUAGE 'plr';
![Page 50: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/50.jpg)
Analytik in der DB
PL/R in PostgreSQL
Funktionalität
I Aggregations- und Window-Funktionen
I Trigger-Funktionen in R
I Datenbankabfragen, PostgreSQL-Umgebung
I Gleichnamige R-Funktion ohne Funktions-Body einbinden
Beispiel
# Liefert n normalverteilte Zufallszahlen
CREATE FUNCTION rnorm(n integer, mean double precision, sd
double precision)
RETURNS double precision[]
AS �
LANGUAGE 'plr';
![Page 51: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/51.jpg)
Analytik in der DB
PL/R in PostgreSQL
Funktionalität
I Aggregations- und Window-Funktionen
I Trigger-Funktionen in R
I Datenbankabfragen, PostgreSQL-Umgebung
I Gleichnamige R-Funktion ohne Funktions-Body einbinden
Beispiel
# Liefert n normalverteilte Zufallszahlen
CREATE FUNCTION rnorm(n integer, mean double precision, sd
double precision)
RETURNS double precision[]
AS �
LANGUAGE 'plr';
![Page 52: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/52.jpg)
Analytik in der DB
PL/R in PostgreSQL
Implementierung einer Vorhersagefunktion
Vorbereitungen
I Benötigte Funktionen im R-Interpreter anlegen
einmalig:
Beispiel
select install_rcmd('meinefunktion <-function(x)
{print(x)}
');
permanent: Tabelle plr_modules
I Funktionskontext vs. globaler Kontext
![Page 53: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/53.jpg)
Analytik in der DB
PL/R in PostgreSQL
Implementierung einer Vorhersagefunktion
Vorbereitungen
I Benötigte Funktionen im R-Interpreter anlegen
einmalig:
Beispiel
select install_rcmd('meinefunktion <-function(x)
{print(x)}
');
permanent: Tabelle plr_modules
I Funktionskontext vs. globaler Kontext
![Page 54: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/54.jpg)
Analytik in der DB
PL/R in PostgreSQL
Implementierung einer Vorhersagefunktion
Vorbereitungen
I Benötigte Funktionen im R-Interpreter anlegen
einmalig:
Beispiel
select install_rcmd('meinefunktion <-function(x)
{print(x)}
');
permanent: Tabelle plr_modules
I Funktionskontext vs. globaler Kontext
![Page 55: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/55.jpg)
Analytik in der DB
PL/R in PostgreSQL
Implementierung einer Vorhersagefunktion
Vorbereitungen
I Benötigte Funktionen im R-Interpreter anlegen
einmalig:
Beispiel
select install_rcmd('meinefunktion <-function(x)
{print(x)}
');
permanent: Tabelle plr_modules
I Funktionskontext vs. globaler Kontext
![Page 56: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/56.jpg)
Analytik in der DB
PL/R in PostgreSQL
Daten und Modelle in PL/R bringen
I Entwicklung des Modells am DesktopI Speichern: save(objekt, file="/pfad/zu/objekt.Rdata")
I (Übertragung auf den Server oder gemeinsames Dateisystem)
I Laden in den Datenbankserver
I load("/pfad/zu/objekt.Rdata", .GlobalEnv)
I Beim Start aus der plr_modules-Tabelle
Beispiel
for (datafile in Sys.glob("/pfad/*.Rdata")) {
load(datafile, .GlobalEnv)
}
![Page 57: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/57.jpg)
Analytik in der DB
PL/R in PostgreSQL
Daten und Modelle in PL/R bringen
I Entwicklung des Modells am DesktopI Speichern: save(objekt, file="/pfad/zu/objekt.Rdata")
I (Übertragung auf den Server oder gemeinsames Dateisystem)
I Laden in den Datenbankserver
I load("/pfad/zu/objekt.Rdata", .GlobalEnv)
I Beim Start aus der plr_modules-Tabelle
Beispiel
for (datafile in Sys.glob("/pfad/*.Rdata")) {
load(datafile, .GlobalEnv)
}
![Page 58: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/58.jpg)
Analytik in der DB
PL/R in PostgreSQL
Daten und Modelle in PL/R bringen
I Entwicklung des Modells am DesktopI Speichern: save(objekt, file="/pfad/zu/objekt.Rdata")
I (Übertragung auf den Server oder gemeinsames Dateisystem)
I Laden in den Datenbankserver
I load("/pfad/zu/objekt.Rdata", .GlobalEnv)
I Beim Start aus der plr_modules-Tabelle
Beispiel
for (datafile in Sys.glob("/pfad/*.Rdata")) {
load(datafile, .GlobalEnv)
}
![Page 59: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/59.jpg)
Analytik in der DB
PL/R in PostgreSQL
Daten und Modelle in PL/R bringen
I Entwicklung des Modells am DesktopI Speichern: save(objekt, file="/pfad/zu/objekt.Rdata")
I (Übertragung auf den Server oder gemeinsames Dateisystem)
I Laden in den Datenbankserver
I load("/pfad/zu/objekt.Rdata", .GlobalEnv)
I Beim Start aus der plr_modules-Tabelle
Beispiel
for (datafile in Sys.glob("/pfad/*.Rdata")) {
load(datafile, .GlobalEnv)
}
![Page 60: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/60.jpg)
Analytik in der DB
PL/R in PostgreSQL
Anwendung des Modells in der Datenbank
Beispiel
CREATE OR REPLACE FUNCTION bicycle_vorhersage(
highway TEXT, maxspeed TEXT, oneway TEXT
) RETURNS TEXT AS $func$
daten <- data.frame(bicycle=NA,
highway=highway, maxspeed=maxspeed, oneway=oneway)
bicycle <- predict(bicycle_mod_modell, newdata=daten)
return(as.character(bicycle))
$func$ LANGUAGE 'plr';
I Anwendung:
Beispiel
select bicycle_vorhersage('residential', '70', 'yes');
no
select bicycle_vorhersage('residential', '30', 'no');
yes
![Page 61: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/61.jpg)
Analytik in der DB
PL/R in PostgreSQL
Anwendung des Modells in der Datenbank
Beispiel
CREATE OR REPLACE FUNCTION bicycle_vorhersage(
highway TEXT, maxspeed TEXT, oneway TEXT
) RETURNS TEXT AS $func$
daten <- data.frame(bicycle=NA,
highway=highway, maxspeed=maxspeed, oneway=oneway)
bicycle <- predict(bicycle_mod_modell, newdata=daten)
return(as.character(bicycle))
$func$ LANGUAGE 'plr';
I Anwendung:
Beispiel
select bicycle_vorhersage('residential', '70', 'yes');
no
select bicycle_vorhersage('residential', '30', 'no');
yes
![Page 62: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/62.jpg)
Analytik in der DB
PL/R in PostgreSQL
Vorhersage in der Tabelle nachtragen
Beispiel
UPDATE osm_austria_roads
SET bicycle = bicycle_vorhersage(coalesce(highway, 'NA'),
coalesce(maxspeed, 'NA'), coalesce(oneway, 'NA'))
WHERE highway = 'residential'
AND oneway = 'yes'
AND bicycle IS NULL;
![Page 63: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/63.jpg)
Analytik in der DB
PL/R in PostgreSQL
Probleme
I character <> factor
I NULL <> NA
I Datenbankzugri� aus PL/R
I allgemein: viel Ausprobieren und Übung
![Page 64: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/64.jpg)
Analytik in der DB
PL/R in PostgreSQL
Probleme
I character <> factor
I NULL <> NA
I Datenbankzugri� aus PL/R
I allgemein: viel Ausprobieren und Übung
![Page 65: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/65.jpg)
Analytik in der DB
PL/R in PostgreSQL
Probleme
I character <> factor
I NULL <> NA
I Datenbankzugri� aus PL/R
I allgemein: viel Ausprobieren und Übung
![Page 66: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/66.jpg)
Analytik in der DB
PL/R in PostgreSQL
Probleme
I character <> factor
I NULL <> NA
I Datenbankzugri� aus PL/R
I allgemein: viel Ausprobieren und Übung
![Page 67: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/67.jpg)
Analytik in der DB
Ausblick
Ausblick
I RapidMiner mit PL/Java
I Python-basierte Modelle mit PL/Python
I Direkte Erweiterungen in der Datenbank
I PMML-Unterstützung
![Page 68: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/68.jpg)
Analytik in der DB
Ausblick
Ausblick
I RapidMiner mit PL/Java
I Python-basierte Modelle mit PL/Python
I Direkte Erweiterungen in der Datenbank
I PMML-Unterstützung
![Page 69: Analytik in der Datenbank - glt14-programm.linuxtage.at · Analytik in der DB Überblick und Grundlagen Analytik bzw. analytics I Deskriptiv I Prädiktiv I Explorativ I Statistik,](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5d58cfcf88c993793d8baf90/html5/thumbnails/69.jpg)
Analytik in der DB
Ausblick
Ausblick
I RapidMiner mit PL/Java
I Python-basierte Modelle mit PL/Python
I Direkte Erweiterungen in der Datenbank
I PMML-Unterstützung