Database
 sql >> база данни >  >> RDS >> Database

Google BigQuery ODBC драйвер

Пуснахме ODBC драйвер за Google BigQuery. Драйверът ви позволява да заявявате и актуализирате BigQuery данни в приложения, различни от конзолата на Google BigQuery. Решихме да споделим някои от нещата, които можете да правите в тези приложения на трети страни (например Perl, PHP, Excel и Oracle).

Инсталиране на BigQuery ODBC драйвер

  1. Инсталирайте и лицензирайте драйвера на Google BigQuery ODBC на машината, където е инсталирано клиентското приложение.

    Например, ако искате да работите с BigQuery данни в Excel, инсталирайте драйвера BigQuery ODBC на машината, където е инсталиран Excel.

    За да направите това, изпълнете разпространението на файла и следвайте инструкциите на екрана.

    Инсталационната програма стартира Easysoft License Manager, тъй като не можете да използвате BigQuery ODBC драйвер, докато не получите лиценз.

    Налични са следните типове лицензи:

    • Безплатен ограничен във времето пробен лиценз, който ви дава безплатно и неограничено използване на продукта за ограничен период от време (обикновено 14 дни).
    • Пълен лиценз, ако сте закупили продукта. При закупуване на продукта ви се дава код за оторизация, който използвате за получаване на лиценз
  2. В Easysoft License Manager въведете вашите данни.

    ТРЯБВА да въведете полетата Име, Е-мейл адрес и Фирма.

    Имейл адресът ТРЯБВА да е същият като адреса, използван за регистрация и изтегляне от уеб сайта на Easysoft, в противен случай няма да можете да получите пробни лицензи.

  3. Изберете Заявка за лиценз.

    От вас се иска тип лиценз.

  4. Направете едно от следните неща:
    • За пробен лиценз щракнете върху Ограничена във времето пробна версия и след това щракнете върху Напред.

      Мениджърът на лицензи пита какъв софтуер лицензирате. Изберете Easysoft BigQuery ODBC Driver от падащия списък и след това щракнете върху Напред.

    • Ако сте получили код за оторизация за закупен лиценз, изберете Лиценз без изтичане и след това щракнете върху Напред.

      Мениджърът на лицензи изисква вашия код за оторизация.

      Въведете кода за оторизация и след това щракнете върху Напред.

  5. Диспечерът на лицензи показва обобщение на въведената от вас информация и ви позволява да изберете метода за кандидатстване за вашия лиценз.
  6. Направете едно от следните неща:
    • Изберете Заявка онлайн, ако устройството ви е свързано с интернет и може да осъществява изходящи връзки към порт 8884.

      След това License Manager изпраща заявка до сървъра за лицензи на Easysoft за автоматично активиране на вашия лицензен ключ. Това е най-бързият метод и води до въвеждането на вашите данни незабавно в нашата база данни за поддръжка.

    • Останалите три опции (заявка по имейл, заявка за печат и заявка за преглед) са всички начини за получаване на лиценз, ако устройството ви е офлайн (т.е. няма връзка с интернет).

      Всеки от тези методи включва предоставяне на Easysoft на информация, включително номера на вашата машина (уникален номер за вашата машина) и след това изчакване да получите лицензния ви ключ.

      Вместо да изпращате данните си по имейл до Easysoft, можете да ги въведете директно в уеб сайта на Easysoft и лицензният ви ключ ще ви бъде изпратен автоматично.

      За да използвате този метод, щракнете върху Преглед на заявка и след това посетете:

      • Страница с пробен лиценз
      • Страница с пълен лиценз

      На страницата Лицензиране въведете номера на вашата машина (и кода за оторизация за закупения лиценз), щракнете върху Изпращане и лицензният ви ключ ще ви бъде изпратен по имейл.

      Когато получите лицензния ключ, можете да го активирате или като щракнете двукратно върху прикачения файл към имейла, или като щракнете върху Enter License на главния екран на License Manager и поставите лицензния ключ в диалоговия прозорец.

    • Изберете Готово, за да излезете от мениджъра на лицензи.

      Инсталацията е завършена.

Конфигуриране на ODBC източник на данни

Преди BigQuery ODBC драйверът да може да се използва за свързване на приложение към BigQuery, е необходимо да конфигурирате източник на ODBC данни. Източникът на ODBC данни съхранява подробностите за връзката за целевата база данни (напр. BigQuery) и ODBC драйвера, който е необходим за свързване с нея (напр. BigQuery ODBC драйвер).

ODBC източници на данни се конфигурират в ODBC Administrator, който е включен в Windows. Как се изпълнява ODBC Administrator зависи от това дали приложението ви е 32-битово или 64-битово:

  • Моето приложение е 32-битово

    В диалоговия прозорец Изпълнение на Windows въведете:

    %windir%\syswow64\odbcad32.exe

  • Моето приложение е 64-битово

    Отворете Система и сигурност> Административни инструменти в контролния панел и след това отворете ODBC източници на данни (64-битови). (В Windows Server 2003 и по-стари версии аплетът на контролния панел, който стартира ODBC Administrator, е обозначен като източници на данни.)

Как да разберем дали дадено приложение е 32-битово или 64-битово?

Приложение Бележки
Excel Има както 32-битова, така и 64-битова версия на Excel. За да разберете коя версия на Excel имате, стартирайте Excel и след това стартирайте Windows Task Manager. В диспечера на задачите изберете раздела Процеси. Потърсете Excel.exe в списъка. Ако името на този процес е последвано от *32 , вашата версия на Excel е 32-битова. В противен случай вашата версия на Excel е 64-битова.
Добри данни CloudConnect Deigner е 64-битово приложение.
Микростратегия MicroStrategy е 32-битово приложение.
Oracle Компонентът Oracle, който взаимодейства с MongoDB ODBC драйвера, се нарича DG4ODBC. Има както 32-битова, така и 64-битова версия на DG4ODBC. За да разберете коя версия на DG4ODBC имате, стартирайте Windows Task Manager и изберете раздела Процеси. В прозорец на командния ред въведете dg4odbc --help . В диспечера на задачите на Windows потърсете процеса DG4ODBC. Ако името на изображението е "dg4odbc.exe *32", DG4ODBC е 32-битов. Ако името на изображението е "dg4odbc.exe", DG4ODBC е 64-битов. Натиснете CTRL+C в прозореца на командния ред, когато сте използвали Windows Task Manager, за да разберете архитектурата на DG4ODBC.
Oracle Business Intelligence Enterprise Edition (OBIEE) Компонентът OBIEE, който взаимодейства с MongoDB ODBC драйвера, се нарича Oracle BI Administration Tool. Инструментът за администриране на Oracle BI е 64-битов.
PHPRunner PHPRunner е 32-битово приложение.
QlikView QlikView е 32-битово приложение, ако е избрано квадратчето за отметка Force 32 Bit. В противен случай QlikView е 64-битово приложение.
SAP BusinessObjects Централен сървър за управление е 64-битово приложение. Business View Manager, Information Design Tool и Web Intelligence Rich Client са 32-битови приложения.
SAP Crystal Reports Crystal Reports е 32-битово приложение.
SQL сървър Има както 32-битова, така и 64-битова версия на SQL Server. За да разберете коя версия на SQL Server имате, свържете се с вашия екземпляр на SQL Server и след това изпълнете този SQL израз:
select SERVERPROPERTY('edition')

Ако имате 64-битовата версия на SQL Server и искате да използвате свързан сървър с BigQuery ODBC драйвер, приложението ви е 64-битово.

Ако имате 32-битовата версия на SQL Server или искате да използвате SSIS с BigQuery ODBC драйвер, вашето приложение е 32-битово.

Таблица Tableau е 32-битово приложение.
TIBCO Spotfire TIBCO Spotfire е 64-битово приложение.

В ODBC администратор:

  1. Изберете раздела System DSN и след това изберете Добавяне.
  2. В диалоговия прозорец Създаване на нов източник на данни изберете Easysoft ODBC-BigQuery Driver и след това изберете Край.
  3. Попълнете тези полета в диалоговия прозорец Easysoft ODBC-BigQuery Driver DSN Setup:
    Setting Стойност
    DSN BigQuery
    Токен за опресняване Изберете Удостоверяване и получете токен и дайте на драйвера на BigQuery ODBC разрешение за достъп до вашите данни на BigQuery, за да попълни това поле.
  4. В приложението си се свържете с новоконфигурирания си източник на данни и изпълнете примерна заявка. Например:
    select * from MyTable limit 10

Работа с данни от BigQuery в Perl

Strawberry Perl е Perl дистрибуция за Windows, която включва необходимите слоеве на междинен софтуер (Perl DBI и Perl DBD::ODBC), за да позволи на BigQuery ODBC драйвера да свърже вашите Perl приложения към BigQuery.

  1. Ето скрипт на Perl, който извлича някои BiqQuery данни:
    #!/usr/bin/perl -w
    use strict;
    use DBI;
    my $dbh = DBI-> connect('dbi:ODBC:MyBigQueryDataSource');
    
    my $sql = "SELECT residential_ratio  FROM `bigquery-public-data.hud_zipcode_crosswalk.census_tracts_to_zipcode` LIMIT 10";
    
    # Prepare the statement.
    my $sth = $dbh->prepare($sql)
        or die "Can't prepare statement: $DBI::errstr";
    
    # Execute the statement.
    $sth->execute();
    
    my($BigQueryCol);
    
    # Fetch and display the result set value.
    while(($BigQueryCol) = $sth->fetchrow()){
       print("$BigQueryCol\n");                   
    }
    
    $dbh->disconnect if ($dbh);
  2. Ето Perl скрипт, който вмъква някои BigQuery данни:
    #!/usr/bin/perl -w
    use strict;
    use warnings;
    use DBI;
    
    my $data_source = q/dbi:ODBC:MyBigQueryDataSource/;
    
    my $h = DBI-"connect($data_source)
        or die "Can't connect to $data_source: $DBI::errstr";
    $h->{RaiseError} = 1;
    
    my $s = $h->prepare(q/insert into MyTable(MyStringCol, MyIntegerCol, MyFloatCol, MyNumericCol, MyBooleanCol,MyDateCol,MyTimeCol,MyDateTimeCol,MyTimeStampCol) values(?,?,?,?,?,?,?,?,?)/);
    my $string='MyValue';
    my $int=46683;
    my $float=8.3;
    my $numeric=0.00333;
    my $bool=0;
    my $date='2021-01-23';
    my $time='00:00:20';
    my $datetime='2021-02-05 00:00:00';
    my $timestamp='2019-01-27 00:00:00';
    
    $s->bind_param(1, $string, DBI::SQL_WVARCHAR);
    $s->bind_param(2, $int, DBI::SQL_INTEGER);
    $s->bind_param(3, $float, DBI::SQL_FLOAT);
    $s->bind_param(4, $numeric, DBI::SQL_NUMERIC);
    #$s->bind_param(5, $bignumeric, DBI::SQL_WVARCHAR);
    $s->bind_param(5, $bool, DBI::SQL_TINYINT);
    $s->bind_param(6, $date, DBI::SQL_DATE);
    $s->bind_param(7, $time, DBI::SQL_TIME);
    $s->bind_param(8, $datetime, DBI::SQL_DATETIME);
    $s->bind_param(9, $timestamp, DBI::SQL_TIMESTAMP);
    $s->execute($string,$int,$float,$numeric,$bool,$date,$time,$datetime,$timestamp);
    $h->disconnect;
    	  
  3. Ето Perl скрипт, който актуализира BigQuery запис:
    #!/usr/bin/perl -w
    use strict;
    use warnings;
    use DBI;
    
    my $data_source = q/dbi:ODBC:MyBigQueryDataSource/;
    
    my $h = DBI->connect($data_source)
        or die "Can't connect to $data_source: $DBI::errstr";
    $h->{RaiseError} = 1;
    
    my $s = $h->prepare(q/UPDATE MyTestTable SET MyStringCol = ? WHERE MyStringCol = 'MyValue' /);
    my $string='MyNewValue';
    
    $s->bind_param(1, $string, DBI::SQL_WVARCHAR);
    
    $s->execute($string);
    $h->disconnect;

Работа с данни от BigQuery в PHP

  1. Ето PHP скрипт, който извлича някои данни от BiqQuery:
    <?php
      $con = odbc_connect("MyBigQueryDataSource", "", "");
      $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);
      }
    ?>

Свързване на Excel с BigQuery

Следвайте тези стъпки, за да върнете данни от BigQuery в Microsoft Excel с помощта на Microsoft Query:

  1. Върху Данните раздел, изберете Нова заявка> От друг източник> От ODBC .
  2. Изберете източника на данни BigQuery ODBC, когато бъдете подканени.
  3. Изберете таблица от наличните набори от данни.
  4. Изберете Зареждане, за да върнете данните на BiqQuery към работния лист.

    Имайте предвид, че за големи набори от резултати може да се наложи да филтрирате данните с помощта на Excel, преди данните да могат да бъдат върнати в работния лист.

Свържете се с BigQuery от Oracle

  1. Създайте DG4ODBC init файл на вашата Oracle машина. За да направите това, променете на %ORACLE_HOME%\hs\admin директория. Създайте копие на файла initdg4odbc.ora . Наименувайте новия файл initbq.ora .

    Забележка В тези инструкции заменете %ORACLE_HOME% с местоположението на вашата HOME директория на Oracle. Например C:\oraclexe\app\oracle\product\11.2.0\server .

  2. Уверете се, че тези параметри и стойности присъстват във вашия init файл:
    HS_FDS_CONNECT_INFO = MyBigQueryDataSource
  3. Коментирайте реда, който позволява проследяване на DG4ODBC. Например:
    #HS_FDS_TRACE_LEVEL = <trace_level>
    
  4. Добавете запис към %ORACLE_HOME%\network\admin\listener.ora което създава SID_NAME за DG4ODBC. Например:
    SID_LIST_LISTENER =
     (SID_LIST =
       (SID_DESC=
         (SID_NAME=bq)
         (ORACLE_HOME=%ORACLE_HOME%)
         (PROGRAM=dg4odbc)
       )
     )
    
  5. Добавете запис DG4ODBC към %ORACLE_HOME%\network\admin\tnsnames.ora който посочва SID_NAME, създаден в предишната стъпка. Например:
    BQ =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = oracle_host)(PORT = 1521))
        (CONNECT_DATA =
          (SID = bq)
        )
        (HS = OK)
      )
    

    Заменете oracle_host с името на хоста на вашата Oracle машина.

  6. Стартирайте (или рестартирайте) Oracle Listener:
    cd %ORACLE_HOME%\bin
    lsnrctl stop
    lsnrctl start
    
  7. Свържете се с вашата база данни Oracle в SQL*Plus.
  8. В SQL*Plus създайте връзка към базата данни за целевия екземпляр на BigQuery. Например:
    CREATE PUBLIC DATABASE LINK bqlink CONNECT TO "mydummyuser" IDENTIFIED BY "mydummypassword" USING 'bq';
    
  9. Опитайте да направите заявка за данните си в BigQuery. Например:
    SELECT * FROM "MyTable"@BQLINK;
    
Бележки
  • Ако имате проблеми при свързването с BigQuery от Oracle, активирайте проследяването на DG4ODBC и проверете проследяващите файлове, записани в %ORACLE_HOME%\hs\trace директория. За да активирате проследяването на DG4ODBC, добавете реда HS_FDS_TRACE_LEVEL = DEBUG към initbq.ora и след това стартирайте/рестартирайте слушателя на Oracle. Ако trace директория не съществува, създайте я.
  • Ако активирате проследяването на ODBC Driver Manager, но не получавате файл за проследяване или празен файл за проследяване (проверете за C:\SQL.log), променете местоположението на файла за проследяване на TEMP директорията на Windows. Например, 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. Съхранение на файлове в SQL база данни с помощта на FILESTREAM – част 1

  2. RMAN командите се провалят с ORA-00904:“BS”.”GUID”:невалиден идентификатор

  3. Обосноваване на новия Mac Pro

  4. Пагинация с OFFSET / FETCH :По-добър начин

  5. Подреждане на данни за дата и час