Im Folgenden finden Sie eine Step-by-Step Anleitung zur Installation und Konfiguration aller benötigten Komponenten für die Verbindung von R mit der Exasol Community Edition in einer Windows Umgebung. Der Blogbeitrag basiert auf einem Webinar vom 13.05.2016, auf das wir an dieser Stelle in Kürze verlinken. Falls Sie einige Komponeten bereits im Einsatz haben, können Sie den jeweiligen Installationsschritt einfach überspringen.
R und RStudio
Zunächst muss R installiert werden. Die aktuelle Version finden Sie zum Beispiel unter https://cran.uni-muenster.de/. Bei der Installation können Default Einstelllungen beibehalten werden. R bringt zwar eine kleine IDE mit, diese ist jedoch sehr spartanisch ausgestattet. Daher ist es empfehlenswert, eine eigenständige IDE zu verwenden. Derzeit ist RStudio für die meisten Anwendungsfälle die beste Wahl. Der Installer findet sich unter https://www.rstudio.com/products/rstudio/download/.
Bei der Installation wird die Verbindung zu R automatisch hergestellt. Wenn nach dem Start von RStudio im Konsolenfenster eine Startmessage von R zu sehen ist und eine Eingabeaufforderung mit einem „>“, dann ist RStudio bereit. Bevor es mit RStudio weitergeht, müssen noch weitere Komponenten installiert werden.
Exasol Free Edition
Die Exasol Free Edition wird als Virtuelle Maschine (VM) ausgeliefert. Um sie zu starten, wird eine Virtualisierungssoftware benötigt. Dazu bietet sich die VirtualBox an, die von Oracle kostenlos zur Verfügung gestellt wird: https://www.virtualbox.org/wiki/Downloads. Virtual Box for Windows hosts unter VirtualBox platform packages ist die richtige Variante.
Ist die VirtualBox installiert, muss noch die Community Edition der Exasol als geladen werden. Diese findet sich hier: https://www.exasol.com/portal/display/DOWNLOAD/Free+Trial. Nach dem Download wird die VM in die Virtual Box importiert. Dazu in der Virtual Box auf Datei –> Appliance importieren klicken und den Download der Exasol Community Edition auswählen. Dieser befindet sich meist im Standarddownloadverzeichnis des Webbrowsers, mit dem die Exasol Community Edition heruntergeladen wurde. Der Import kann einige Minuten dauern.
Ist der Import fertig, muss noch eine Einstellung geändert werden. Dazu die Exasol in der Virtual Box einmal anklicken, so dass der Eintrag blau hinterlegt ist und dann auf Ändern klicken.
Screenshot 1
Im aufpoppenden Dialog auf Netzwerk und dort Angeschlossen an auf Netzwerkbrücke setzen. Außerdem den Hacken bei Netzwerkadapter aktivieren setzen und mit OK bestätigen.
Screenshot 2
Jetzt kann die Exasol per Doppelklick oder über den Starten Button gebootet werden. Nach einiger Zeit erscheint ein Fenster, dass zwei IP Adressen anzeigt. Die Erste (DB connection string) wird für die Verbindung mit R benötigt. Über die Zweite (EXAoperation URL) lässt sich die Exasol Administrationsoberfläche erreichen.
Screenshot 3
In dieser Oberfläche können R Pakete in die R Instanzen auf den Exasol Clustern installiert werden .
Dazu die IP in einen Webbrowser kopieren und diese Zugangsdaten Benutzer: admin / Passwort: admin eingeben. Möglicherweise erscheint ein Hinweis des Browsers, dass die aufgerufene Seite nicht vertrauenswürdig ist. Um auf den Administrationsbereich zu kommen, muss in diesem Fall eine Ausnahme hinzugefügt werden.
Zunächst müssen die Netzwerkeinstellungen angepasst werden. Dazu in der Liste links auf Network klicken. Unter System müssen nun folgende Einstellungen verändert werden. Um die benötigten Informatinen zu bekommen, in der Windows Kommandozeile (cmd) ipconfig eingeben. Screenshot 4 und 5 zeigen die für den Übertrag benötigten Informationen.
- Public Network Address: Dieser Eintrag steht im rot umrahmten Bereich der ipconfig Ausgabe unter IPv4-Adresse. Der letzte Ziffernblock (in diesem Fall 13) muss durch eine 0 ersetzt werden. Die Angabe nach dem „/“ lässt sich aus der Subnetzmaske entehmen: Ist die Subnetzmask 255.255.0.0 lautet der Eintrag 16 wie im Beispiel. Ist die Subnetzmaske 255.255.255.0 muss 24 eingetragen werden.
- Default Gateway: Hier wird der Eintrag Standardgateway aus der ipconfig Ausage verwendet.
- DNS Server 1: Auch an dieser Stelle ist die IP des Standardgateway aus der ipconfig Ausage einzutragen.
- DNS Server 2: Als Backup optional die DNS IP von google: 8.8.8.8.
Screenshot 4
Screenshot 5
Sind die Netzwerkeinstellungen gesetzt, geht es in der Administrationsoberfläche unter Software weiter. Dort auf den Reiter UDF Libraries. Dann auf den Add Button.
Screenshot 6
In das Dialogfeld wird der Name des Pakets eingegeben, das installiert werden soll sowie das Repository, von dem das Paket installiert werden soll. Wichtig ist, die http Variante statt der https Veriante zu verwenden (im Beispiel: https://cran.uni-muenster.de). Ansonsten schlägt die Installation fehl. Die Language auf R stellen. Dann auf Add klicken. Es können nur Pakete verwendet werden, die R Versionen nicht größer als derzeit 3.0.2 voraussetzen.
Screenshot 7
Um die Installation abzuschließen, das Paket in der Liste per Radio-Button auswählen und auf Install klicken. War die Installation erfolgreich, verändert sich der Status in der Spalte State auf Installed.
Um die Verbindung zwischen R und der Exasol herstellen zu können, brauchen wir noch einen ODBC Treiber. Dieser kann unter https://www.exasol.com/portal/display/DOWNLOAD/Version+5.0.14 heruntergeladen werden. Unter Download ODBC Driver den Installer EXASolution_ODBC-5.0.14-x86.msi für 32-bit Architekturen bzw. EXASolution_ODBC-5.0.14-x86_64.msi für 64-bit Architekturen runterladen und per Doppelklick installieren.
Nach der Installation auf Systemsteuerung –> Verwaltung –> ODBC je nach System in der 32 oder 64 bit Variante klicken. Auf Hinzufügen klicken und den EXASolution Driver auswählen.
Screenshot 8
Bei der Konfiguration des Treibers müssen Benutzername und Passwort sowie die IP der Exasol angegeben werden. Diese Informationen finden sich im Fenster der Exsol VM (siehe Screenshot 3).
Screenshot 9
Der Name der Datenquelle ist frei wählbar, sollte aber notiert werden. Wir brauchen ihn später bei der Verbindung mit R.
Redis
Redis ist eine schlanke Key-Value Datenbank, mit der sich Datenobjekte verschiedener Sprachen (R, Phython, Lua etc.) über das Netzwerk austauschen lassen. Eine ideale Ergänzung in der Exasol R Kombination, denn so lassen sich Datamining Modelle oder Funktionen auf die Netzwerkcluster verteilen.
Zur Installation muss zunächst der Installer geladen und installiert werden. Er findet sich hier: https://github.com/MSOpenTech/redis/releases
Bei der Installation wird eine Portnummer angegeben. Diese sollte nicht geändert werden. Nach der Installation in den Ordner gehen, in den Redis installiert wurde, vermutlich unter C:\Programm Files\Redis. Dort Redis mit einem Doppelklick auf redis-server.exe starten.
R Konfiguration und die Verbindung testen
Zunächst müssen alle notwenidgen Pakte installiert werden. Neben den Paketen, die eine Verbindung zur Exasol und Redis herstellen, kommt für das folgende Demo noch rpart, stringi und partykit dazu.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
# Zu installierende Pakete festlegen…
pkg < – c(„RODBC“, „rredis“, „stringi“, „magrittr“, „rpart“, „partykit“, „devtools“)
install.packages(pkg)
Das Paket ‚devtools‘ muss geladen werden, bevor Exasol von Github installiert werden kann
library(devtools)
install_github(„EXASOL/r-exasol“)
#Laden der übrigen Pakete
library(RODBC)
library(rredis)
library(exasol)
library(stringi)
library(magrittr)
library(rpart)
library(partykit)
|
Wenn alle Pakete installiert und geladen sind, kannn die Verbindung zur Exasol und zu Redis getestet werden. Zur Verbindung mit Redis muss die IP des PC angegeben werden, auf der Redis läuft. Diese findet sich unter IPv4-Adresse in Screenshot 4.
Zunächst wird ein ODBC Verbindungsobjekt erstellt, dass bei allen Datenbankoperationen verwendet wird. Das Argument enthält den Namen, so wie er beim Einrichten der ODBC Verbindung angegeben worden ist (siehe Screenshot 9).
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
# Erstellen des Verbindungsobjekts
con < – odbcConnect(„exasol_vm“)
# Verbinden mit Redis
redisConnect(„172.20.248.13“)
A <– 2
# Speichern von A in Redis
redisSet(„Test“, A)
# Entfernen von A
rm(A)
# Wenn der Wert 2 angezeigt wird, steht die Verbindung zu Redis
redisGet(„Test“)
|
Nachdem die Installation und Konfiguration abgeschlossen ist, kann die R / Exasol Verbindung für Dataminig, Machine Learning oder andere Analyseverfahren verwendet werden. Ein Beispiel mit ausführbarem Code finden Sie hier.
Im Folgenden finden Sie eine Step-by-Step Anleitung zur Installation und Konfiguration aller benötigten Komponenten für die Verbindung von R mit der Exasol Community Edition in einer Windows Umgebung. Der Blogbeitrag basiert auf einem Webinar vom 13.05.2016, auf das wir an dieser Stelle in Kürze verlinken. Falls Sie einige Komponeten bereits im Einsatz haben, können Sie den jeweiligen Installationsschritt einfach überspringen.
R und RStudio
Zunächst muss R installiert werden. Die aktuelle Version finden Sie zum Beispiel unter https://cran.uni-muenster.de/. Bei der Installation können Default Einstelllungen beibehalten werden. R bringt zwar eine kleine IDE mit, diese ist jedoch sehr spartanisch ausgestattet. Daher ist es empfehlenswert, eine eigenständige IDE zu verwenden. Derzeit ist RStudio für die meisten Anwendungsfälle die beste Wahl. Der Installer findet sich unter https://www.rstudio.com/products/rstudio/download/.
Bei der Installation wird die Verbindung zu R automatisch hergestellt. Wenn nach dem Start von RStudio im Konsolenfenster eine Startmessage von R zu sehen ist und eine Eingabeaufforderung mit einem „>“, dann ist RStudio bereit. Bevor es mit RStudio weitergeht, müssen noch weitere Komponenten installiert werden.
Exasol Free Edition
Die Exasol Free Edition wird als Virtuelle Maschine (VM) ausgeliefert. Um sie zu starten, wird eine Virtualisierungssoftware benötigt. Dazu bietet sich die VirtualBox an, die von Oracle kostenlos zur Verfügung gestellt wird: https://www.virtualbox.org/wiki/Downloads. Virtual Box for Windows hosts unter VirtualBox platform packages ist die richtige Variante.
Ist die VirtualBox installiert, muss noch die Community Edition der Exasol als geladen werden. Diese findet sich hier: https://www.exasol.com/portal/display/DOWNLOAD/Free+Trial. Nach dem Download wird die VM in die Virtual Box importiert. Dazu in der Virtual Box auf Datei –> Appliance importieren klicken und den Download der Exasol Community Edition auswählen. Dieser befindet sich meist im Standarddownloadverzeichnis des Webbrowsers, mit dem die Exasol Community Edition heruntergeladen wurde. Der Import kann einige Minuten dauern.
Ist der Import fertig, muss noch eine Einstellung geändert werden. Dazu die Exasol in der Virtual Box einmal anklicken, so dass der Eintrag blau hinterlegt ist und dann auf Ändern klicken.
Screenshot 1
Im aufpoppenden Dialog auf Netzwerk und dort Angeschlossen an auf Netzwerkbrücke setzen. Außerdem den Hacken bei Netzwerkadapter aktivieren setzen und mit OK bestätigen.
Screenshot 2
Jetzt kann die Exasol per Doppelklick oder über den Starten Button gebootet werden. Nach einiger Zeit erscheint ein Fenster, dass zwei IP Adressen anzeigt. Die Erste (DB connection string) wird für die Verbindung mit R benötigt. Über die Zweite (EXAoperation URL) lässt sich die Exasol Administrationsoberfläche erreichen.
Screenshot 3
In dieser Oberfläche können R Pakete in die R Instanzen auf den Exasol Clustern installiert werden .
Dazu die IP in einen Webbrowser kopieren und diese Zugangsdaten Benutzer: admin / Passwort: admin eingeben. Möglicherweise erscheint ein Hinweis des Browsers, dass die aufgerufene Seite nicht vertrauenswürdig ist. Um auf den Administrationsbereich zu kommen, muss in diesem Fall eine Ausnahme hinzugefügt werden.
Zunächst müssen die Netzwerkeinstellungen angepasst werden. Dazu in der Liste links auf Network klicken. Unter System müssen nun folgende Einstellungen verändert werden. Um die benötigten Informatinen zu bekommen, in der Windows Kommandozeile (cmd) ipconfig eingeben. Screenshots 4 und 5 zeigen die für den Übertrag benötigten Informationen.
- Public Network Address: Dieser Eintrag steht im rot umrahmten Bereich der ipconfig Ausgabe unter IPv4-Adresse. Der letzte Ziffernblock (in diesem Fall 13) muss durch eine 0 ersetzt werden. Die Angabe nach dem „/“ lässt sich aus der Subnetzmaske entehmen: Ist die Subnetzmask 255.255.0.0 lautet der Eintrag 16 wie im Beispiel. Ist die Subnetzmaske 255.255.255.0 muss 24 eingetragen werden.
- Default Gateway: Hier wird der Eintrag Standardgateway aus der ipconfig Ausage verwendet.
- DNS Server 1: Auch an dieser Stelle ist die IP des Standardgateway aus der ipconfig Ausage einzutragen.
- DNS Server 2: Als Backup optional die DNS IP von google: 8.8.8.8.
Screenshot 4
Screenshot 5
Sind die Netzwerkeinstellungen gesetzt, geht es in der Administrationsoberfläche unter Software weiter. Dort auf den Reiter UDF Libraries. Dann auf den Add Button.
Screenshot 6
In das Dialogfeld wird der Name des Pakets eingegeben, das installiert werden soll sowie das Repository, von dem das Paket installiert werden soll. Wichtig ist, die http Variante statt der https Veriante zu verwenden (im Beispiel: https://cran.uni-muenster.de). Ansonsten schlägt die Installation fehl. Die Language auf R stellen. Dann auf Add klicken. Es können nur Pakete verwendet werden, die R Versionen nicht größer als derzeit 3.0.2 voraussetzen.
Screenshot 7
Um die Installation abzuschließen, das Paket in der Liste per Radio-Button auswählen und auf Install klicken. War die Installation erfolgreich, verändert sich der Status in der Spalte State auf Installed.
Um die Verbindung zwischen R und der Exasol herstellen zu können, brauchen wir noch einen ODBC Treiber. Dieser kann unter https://www.exasol.com/portal/display/DOWNLOAD/Version+5.0.14 heruntergeladen werden. Unter Download ODBC Driver den Installer EXASolution_ODBC-5.0.14-x86.msi für 32-bit Architekturen bzw. EXASolution_ODBC-5.0.14-x86_64.msi für 64-bit Architekturen runterladen und per Doppelklick installieren.
Nach der Installation auf Systemsteuerung –> Verwaltung –> ODBC je nach System in der 32 oder 64 bit Variante klicken. Auf Hinzufügen klicken und den EXASolution Driver auswählen.
Screenshot 8
Bei der Konfiguration des Treibers müssen Benutzername und Passwort sowie die IP der Exasol angegeben werden. Diese Informationen finden sich im Fenster der Exsol VM (siehe Screenshot 3).
Screenshot 9
Der Name der Datenquelle ist frei wählbar, sollte aber notiert werden. Wir brauchen ihn später bei der Verbindung mit R.
Redis
Redis ist eine schlanke Key-Value Datenbank, mit der sich Datenobjekte verschiedener Sprachen (R, Phython, Lua etc.) über das Netzwerk austauschen lassen. Eine ideale Ergänzung in der Exasol R Kombination, denn so lassen sich Datamining Modelle oder Funktionen auf die Netzwerkcluster verteilen.
Zur Installation muss zunächst der Installer geladen und installiert werden. Er findet sich hier: https://github.com/MSOpenTech/redis/releases
Bei der Installation wird eine Portnummer angegeben. Diese sollte nicht geändert werden. Nach der Installation in den Ordner gehen, in den Redis installiert wurde, vermutlich unter C:\Programm Files\Redis. Dort Redis mit einem Doppelklick auf redis-server.exe starten.
R Konfiguration und die Verbindung testen
Zunächst müssen alle notwenidgen Pakte installiert werden. Neben den Paketen, die eine Verbindung zur Exasol und Redis herstellen, kommt für das folgende Demo noch rpart, stringi und partykit dazu.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
# Zu installierende Pakete festlegen…
pkg < – c(„RODBC“, „rredis“, „stringi“, „magrittr“, „rpart“, „partykit“, „devtools“)
install.packages(pkg)
Das Paket ‚devtools‘ muss geladen werden, bevor Exasol von Github installiert werden kann
library(devtools)
install_github(„EXASOL/r-exasol“)
#Laden der übrigen Pakete
library(RODBC)
library(rredis)
library(exasol)
library(stringi)
library(magrittr)
library(rpart)
library(partykit)
|
Wenn alle Pakete installiert und geladen sind, kannn die Verbindung zur Exasol und zu Redis getestet werden. Zur Verbindung mit Redis muss die IP des PC angegeben werden, auf der Redis läuft. Diese findet sich unter IPv4-Adresse in Screenshot 4.
Zunächst wird ein ODBC Verbindungsobjekt erstellt, dass bei allen Datenbankoperationen verwendet wird. Das Argument enthält den Namen, so wie er beim Einrichten der ODBC Verbindung angegeben worden ist (siehe Screenshot 9).
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
# Erstellen des Verbindungsobjekts
con < – odbcConnect(„exasol_vm“)
# Verbinden mit Redis
redisConnect(„172.20.248.13“)
A <– 2
# Speichern von A in Redis
redisSet(„Test“, A)
# Entfernen von A
rm(A)
# Wenn der Wert 2 angezeigt wird, steht die Verbindung zu Redis
redisGet(„Test“)
|
Nachdem die Installation und Konfiguration abgeschlossen ist, kann die R / Exasol Verbindung für Dataminig, Machine Learning oder andere Analyseverfahren verwendet werden.
Hier entlang.