製品をチェック

Apache Spark ODBC Driver の30日間無償トライアルをダウンロード

 30日間の無償トライアルへ

製品の詳細

Apache Spark アイコン Apache Spark ODBC Driver 相談したい

Apache Spark ODBC Driver は、ODBC 接続をサポートするさまざまなアプリケーションからApache Spark データへの接続を実現するパワフルなツールです。

標準SQL とSpark SQL をマッピングして、SQL-92 で直接Apache Spark にアクセス。

ODBC を介してNode.js からSpark データをクエリ

node-odbc を使用して、Node.js からSpark データへのSQL クエリを実行します。

古川えりか
コンテンツスペシャリスト

最終更新日:2022-01-09
spark ロゴ

CData

odbc ロゴ画像
NodeJS ロゴ

こんにちは!ドライバー周りのヘルプドキュメントを担当している古川です。

Node.js はブラウザ上以外でJavaScript コードを使用できるJavaScript ランタイム環境です。CData ODBC Driver for SparkSQL を使用すれば、Node.js アプリとスクリプトから、リアルタイムSpark データにアクセスできます。この記事ではnode-odbc のインストールと、リアルタイムSpark データへのアクセスが可能な、シンプルなNode.js アプリケーションを作成するために必要なツールについて説明します。

ビルトインの最適化されたデータ処理により、CData ODBC Driver は比類のないパフォーマンスで、Node.js のリアルタイムSpark データとやりとりできます。Node.js からSpark に複雑なSQL クエリを発行すると、ドライバーはフィルタや集計などのサポートされているSQL 操作をSpark に直接プッシュし、組み込まれたSQL エンジンを利用してサポートされていない操作(主にSQL 関数とJOIN 操作)をクライアント側で処理します。

CData ODBC ドライバとは?

CData ODBC ドライバは、以下のような特徴を持ったリアルタイムデータ連携ソリューションです。

  1. Spark をはじめとする、CRM、MA、会計ツールなど多様なカテゴリの270種類以上のSaaS / オンプレミスデータソースに対応
  2. 多様なアプリケーション、ツールにSpark データを連携
  3. ノーコードでの手軽な接続設定
  4. 標準 SQL での柔軟なデータ読み込み・書き込み

CData ODBC ドライバでは、1.データソースとしてSpark の接続を設定、2.Node.js 側でODBC Driver との接続を設定、という2つのステップだけでデータソースに接続できます。以下に具体的な設定手順を説明します。

CData ODBC ドライバのインストールとSpark への接続設定

まずは、本記事右側のサイドバーからSparkSQL ODBC Driver の無償トライアルをダウンロード・インストールしてください。30日間無償で、製品版の全機能が使用できます。

必要な接続プロパティの値が未入力の場合には、データソース名(DSN)で入力します。組み込みのMicrosoft ODBC Data Source Administrator を使用し、DSN を構成できます。ドライバーのインストールの最後にアドミニストレーターが開きます。Microsoft ODBC データソースアドミニストレーターを使ってDSN を作成および設定する方法は、ヘルプドキュメントの「はじめに」を参照してください。

SparkSQL への接続

SparkSQL への接続を確立するには以下を指定します。

  • Server:SparkSQL をホストするサーバーのホスト名またはIP アドレスに設定。
  • Port:SparkSQL インスタンスへの接続用のポートに設定。
  • TransportMode:SparkSQL サーバーとの通信に使用するトランスポートモード。有効な入力値は、BINARY およびHTTP です。デフォルトではBINARY が選択されます。
  • AuthScheme:使用される認証スキーム。有効な入力値はPLAIN、LDAP、NOSASL、およびKERBEROS です。デフォルトではPLAIN が選択されます。

Databricks への接続

Databricks クラスターに接続するには、以下の説明に従ってプロパティを設定します。Note:必要な値は、「クラスター」に移動して目的のクラスターを選択し、 「Advanced Options」の下にある「JDBC/ODBC」タブを選択することで、Databricks インスタンスで見つけることができます。

  • Server:Databricks クラスターのサーバーのホスト名に設定。
  • Port:443
  • TransportMode:HTTP
  • HTTPPath:Databricks クラスターのHTTP パスに設定。
  • UseSSL:True
  • AuthScheme:PLAIN
  • User:'token' に設定。
  • Password:パーソナルアクセストークンに設定(値は、Databricks インスタンスの「ユーザー設定」ページに移動して「アクセストークン」タブを選択することで取得できます)。

node-odbc を構築する

CData ODBC Driver を介してSpark に接続するには、必要なツールをインストールした後に、node-odbc を手動で構築する必要があります。

必要なツールをインストールする

以下のコマンドでは、node-odbc の構築に必要なツールをインストールします。(ツールをグローバルにインストールする-g パラメータに注意してください。)

npm i -g windows-build-tools
npm i -g node-gyp

node-odbc を構築する

必要なツールをインストールしたらNode.js アプリケーションのディレクトリを作成し、Node.js スクリプトで使用するバイナリを構築するodbc をインストールします。

mkdir nodeodbc
cd nodeodbc
npm i -g node

Node.js からSpark をクエリ

ODBC Driver がインストールされ、DSN が構成されて、node-odbc が構築されたら、Node.js アプリケーションからリアルタイムSpark データをクエリすることができるようになります。以下のサンプルコードは、特定のDSN に接続してCustomers テーブルをクエリします。

myscript.js

const odbc = require('odbc');

async function querySparkSQL() {
    const connection = await odbc.connect(`DSN=CData SparkSQL Source`);
    const data = await connection.query('SELECT City, Balance FROM Customers');
    console.log(data);
}

querySparkSQL();

アプリケーションを作成したら、node を使用してスクリプトを実行します。

node myscript.js
Sample program results (Salesforce is shown.

おわりに

CData ODBC Driver for SparkSQL の30日の無償評価版 をダウンロードすればNode.js でリアルタイムSpark データを使用できます。ご不明な点があれば、サポートチームにお問い合わせください。

関連コンテンツ

トライアル・お問い合わせ

30日間無償トライアルで、CData のリアルタイムデータ連携をフルにお試しいただけます。記事や製品についてのご質問があればお気軽にお問い合わせください。