Linux - Amazon Athena

Linux

Se quiser usar um computador cliente com Linux para acessar o Amazon Athena, é necessário ter o driver ODBC do Amazon Athena.

Requisitos do sistema Linux

Cada computador cliente Linux no qual você instale o driver deve atender aos seguintes requisitos.

  • Ter acesso root.

  • Usar umas das seguintes distribuições do Linux:

    • Red Hat Enterprise Linux (RHEL) 7 ou 8

    • CentOS 7 ou 8.

  • Ter 100 MB de espaço em disco disponível.

  • Usar a versão 2.3.1 ou superior do unixODBC.

  • Usar a versão 2.26 ou posterior da GNU C Library (glibc).

Como instalar o conector de dados ODBC no Linux

Siga o procedimento abaixo para instalar o driver ODBC do Amazon Athena em um sistema operacional Linux.

Para instalar o driver ODBC do Amazon Athena no Linux
  1. Insira um dos seguintes comandos:

    sudo rpm -Uvh AmazonAthenaODBC-2.X.Y.Z.rpm

    ou

    sudo yum --nogpgcheck localinstall AmazonAthenaODBC-2.X.Y.Z.rpm
  2. Após a conclusão da instalação, insira um dos seguintes comandos para verificar se o driver está instalado:

    • yum list | grep amazon-athena-odbc-driver

      Saída:

      amazon-athena-odbc-driver.x86_64 2.0.2.1-1.amzn2int installed
    • rpm -qa | grep amazon

      Saída:

      amazon-athena-odbc-driver-2.0.2.1-1.amzn2int.x86_64

Configurar um nome de fonte de dados no Linux

Após a instalação do driver, você poderá encontrar exemplos de arquivos .odbc.ini e .odbcinst.ini no seguinte local:

  • /opt/athena/odbc/ini/.

Use os arquivos .ini nesse local como exemplos para configurar o driver ODBC e o nome da fonte de dados (DSN) do Amazon Athena.

nota

Por padrão, os gerenciadores de driver ODBC usam os versões ocultas dos arquivos de configuração .odbc.ini e .odbcinst.ini, localizadas no diretório inicial.

Para especificar o caminho dos arquivos .odbc.ini e .odbcinst.ini usando o unixODBC, execute as etapas a seguir.

Para especificar localizações de arquivos .ini do ODBC usando unixODBC
  1. Defina ODBCINI com o caminho completo e o nome de arquivo do arquivo odbc.ini, como no exemplo a seguir.

    export ODBCINI=/opt/athena/odbc/ini/odbc.ini
  2. Defina ODBCSYSINI com o caminho completo do diretório que contém o arquivo odbcinst.ini, como no exemplo a seguir.

    export ODBCSYSINI=/opt/athena/odbc/ini
  3. Digite o comando a seguir para verificar se você está usando o gerenciador de drivers UnixODBC e os arquivos odbc*.ini corretos:

    username % odbcinst -j

    Exemplo de saída

    unixODBC 2.3.1 DRIVERS............: /opt/athena/odbc/ini/odbcinst.ini SYSTEM DATA SOURCES: /opt/athena/odbc/ini/odbc.ini FILE DATA SOURCES..: /opt/athena/odbc/ini/ODBCDataSources USER DATA SOURCES..: /opt/athena/odbc/ini/odbc.ini SQLULEN Size.......: 8 SQLLEN Size........: 8 SQLSETPOSIROW Size.: 8
  4. Se quiser usar um nome da fonte de dados (DSN) para estabelecer conexão com seu armazenamento de dados, configure o arquivo odbc.ini para definir nomes de fonte de dados (DSNs). Defina as propriedades no arquivo odbc.ini para criar um DSN que especifique as informações de conexão para seu armazenamento de dados, como no exemplo a seguir.

    [ODBC Data Sources] athena_odbc_test=Amazon Athena ODBC (x64) [ATHENA_WIDE_SETTINGS] # Special DSN-name to signal driver about logging configuration. LogLevel=0 # To enable ODBC driver logs, set this to 1. UseAwsLogger=0 # To enable AWS-SDK logs, set this to 1. LogPath=/opt/athena/odbc/logs/ # Path to store the log files. Permissions to the location are required. [athena_odbc_test] Driver=/opt/athena/odbc/lib/libathena-odbc.so AwsRegion=us-west-1 Workgroup=primary Catalog=AwsDataCatalog Schema=default AuthenticationType=IAM Credentials UID= PWD= S3OutputLocation=s3://amzn-s3-demo-bucket/
  5. Configure o arquivo odbcinst.ini, como no exemplo a seguir.

    [ODBC Drivers] Amazon Athena ODBC (x64)=Installed [Amazon Athena ODBC (x64)] Driver=/opt/athena/odbc/lib/libathena-odbc.so Setup=/opt/athena/odbc/lib/libathena-odbc.so
  6. Após instalar e configurar o driver ODBC do Amazon Athena, use a ferramenta de linha de comando isql do unixODBC para verificar a conexão, como no exemplo a seguir.

    username % isql -v "athena_odbc_test" +---------------------------------------+ | Connected! | | | | sql-statement | | help [tablename] | | quit | | | +---------------------------------------+ SQL>