Database
 sql >> Teknologi Basis Data >  >> RDS >> Database

Driver ODBC Apache Spark

Kami sedang mengembangkan driver ODBC Apache Spark, yang memungkinkan Anda bekerja dengan data Spark dalam aplikasi seperti Perl, PHP, Excel, dan Oracle).

Mengonfigurasi Sumber Data ODBC

Sebelum Driver ODBC Apache Spark dapat digunakan untuk menghubungkan aplikasi ke Apache Spark, sumber data ODBC perlu dikonfigurasi. Sumber data ODBC menyimpan detail koneksi untuk database target (mis. Apache Spark) dan driver ODBC yang diperlukan untuk menyambungkannya (mis. driver ODBC Apache Spark).

Untuk menggunakan driver ODBC Apache Spark, Anda perlu membuat akun pengembang Apache Spark. Masuk ke dasbor pengembang Apache Spark, dan buat aplikasi REST API. Anda memerlukan ID klien dan rahasia Aplikasi untuk membuat sumber data untuk driver ODBC Apache Spark.

Sumber data ODBC dikonfigurasi di ODBC Administrator, yang disertakan dengan Windows.

Di Administrator ODBC:

  1. Pilih tab DSN Sistem, lalu pilih Tambah.
  2. Dalam kotak dialog Buat Sumber Data Baru, pilih Easysoft ODBC-Apache Spark Driver, lalu pilih Selesai.
  3. Lengkapi bidang dalam kotak dialog Easysoft ODBC-Apache Spark Driver DSN Setup.
  4. Dalam aplikasi Anda, sambungkan ke sumber data yang baru dikonfigurasi dan jalankan kueri sampel. Misalnya:
    select * from MyTable

Bekerja dengan data Apache Spark di Perl

Strawberry Perl adalah distribusi Perl untuk Windows yang menyertakan lapisan middleware yang diperlukan (Perl DBI dan Perl DBD::ODBC) untuk mengaktifkan driver Apache Spark ODBC untuk menghubungkan aplikasi Perl Anda ke Apache Spark.

  1. Berikut adalah skrip Perl yang mengambil beberapa data Apache Spark:
    #!/usr/bin/perl -w
    use strict;
    use DBI;
    my $dbh = DBI-> connect('dbi:ODBC:MyApacheSparkDataSource');
    
    my $sql = "SELECT MyCol FROM MyTable LIMIT 10";
    
    # Prepare the statement.
    my $sth = $dbh->prepare($sql)
        or die "Can't prepare statement: $DBI::errstr";
    
    # Execute the statement.
    $sth->execute();
    
    my($SparkCol);
    
    # Fetch and display the result set value.
    while(($SparkCol) = $sth->fetchrow()){
       print("$SparkCol\n");                   
    }
    
    $dbh->disconnect if ($dbh);

Bekerja dengan data Apache Spark di PHP

  1. Berikut adalah skrip PHP yang mengambil beberapa data Apache Spark:
    <?php
      $con = odbc_connect("MyApacheSparkDataSource", "", "");
      $err = odbc_errormsg();
      if (strlen($err) <> 0) {
        echo odbc_errormsg();
      } else {
        $rs2 = odbc_exec($con, "select MyCol from MyTable");
        odbc_result_all($rs2);
        odbc_close($con);
      }
    ?>

Menghubungkan Excel ke Apache Spark

Ikuti langkah-langkah ini untuk mengembalikan data dari Apache Spark ke Microsoft Excel dengan menggunakan Microsoft Query:

  1. Pada Data tab, pilih Kueri Baru> Dari Sumber Lain> Dari ODBC .
  2. Pilih sumber data ODBC Apache Spark saat diminta.
  3. Pilih tabel dari kumpulan data yang tersedia.
  4. Pilih Muat untuk mengembalikan data Apache Spark ke lembar kerja.

    Perhatikan bahwa untuk kumpulan hasil yang besar, Anda mungkin harus memfilter data menggunakan Excel sebelum data dapat dikembalikan ke lembar kerja.

Hubungkan ke Apache Spark dari Oracle

  1. Buat file init DG4ODBC di mesin Oracle Anda. Untuk melakukannya, ubah ke %ORACLE_HOME%\hs\admin direktori. Buat salinan file initdg4odbc.ora . Beri nama file baru initspark.ora .

    Catatan Dalam instruksi ini, ganti %ORACLE_HOME% dengan lokasi direktori Oracle HOME Anda. Misalnya, C:\oraclexe\app\oracle\product\11.2.0\server .

  2. Pastikan parameter dan nilai ini ada di file init Anda:
    HS_FDS_CONNECT_INFO = MyApacheSparkDataSource
  3. Komentar baris yang memungkinkan penelusuran DG4ODBC. Misalnya:
    #HS_FDS_TRACE_LEVEL = <trace_level>
    
  4. Tambahkan entri ke %ORACLE_HOME%\network\admin\listener.ora yang membuat SID_NAME untuk DG4ODBC. Misalnya:
    SID_LIST_LISTENER =
     (SID_LIST =
       (SID_DESC=
         (SID_NAME=spark)
         (ORACLE_HOME=%ORACLE_HOME%)
         (PROGRAM=dg4odbc)
       )
     )
    
  5. Tambahkan entri DG4ODBC ke %ORACLE_HOME%\network\admin\tnsnames.ora yang menentukan SID_NAME yang dibuat pada langkah sebelumnya. Misalnya:
    SPARK =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = oracle_host)(PORT = 1521))
        (CONNECT_DATA =
          (SID = spark)
        )
        (HS = OK)
      )
    

    Ganti Oracle_host dengan nama host mesin Oracle Anda.

  6. Mulai (atau mulai ulang) Oracle Listener:
    cd %ORACLE_HOME%\bin
    lsnrctl stop
    lsnrctl start
    
  7. Hubungkan ke database Oracle Anda di SQL*Plus.
  8. Dalam SQL*Plus, buat link database untuk instance Apache Spark target. Contoh:
    CREATE PUBLIC DATABASE LINK SPARKLINK CONNECT TO "mydummyuser" IDENTIFIED BY "mydummypassword" USING 'spark';
    
  9. Coba kueri data Apache Spark Anda. Misalnya:
    SELECT * FROM "MyTable"@SPARKLINK;
    
Catatan
  • Jika Anda mengalami masalah saat menyambung ke Apache Spark dari Oracle, aktifkan pelacakan DG4ODBC dan periksa file jejak yang ditulis ke %ORACLE_HOME%\hs\trace direktori. Untuk mengaktifkan pelacakan DG4ODBC, tambahkan baris HS_FDS_TRACE_LEVEL = DEBUG ke initspark.ora dan kemudian mulai/restart pendengar Oracle. Jika trace direktori tidak ada, buatlah.
  • Jika Anda mengaktifkan pelacakan ODBC Driver Manager, tetapi tidak mendapatkan file jejak atau mendapatkan file jejak kosong (periksa C:\SQL.log), ubah lokasi file pelacakan ke direktori Windows TEMP. Misalnya, C:\Windows\Temp\SQL.log .

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Panduan analisis data:Saatnya untuk unggul dengan menggunakan Excel!

  2. Amankan Cluster Mongo Anda dengan SSL

  3. SQL MIN() untuk Pemula

  4. SQL Sentry sekarang menjadi SentryOne

  5. CREATE TABLE in SQL – Semua yang Perlu Anda Ketahui Tentang Membuat Tabel di SQL