[PYTHON] Verwenden wir MemSQL Vol.13: Übung 6

Dieses Mal werden wir die Zusammenarbeit zwischen Jupyter Notebook und MemSQL herausfordern! !!

Bei der vorherigen Überprüfung habe ich versucht, MemSQL und R über Docker in der Mac-Umgebung zu verknüpfen. Dieses Mal möchte ich Jupyter Notebook, das für Python berühmt ist, mit MemSQL verknüpfen. Es scheint, dass es häufig als Entwicklungsumgebung für Python verwendet wird, daher hoffe ich, dass es nicht nur für die Analyse, sondern auch für maschinelles Lernen und Ansätze zur KI nützlich ist, wenn es im Python-System ausgeführt wird. スクリーンショット 2020-02-19 18.44.31.png

Installationsverfahren

Dieses Mal werden wir wie zuvor in der Mac-Umgebung arbeiten.

(1) Führen Sie Xcode ein

Zunächst werden wir den versprochenen Xcode vorstellen. スクリーンショット 2020-02-19 12.56.16.png

In meiner Umgebung habe ich zu diesem Zeitpunkt alles eingegeben, einschließlich des Befehlszeilensystems. Daher werde ich die zugehörige Umgebung verbessern (in den Beiträgen von Senioren, die bereits im Internet gepostet haben, wurde hier die Befehlszeilenumgebung eingeführt Es gibt Fälle, in denen es vorhanden ist. Bitte überprüfen Sie es für alle Fälle.

(3) Installieren Sie Homebrew

Befolgen Sie zur Installation die Anweisungen von ** Homebrew Homepage **. スクリーンショット 2020-02-19 13.06.59.png Überprüfen Sie, ob Homebrew installiert ist

% brew update
% brew upgrade
% brew doctor

Übrigens war das Arbeitsumfeld diesmal so (als Referenz) スクリーンショット 2020-02-19 15.18.04.png

Zum Schluss installieren Sie Jupyter Notebook über pip3.

% pip3 install jupyter 

Die Installation wird gestartet, warten Sie also bitte eine Weile. スクリーンショット 2020-02-19 14.43.18.png Erstellen Sie nach Abschluss der Installation ein Arbeitsverzeichnis und verschieben Sie es. (Bitte xxx entsprechend einstellen)

% mkdir xxx
% cd xxx

Dies scheint so zu sein, dass das Verzeichnis, in dem das Jupyter-Notebook ausgeführt wird, automatisch zum Startbildschirm wird. Um Unordnung zu vermeiden, erstellen Sie ein Arbeitsverzeichnis mit mkdir an einem beliebigen Ort und wechseln Sie in dieses Verzeichnis Stellen Sie sicher, dass Sie das Jupyter-Notizbuch danach starten.

% jupyter notebook

Der Startvorgang wird gestartet. Warten Sie daher eine Weile. スクリーンショット 2020-02-19 14.45.20.png

Nachdem die Installation für eine Weile ausgeführt wurde, wird die Homepage von Jupyter Notebook im Browser angezeigt. image.png Ich werde die versprochene Operation überprüfen.

print("Hello World")

Lassen Sie diese Beschreibung leer und wählen Sie Ausführen. image.png Es scheint, dass es begonnen hat, sich sicher zu bewegen. image.png

Endlich Zusammenarbeit mit MemSQL ...

Jetzt werden wir endlich mit MemSQL arbeiten, aber vorher gibt es eine sehr wichtige Vorarbeit, die geklärt werden muss. Wie viele von Ihnen vielleicht bereits bemerkt haben, wenn beide GUI-basierte Konsolen verwenden ... Das häufig auftretende 8080-Kollisionsproblem wird offensichtlich, sodass Gegenmaßnahmen erforderlich sind. Dieses Mal werde ich den Verteilungsport auf der Jupyter Notebook-Seite verschieben.

Führen Sie zum Arbeiten die folgenden Schritte auf der Mac-Konsole aus.

% jupyter notebook --generate-config

Die folgenden Dateien werden im obersten Verzeichnis Ihres Hauses erstellt. Überprüfen Sie daher den Inhalt und ändern Sie die Portnummer.

~/.jupyter/jupyter_notebook_config.py

Mit vi Editor etc.

#c.NotebookApp.port = 8888

Suchen und entfernen Sie das # am Anfang der Zeile (in diesem Fall ist 8888 der Port nach dem Neustart).

スクリーンショット 2020-02-19 17.23.22.png

Die MemSQL-Konsole und das Jupyter Notebook können jetzt sicher nebeneinander existieren.

Dann installieren Sie ** pymysql **.

% pip3 install pymysql

Ich trat schnell ein.

スクリーンショット 2020-02-19 15.44.26.png

Auch dieses Mal werden wir MemSQL in der Docker-Umgebung auf dem Mac ausführen und darauf hinarbeiten, diese Umgebung mit dem Jupyter Notebook dieser Saison zu verknüpfen.

Starten Sie MemSQL auf Docker.

% docker start memsql-ciab

Schließlich wird die Kooperationsüberprüfung durchgeführt! !!

Ich möchte mit dieser Zusammenarbeit beginnen, indem ich vorgebe, MySQL zu sein, in dem ich gut bin. Versuchen Sie für die Datenbank, die Tabelle zum Zeitpunkt der R-Verknüpfung zu lesen, die bei der vorherigen Überprüfung erstellt wurde.

Geben Sie das folgende Skript in das Jupyter-Notizbuch ein.

import pymysql

db = pymysql.connect(host='127.0.0.1',
                     user='root',
                     password='',
                     db='r_db',
                     charset='utf8',
                     cursorclass=pymysql.cursors.DictCursor)

db.commit()

Wenn es keine Probleme mit den Einstellungen bis zur vorherigen Stufe gibt, stellt die letzte ** db.commit () ** eine Verbindung zu MemSQL her.

Versuchen Sie als Nächstes, die Daten aus der Zieltabelle zu lesen.

with db:
    cur=db.cursor()
    cur.execute("SELECT * FROM test99")
    rows=cur.fetchall()
    for row in rows:
        print (row)

Ich konnte die Daten sicher lesen. スクリーンショット 2020-02-19 17.54.27.png

Schreiben wir nun Daten von Jupyter Notebook nach MemSQL ...

Wenn Sie die oben beschriebene Methode anwenden, können Sie das Ziel problemlos erreichen.

import pymysql

db = pymysql.connect(host=  '127.0.0.1',
                             user='root',
                             password='',
                             db='r_db',
                             charset='utf8',
                             cursorclass=pymysql.cursors.DictCursor)

db.commit()

with db:
   cur=db.cursor()
   cur.execute("CREATE TABLE IF NOT EXISTS p_test(id INT auto_increment primary key, data VARCHAR(25))")
   cur.execute("INSERT INTO p_test(data) VALUES('aaaaaaa')")
   cur.execute("INSERT INTO p_test(data) VALUES('bbbbbbb')")
   cur.execute("INSERT INTO p_test(data) VALUES('ccccccc')")

Lassen Sie uns das Ergebnis in der MemSQL-Konsole überprüfen. スクリーンショット 2020-02-19 18.21.45.png

Ich konnte die Schreibüberprüfung erfolgreich abschließen.

Diese Zusammenfassung

Dieses Mal habe ich kurz die Zusammenarbeit zwischen Jupyter Notebook, das in der Python-Welt bekannt ist, und MemSQL überprüft. Wenn Sie die Basisumgebung gut erstellen können, gibt es keine besonderen Schwierigkeiten und Sie können die nächste Anwendung entwickeln. Es scheint, dass es in der Python-Welt häufig als Engine für maschinelles Lernen, KI, Analyse usw. verwendet wird. Nutzen Sie diese Gelegenheit, um eine Verknüpfung mit MemSQL in Betracht zu ziehen.

Diese Umgebung ist eine Kombination aus der Docker-Version von MemSQL und dem normalen Installations-Jupiter-Notebook auf dem Mac. Es ist eine Umgebung, die auf einem leistungsstarken Notebook wie dem vorherigen R aufgebaut werden kann. Sie können also gerne Highspeed-In-Memory-SQL verwenden.

** Verwenden wir MemSQL Vol.14: Practical Edition 7 **

Vielen Dank

Die in diesem Kommentar abgedruckten Screenshots verwenden die Bilder der offiziellen Homepage, die derzeit von MemSQL veröffentlicht wird, mit Ausnahme einiger weniger, und werden auf diesem Inhalt und der offiziellen Homepage von MemSQL veröffentlicht. Bitte haben Sie Verständnis dafür, dass die von MemSQL bereitgestellten Informationen Vorrang haben, wenn die Inhalte unterschiedlich sind.

Recommended Posts

Verwenden wir MemSQL Vol.14: Übung 7
Verwenden wir MemSQL Vol.13: Übung 6
Mal sehen, wie def in Python verwendet wird
Lassen Sie uns Python Janome einfach verwenden
Verwenden wir einfach die Wortwolke von Python!
Verwenden wir usercustomize.py anstelle von sitecustomize.py
Verwenden wir Tomotopie anstelle von Gensim
[Einführung in Python] Verwenden wir Pandas
[Einführung in Python] Verwenden wir Pandas
[Einführung in Python] Verwenden wir Pandas