Elasticsearch Python Connector

Python からElasticsearch データを自在に読み・書き・更新

Elasticsearch データをPython ベースのデータアクセス、ビジュアライゼーション、ORM、ETL、AI/ML、カスタムアプリから自在に連携・操作。


  ダウンロード   価格

Elasticsearch へのデータ連携用のPython Connecotr ライブラリ。 pandas、SQLAlchemy、Dash、petl などの主要なPython ツールにElasticsearch をシームレスに統合。 Python や各種ツールからElasticsearch データに連携できるPython データベース API(DB-API)モジュール。

機能紹介

  • Elasticsearch データにサーバーサイドアドオンなしで、SQL-92 でアクセス可能に
  • Elasticsearch のBasic からPlatinum までのサブスクリプションに連携可能
  • Elasticsearch v.2.2 以降をサポート
  • write access, search type logic, arrays, nested objects, and JOINsなどの高度な機能をサポート
  • Elasticsearch NoSQL データへのSQL-92 でのクエリを実現。
  • フレキシブルなNoSQL のフラット化 - 自動スキーマ生成、フレキシブルなクエリなど。
  • Elasticsearch データにリアルタイムアクセス
  • BI、帳票、ETL ツールやカスタムアプリへのシームレスなデータ連携
  • データ集計、複雑なJOIN クエリなどのSQL をフルサポート
  • VBA での連携に対応。マクロ内で簡単にデータを操作。

製品仕様

  • Elasticsearch 連携用のPython Database API (DB-API) モジュール。
  • 使い慣れたSQL でElasticsearch データにアクセス。Elasticsearch に使い慣れたPython Database Connectivity でデータ連携。
  • pandas、SQLAlchemy、Dash、petl などの人気のPython ツールにシームレスに統合。
  • 使いやすいフラット化されたインターフェースでElasticsearch にアクセス。
  • データ、パラメータ、メタデータでUnicode をフルサポート。


CData Python Connectors の紹介動画

CData Python Connectors の基本的な使い方を紹介する動画でシンプルかつパワフルな連携をご覧ください。

Python Connector 動画を見る

Python からElasticsearch にデータ連携

サポートされたデータソースにわたり統一されたSQL アクセスを実現するPyton Connector


  • Python からElasticsearch への標準連携

    Elasticsearch データに以下のPython ベースのフレームワークから連携を実現:


    • データ分析/ビジュアライゼーション:Jupyter Notebook、pandas、Matplotlib
    • ORM:SQLAlchemy、SQLObject、Storm
    • ウェブアプリケーション:Dash、Django
    • ETL:Apache Airflow、Luigi、Bonobo、Bubbles、petl
  • Python 標準ツールへの統合

    Elasticsearch Connector は、Anaconda、Visual Studio Python IDE、PyCharm などの人気のデータサイエンスおよび開発ツールに統合して利用可能です。

  • レプリケーションとキャッシング

    CData のレプリケーションやキャッシングコマンドにより、簡単にローカルおよびクラウドデータストア(Oracle、SQL Server、Google Cloud SQL、etc.)へのデータのコピーができます。レプリケーションコマンドはインテリジェントな差分更新によるデータのキャッシュを行う機能を備えています。

  • 文字列型、日付型、数値型のSQL 関数群

    Elasticsearch Connector は50以上の関数ライブラリを持ち、カラムと出力フォーマットを操作します。代表的な例では正規表現、JSON、およびXML 処理機能があります。

  • コラボラティブクエリ処理

    Python Connector はクライアント側における追加処理を実現することにより、接続するデータソースの機能を高め、SUM、AVG、MAX、MIN などの分析集計を可能にします。

  • 容易なスキーマのカスタマイズ

    Elasticsearch Connector のデータモデルはテーブル / カラムの追加や削除、データ型の変更などのカスタマイズが簡単に行えます。追加ビルドは不要です。カスタマイズは、human-readable スキーマを使ってランタイムで編集ができます。

  • セキュアな接続

    すべてのクライアント - サーバー間接続において、TLS / SSL データ暗号化などのエンタープライズレベルのセキュリティ機能が備わっています。

Python でElasticsearch データに連携

CData Python Connectors は、標準化されたデータベースAPI(DB-API)インターフェースでElasticsearch にアクセスすることができます。幅広いPython データツールからのデータ連携が簡単に実現します。Python からのデータ連携をデータソース固有のインターフェースを意識することなくベーシックなパターンで連携を行うことができます::

  • Elasticsearch に接続する接続プロパティを設定
  • Elasticsearch をクエリしてデータを取得・更新
  • Python データツールからElasticsearch データに連携


Python からElasticsearch にデータ連携する方法

Python からデータに接続するには、エクステンションをインポートして接続を作ります:

import cdata.elasticsearch as mod
conn = mod.connect("[email protected]; Password=password;")

#Create cursor and iterate over results
cur = conn.cursor()
cur.execute("SELECT * FROM DocumentDB")
 
rs = cur.fetchall()
 
for row in rs:
print(row)

エクステンションをインポートすると、使い慣れたPython モジュールやツールキットからあらゆるエンタープライズデータに連携が可能になり、データ活用のためのPython アプリケーションをすばやく構築できます。

pandas でElasticsearch データをビジュアライズ

Elasticsearch Python Connector はデータセントリックなインターフェースを備え、pandas やSQLAlchemy をはじめとするツールに統合して利用してデータを分析しビジュアライズすることができます。

engine = create_engine("elasticsearch///Password=password&User=user")

df = pandas.read_sql("SELECT * FROM DocumentDB", engine)

df.plot()
plt.show()

フルCRUD サポート

読み込み書き込み双方に対応、Elasticsearch Connector は、フルCRUD(Create、Read、Update、Delete)処理をサポートします。ユーザーは、データベーステーブルにアクセスするように、Elasticsearch Connector にアクセスして、自在にデータを処理することができます。