[PYTHON] Elasticsearch-Installation und Grundbedienung für Ubuntu

Elasticsearch-Installation und Grundbedienung

Installation (unter Ubuntu 18.04)

ElasticSearch Install

install Java $ sudo apt install openjdk-11-jdk

install Elasticsearch $ wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add - $ echo "deb https://artifacts.elastic.co/packages/6.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-6.x.list $ sudo apt update $ sudo apt install elasticsearch

$ sudo systemctl start elasticsearch $ sudo systemctl status elasticsearch

Bestätigung $ curl http://127.0.0.1:9200

Kibana Install $ apt update $ apt install kibana

$ systemctl start kibana

Bestätigung access http://localhost:5601

kuromoji Install $ sudo /usr/share/elasticsearch/bin/elasticsearch-plugin install analysis-kuromoji

CRUD-Ausgabe

Erstellen Sie einen Index namens Buch und erstellen Sie ein Dokument.

PUT /book/_doc/1
{
	"title":"Business Python Super Primer",
	"author":"Shogo Nakajima",
	"publisherName":"Nikkei BP",
	"salesDate":"7. Juni 2019",
	"itemPrice":"2592"
}
Automatisch generiert ohne Angabe einer Dokument-ID

PUT /book/_doc
{
	"title":"Business Python Super Primer",
	"author":"Shogo Nakajima",
	"publisherName":"Nikkei BP",
	"salesDate":"7. Juni 2019",
	"itemPrice":"2592"
}
* Die Dokument-ID besteht aus 20-stelligen zufälligen alphanumerischen Zeichen
Dokumentation abrufen

GET /book/_doc/1
Dokumentation aktualisieren

POST /book/_update/1
{
  "doc": {
    "itemPrice": 1292
  }
}
Dokument löschen

DELETE /book/_doc/1
Index löschen

GET /book/_mapping
Überprüfen Sie die Zuordnung (so etwas wie ein Schema)

GET /book/_mapping
Erstellen Sie einen Index

PUT /book
Erstellen Sie einen Index, indem Sie die Zuordnung angeben

PUT /book
{
  "mappings": {
    "properties": {
      "title": { "type": "keyword" },
      "author": { "type": "keyword" },
      "publisherName": { "type": "keyword" },
      "isbn" : { "type": "keyword" },
      "itemCaption" : { "type": "text" },
      "itePrice" : { "type": "long"}
    }
  }
}
Erstellen Sie mehrere Dokumente gleichzeitig

POST /book/_bulk 
{"index": {"_id": 1}} 
{ "title": "Lassen Sie Python die langweiligen Dinge tun", "author": "Al Sweigart/Aizo Aikawa","publisherName":"O'Reilly Japan", "isbn":" 9784873117782", "itemCaption":"Aufgaben wie das Umbenennen von Dateien und das Aktualisieren von Tabellenberechnungsdaten treten in der täglichen Arbeit häufig auf. Es gibt kein Problem, wenn Sie nur ein oder zwei reparieren, aber wenn es zehn oder hundert werden, ist es unkontrollierbar. Es wäre viel einfacher, wenn ein Computer eine so einfache sich wiederholende Aufgabe übernimmt. In diesem Buch erfahren Sie, wie Sie ein Python3-Programm erstellen, das Prozesse handhabt, die im Handumdrehen enorm viel Zeit in Anspruch nehmen würden. Die Zielgruppe sind Nicht-Programmierer. Wenn Sie die Grundlagen in diesem Buch beherrschen, können auch unerfahrene Programmierer praktische Programme erstellen, mit denen Sie problemlos einfache Aufgaben ausführen können. Darüber hinaus können Sie Ihre Fähigkeiten zur automatischen Bearbeitung ähnlicher Aufgaben verbessern, indem Sie die Übungen am Ende des Kapitels lösen.", "itemPrice": 3996 }
{"index": {"_id": 2}} 
{ "title":"Business Python Super Primer","author":"Shogo Nakajima","publisherName":"Nikkei BP","isbn":" 9784296102136","itemCaption":"Sie können die grundlegenden Programmierkenntnisse erlernen, die für Unternehmen unverzichtbar sind! Eine Erklärung von Pyson, einer Sprache, die von Anfang an für künstliche Intelligenz von Interesse ist. Schritt für Schritt vom Schreiben bis zur Ausführung. Beherrschen Sie wichtige Syntax wie bedingte Verzweigung und Wiederholung. Automatische Erfassung von Online-Informationen, die Grundlage für Web Scraping. Erleben Sie maschinelles Lernen, das handgeschriebene Zeichen von Grund auf erkennt.","itemPrice": 2592} 
{"index": {"_id": 3}} 
{ "title":"Erste Schritte Python","author":"Bill Rubanovic/Yasushi Saito","publisherName":"O'Reilly Japan"," isbn":" 9784873117386","itemCaption":"Es ist ein Vierteljahrhundert her, seit Python geboren wurde. Pysons Popularität steigt in einer Vielzahl von Bereichen, einschließlich Datenwissenschaft, Webentwicklung und Sicherheit. Selbst im Bereich der Programmierausbildung nimmt die Akzeptanz von Python anstelle von C zu. Dieses Buch ist eine Einführung in Pyson, geschrieben für diejenigen, die neu in der Programmierung sind. Es ist kein besonderes Wissen anzunehmen. Von den Grundlagen der Programmierung und Phython bis hin zu Anwendungen wie Web, Datenbank, Netzwerk und Parallelverarbeitung wird die Python-Programmierung auf leicht verständliche Weise erklärt.","itemPrice": 3996}
{"index": {"_id": 4}} 
{ "title":"Einführung in neues und klares Python","author":"Nobuhiro Shibata","publisherName":"SB kreativ","isbn":"9784815601522","itemCaption":"Mit 299 geeigneten Beispielprogrammen und 165 leicht verständlichen Diagrammen können Sie systematisch und stetig die Grundlagen der Grammatik und Programmierung von Pyson erlernen.","itemPrice": 2808}
{"index": {"_id": 5}} 
{ "title":"Selbstlernprogrammierer Von den Grundlagen der Python-Sprache bis zu Ihrer Arbeitsweise","author":"Corey Arsov/Takayuki Shimizukawa"," publisherName":"Nikkei BP"," isbn":"9784822292270"," itemCaption":"Objektorientiert, Shell, regulärer Ausdruck, Paketverwaltung, Versionsverwaltung, Datenstruktur, Algorithmen, wie man Jobs findet und erledigt. Von den Grundlagen der Pyson-Sprache bis zur Arbeitsweise können Sie das Wissen und das Know-how, das für die Arbeit als Programmierer erforderlich ist, in einem Buch verstehen.","itemPrice": 2376}
Element zum Dokument hinzufügen

POST /book/_update/5
{
  "doc": {
    "discountRate": 0
  }
}

Suche

Durchsuchen Sie alle Dokumente

GET /book/_searh

GET book/_search
{
    "query": {
    "match_all": {}
  }
}
Suchen Sie nach Dokumenten, die das angegebene Wort enthalten

GET book/_search
{
  "query": {
    "match": {
      "itemCaption": "Programmierung"
    }
  }
}
Dokumente durchsuchen nach und Bedingung

GET book/_search
{
  "query": {
    "bool": {
      "must": [
        {
          "match": {
            "itemCaption": "Programmierung"
          }
        },
        {
          "match": {
            "itemCaption": "beginnen"
          }
        }
      ]
    }
  }
}
nicht suchen (enthält kein Wort)

GET book/_search
{
  "query": {
    "bool": {
      "must_not": [
        {
          "match": {
            "itemCaption": "beginnen"
          }
        }
      ]
    }
  }
}
oder suchen

GET book/_search
{
  "query": {
    "bool": {
      "should": [
        {
          "match": {
            "itemCaption": "Programmierung"
          }
        },
        {
          "match": {
            "itemCaption": "beginnen"
          }
        }
      ]
    }
  }
}
Suche durch Gewichtung bestimmter Wörter

GET book/_search
{
  "query": {
    "bool": {
      "should": [
        {
          "match": {
            "itemCaption": {
              "query": "Programmierung"
            }
          }
        },
        {
          "match": {
            "itemCaption": {
              "query": "beginnen",
              "boost": 5
            }
          }
        }
      ]
    }
  }
}
Markieren Sie die Suche

GET book/_search
{
  "query": {
    "match": {
      "itemCaption": "Programmierung"
    }
  },
  "highlight": {
    "fields": {
      "itemCaption": {}
    }
  }
}
Suchen und sortieren Sie nach Bereich

GET book/_search
{
  "query": {
    "range": {
      "itemPrice": {
        "lte": 3000
      }
    }
  },
  "sort": [
    {
      "itePrice": {
        "order": "asc"
      }
    }
  ]
}
Erstellen Sie statistische Daten mithilfe der Aggregation

Aggregieren Sie die Anzahl der Artikel für jede Preisspanne von Daten einschließlich Programmierung


GET book/_search
{
  "query": {
    "match": {
      "itemCaption": "Programmierung"
    }
  }, 
  "aggregations": {
    "itemPrice_bucket": {
      "range": {
        "field": "itemPrice",
        "ranges": [
          {
            "key": "0-1500", 
            "from": 0,
            "to": 1500
          },
          {
            "key": "1501-3000",
            "from": 1501,
            "to": 3000
          },
          {
            "key": "3000-4500",
            "from": 3001,
            "to": 4500
          }
        ]
      }
    }
  }
}

Recommended Posts

Elasticsearch-Installation und Grundbedienung für Ubuntu
Python-Installation und grundlegende Grammatik
Django Installation und Funktionsprüfung
Python (Python 3.7.7) Installation und grundlegende Grammatik
PySpark 1.5.2 + Elasticsearch 2.1.0 Installationsverfahren und Ausführung
Ubuntu 20.04 LTS-Installationsmethode (für externes Laufwerk)
Linux-Betrieb für Anfänger Grundlegende Befehlsübersicht
BESS Development Memo Teil 01: BESS-Installation und grundlegende Verwendung
[Erklärung für Anfänger] Grundlegende Syntax und Konzept von TensorFlow
Von der Installation von ROS für Windows bis zur Funktionsprüfung
[Python / Chrome] Grundeinstellungen und Operationen zum Scraping
Grundlegende Bedienung von Python Pandas Series und Dataframe (1)
Organisation grundlegender Verfahren zur Datenanalyse und statistischen Verarbeitung (4)
Organisation grundlegender Verfahren zur Datenanalyse und statistischen Verarbeitung (2)
Installieren von Python 3 auf einem Mac und Überprüfen der Grundfunktionen Teil 1
Aufbau eines Websystems (super einfach) ③: Aufbau eines DB-Servers und grundlegende Bedienung
Umgang mit Pip und damit verbundenen Installationsfehlern unter Ubuntu 18.04
Aufbau eines Websystems (super einfach) ②: Aufbau eines AP-Servers und grundlegende Bedienung
Python-Grundkurs (2 Python-Installation)
Installation von Jupyter und Pandas
Grundlegende Bedienung von Pandas
FX_tool für Hython Basic02
Grundlegende Bedienung von Pandas
MongoDB-Installation (Ubuntu 18 LTS)
FX_tool für Hython Basic01
Installationsverfahren für Python und Ansible mit einer bestimmten Version
Zusammenfassung der Unterstützung von Hash-Operationen (Dictionary) für Ruby und Python