Amazon redshift odbc driver 64 bit что это

Обновлено: 02.07.2024

Easily connect live Amazon Redshift data with BI, ETL, Reporting, & Custom Apps.

The Amazon Redshift ODBC Driver is a powerful tool that allows you to connect with live Amazon Redshift data, directly from any applications that support ODBC connectivity. Read, write, and update Amazon Redshift data through a standard ODBC Driver interface.

Features

  • Tailor-made for connecting directly to Amazon Redshift, based on PostgreSQL 8.0.2
  • Enables SQL-92 capabilities on Amazon Redshift NoSQL data.
  • Flexible NoSQL flattening - automatic schema generation, flexible querying etc.
  • Connect to live Amazon Redshift data, for real-time data access
  • Full support for data aggregation and complex JOINs in SQL queries
  • Seamless integration with leading BI, reporting, and ETL tools and with custom applications

Custom Applications

Build Apps That Connect To Amazon Redshift

As the most widely used interface to relational data, ODBC interfaces are accessible from every major development technology, including PHP, Python, Delphi, Visual Basic, Labview, PowerBuilder, FoxPro, FileMaker Pro, and more.

Developers can use Amazon Redshift ODBC Driver to rapidly build Web, Desktop, and Mobile applications that interact with live Amazon Redshift data!


Connect Office Tools with Amazon Redshift

Any application that can access data through ODBC, like Microsoft Excel, PowerPivot, or Word, can leverage our ODBC Drivers to connect to real-time data.

Through the Amazon Redshift ODBC Driver applications like Microsoft Word allow users to directly access live Amazon Redshift data with powerful capabilities like 'Mail Merge', eliminating the need for complicated import/export procedures.

Specifications

  • Supports 32-bit and 64-bit applications.
  • ODBC 3.8 compliant native protocol based drivers.
  • Comprehensive ANSI SQL-92 support.
  • Full Unicode Support - any language, any data.
  • Cross-platform ODBC. Available for Windows, Linux and macOS.

Where can I use the Amazon Redshift ODBC Driver?

  1. BI, ETL, & Reporting Tools
  2. Custom Applications
  3. Back-Office Integration


Direct Connection

Our data connector enables various ODBC-aware applications to establish a direct connection to Amazon Redshift via TCP/IP to eliminate the need for Amazon Redshift libraries or clients. A direct connection increases the speed of data transmission between an external application and Amazon Redshift for real-time analytics. It also streamlines the deployment process, as there is no need to distribute any additional libraries or client tools with the driver.

Колоночное хранение и компрессия данных

В противовес классическим операционным СУБД (PostgreSQL, MySQL, SQL Server), хранящим данные в строковом формате (row-oriented storage), Redshift использует все преимущества колоночного хранения (column-oriented storage). Блоки на диске заполняются данными одной колонки, и каждая колонка хранится отдельно от любой другой.

Это дает несколько неоспоримых преимуществ для аналитических нагрузок. Прежде всего для операций проекции (запросе каких-то конкретных колонок). Представьте себе широкую таблицу фактов из 100+ колонок; для формирования результата запроса нам из них понадобятся только 5. При колоночном хранении мы с диска прочтем ровно 5 запрашиваемых колонок. При строковом хранении пришлось бы читать все 100+ колонок и потом отбросить бОльшую часть, что в разы увеличивает интенсивность I/O и нагрузку на диск.

Колоночное хранение организовывает в блоки данные одной колонки (не строки!)

Колоночное хранение организовывает в блоки данные одной колонки (не строки!)

Во-вторых, будучи однородными, данные одной колонки весьма успешно поддаются сжатию (compression). Объясняя на пальцах, нет необходимости хранить наименование тарифа (Business, First, Luxe) для каждой поездки. Достаточно сделать одну запись и указать, на какое количество строк будет распространяться это значение: . Эффект становится особенно заметен, когда количество строк исчисляется сотнями тысяч и миллионами. На деле всё несколько сложнее: кодеков (алгоритмов) сжатия около десятка, и у каждого есть свои особенности и лучшие сценарии для применения.

Пример сжатия данных алгоритмом Runlength encoding

Однако при должном усердии можно добиться еще более значительного сжатия, чем дефолтные кодеки, выбранные Amazon Redshift. Чуть подробнее этот вопрос я раскрывал в публикации Compressing Redshift columnar data even further with proper encodings.

Пересмотр алгоритмов сжатия данных позволил сэкономить 21% дискового пространства

Пересмотр алгоритмов сжатия данных позволил сэкономить 21% дискового пространства

Разграничение прав доступа и ресурсных квот

На мой взгляд, это один из фундаментальных вопросов, напрямую влияющий на безопасностью и работоспособность кластера:

  • любой пользователь принадлежит к группе с четким скоупом прав
  • все запросы разбиваются на категории и обрабатываются с различным приоритетом

Структура лучше хаоса. Концептуально можно сделать так:

  • Бизнес-пользователи смотрят только на витрины данных
  • Аналитики видят стейдж и промежуточные таблицы
  • Инженеры видят сырые данные и метаданные
  • Админ видит их всех :)

Amazon Redshift является форком широко известной PostgreSQL и поэтому синтаксис многим покажется знакомым:

Упрощенная версия конфигурации групп и прав доступа:

У Amazon Redshift очень неплохие настройки automatic workload management (WLM), т.е. автоматическое управление параллелизмом запросов и выделением ресурсов. Но на каком-то моменте и его усилия достигают предела. Redshift просто не может знать всё о специфике вашей нагрузки:

  • Периодичность и время запуска ELT
  • Приоритетные часы для BI и Ad-hoc
  • Какие запросы можно “отстреливать” и почему
  • Наиболее важные запросы, которые точно должны завершаться

Конфигурация очередей (WLM) позволяет гибко управлять нагрузкой на кластер

Конфигурация очередей (WLM) позволяет гибко управлять нагрузкой на кластер

Однако это уже тема отдельной публикации, и потенциально я могу сделать подробный доклад по разграничению прав доступа и тонкой настройки очередей.

Отдельно хочется упомянуть про short-query acceleration. Amazon Redshift гордится использованием ML-алгоритмов для предсказания времени выполнения запросов, и короткие (

до 30 сек.) пропускает впереди тех, что будут выполняться долго. В любом случае, после включении этой фичи у кластера Wheely как будто открылось второе дыхание, а BI здорово ускорился.

Enterprise-Class Remoting

MySQL/SQL Database entry points for Amazon Redshift Data

The CData ODBC drivers include powerful fully-integrated remote access capabilities that makes Amazon Redshift data accessible from virtually anywhere. The drivers include the CData SQL Gateway, which can the optional ability to accept incoming SQL and MySQL client connections and service standard database requests.

With the CData SQL Gateway, users can interact with Amazon Redshift data from any client that supports SQL Server or MySQL: from Web & mobile applications, to CRM and CMS systems, BI tools like SQL Server Analysis Services, and even through popular management applications like MySQL Workbench. Access Amazon Redshift data from virtually any application that can access external data. Applications that can access SQL Server or MySQL data can now connect to Amazon Redshift with this driver.

Data Lake ближе чем вы можете представить

Что там с возможностью устроить Даталейк на ровном месте? Она есть! Вместе с расширением Redshift Spectrum кластер приобретает новые возможности:

  • В виде SQL DDL описывать внешние источники данных (файлы в S3)
  • Выполнять запросы к таким данным: доступны проекции (SELECT), фильтры (WHERE), соединения наборов данных (JOINs), вставка (INSERT)
  • Работать с вложенными и полу-структурированными данными: JSON, ORC, PARQUET

Всё это напоминает широко известные EXTERNAL TABLE в _Hive. _И по сути так оно и есть: под капотом используется именно Hive Metastore.

Благодаря Spectrum в Redshift доступен широкий набор популярных форматов данных

Благодаря Spectrum в Redshift доступен широкий набор популярных форматов данных

В Wheely мы нашли несколько применений Spectrum:

1. Data Quality Pipeline

Каждый день при помощи S3 и Spectrum выполняется кросс-сверка операционной базы данных (MongoDB) и Хранилища (Redshift). Чуть подробнее я описывал это в публикации Кто ответит за качество аналитики: QA для Хранилища Данных, и с тех пор даже есть значительные усовершенствования.

2. Архивирование холодных данных в S3

Холодные данные сроком давности >3 лет мы выгружаем в S3 в бинарный колоночный формат parquet. Данные всё так же доступны для запросов пользователей, однако дорогостоящее место в кластере Redshift они уже не занимают, что замечательно.

Пример выгрузки данных для архивирования в S3 (формат файлов parquet)

В планах у меня еще одна грандиозная идея: хочется создать полноценный дата-лейк. Но об этом позже.

Smart Caching

Smart caching is a configurable option that works by storing queried data into a local database. Enabling smart caching creates a persistent local cache database that contains a replica of data retrieved from the remote source. The cache database is small, lightweight, blazing-fast, and it can be shared by multiple connections as persistent storage.

Caching with our ODBC Drivers is highly configurable, including options for:

  • Auto Cache - Maintain an automatic local cache of data on all requests. The provider will automatically load data into the cache database each time you execute a SELECT query. Each row returned by the query will be inserted or updated as necessary into the corresponding table in the cache database.
  • Explicit Cache - Cache only on demand. Developers decide exactly what data gets stored in the cache and when it is updated. Explicit caching provides full control over the cache contents by using explicit execution of CACHE statements.
  • No Cache - All requests access only live data and no local cache file is created.

This powerful caching functionality increases application performance and allows applications to disconnect and continue limited functioning without writing code for additional local storage and/or data serialization/deserialization.

More information about ODBC Driver caching and best caching practices is available in the included help files.

ODBC Driver for Amazon Redshift

Devart ODBC Driver for Amazon Redshift is a high-performance connectivity solution with enterprise-level features for accessing Amazon Redshift databases from ODBC-compliant reporting, analytics, BI, and ETL tools on both 32-bit and 64-bit Windows, macOS, and Linux. Our ODBC driver fully supports standard ODBC API functions and data types and enables easy and secure access to live Amazon Redshift data from anywhere.

Robust ODBC Access to Amazon Redshift

Full-featured and consistent SQL access to any supported data source through ODBC

ODBC 3.8 compliant native protocol based drivers.

Support 32-bit and 64-bit applications and unicode ODBC APIs.

Available for Microsoft Windows, Unix, and Mac (macOS / OS X) platforms.

Our drivers undergo extensive testing and are certified to be compatible with leading analytics and reporting applications like Tableau, Microsoft Excel, and many more.

* Please visit our knowledge base to access how-to articles.

The driver includes a library of 50 plus functions that can manipulate column values into the desired result. Popular examples include Regex, JSON, and XML processing functions.

Our drivers enhance the data source's capabilities by additional client-side processing, when needed, to enable analytic summaries of data such as SUM, AVG, MAX, MIN, etc.

The data model exposed by our ODBC Drivers can easily be customized to add or remove tables/columns, change data types, etc. without requiring a new build. These customizations are supported at runtime using human-readable schema files that are easy to edit.

Includes standard Enterprise-class security features such as TLS/ SSL data encryption for all client-server communications.

Our replication and caching commands make it easy to copy data to local and cloud data stores such as Oracle, SQL Server, Google Cloud SQL, etc. The replication commands include many features that allow for intelligent incremental updates to cached data.

Аналитический движок Amazon Redshift + преимущества Облака

Аналитический движок Amazon Redshift + преимущества Облака

На связи Артемий Козырь из команды Аналитики, и я продолжаю знакомить вас с Wheely. В этом выпуске:

  • Основы гибких кластерных вычислений
  • Колоночное хранение и компрессия данных
  • Вместо индексов: ключи сегментации и сортировки
  • Управление доступами, правами, ресурсами
  • Интеграция с S3 или Даталейк на ровном месте

Все аналитические решения Wheely так или иначе строятся на основе Хранилища Данных, движком которого выступает продукт с кодовым названием Redshift от провайдера облачных сервисов Amazon. Но почему именно этот продукт?

Эту публикацию я бы охарактеризовал как базовую и основополагающую. Сложные механизмы и принципы работы системы скрыты от бизнес-пользователей, но именно они лежат в основе производительного и современного решения. Постараюсь внести ясность и подчеркнуть для вас ключевые особенности.

В случае факапа восстановитесь из бэкапа

Вместо тысячи слов

Вместо тысячи слов

Обычно я не вставляю мемы в публикации, но тут не смог удержаться. Случайно наткнулся и нашел его очень смешным и жизненным. Ситуация может произойти с каждым, и я не исключение. Благо случай не был связан с витринами и production-таблицами, а произошел в рамках одной ad-hoc задачи.

Суть в том, что с недавнего времени появилась возможность восстановить единичные таблицы из бэкапа в указанное целевое место назначения (target table). Очень легко восстановить удаленную или испорченную таблицу из бэкапа за определенную дату. И именно таблицу, а не снапшот целиком. И это не может не радовать. Несколько раз пользовались, и, надеюсь, хватит.

Восстановить удаленную или испорченную таблицу из бэкапа теперь как никогда просто и быстро

Восстановить удаленную или испорченную таблицу из бэкапа теперь как никогда просто и быстро

Ну и, конечно же, стоит упомянуть что бэкапы выполняются автоматически с периодичностью в несколько часов и горизонтом в 7 суток.

Ключи сегментации и сортировки вместо индексов

В Redshift вторичные поисковые структуры данных (индексы) в привычном понимании (B-Tree, Bitmap) отсутствуют. Здесь они просто не нужны, и вот почему:

Тонкая настройка позволяет задать принцип, по которому строки будут распределены между узлами кластера: равномерное (EVEN), копия на каждом (ALL), или по ключу (KEY). Эта конфигурация носит название тип сегментации (distribution style).

3 типа распределения каждой строки данных в кластере: KEY, ALL, EVEN

3 типа распределения каждой строки данных в кластере: KEY, ALL, EVEN

А уже данные в блоках на каждом узле можно физически хранить в заданном порядке, то есть отсортированными. На ум приходит сортировка, например, по монотонно возрастающему идентификатору. Конфигурация, использующая один и тот же атрибут в distribution key, sort key обеспечит использование самого оптимального типа соединения таблиц — SORT MERGE JOIN:

Смотрите на это как на конструкцию ORDER BY в SQL-запросе, сохраняющую порядок в таблице на диске. При этом задействованы могут быть несколько колонок — тогда это уже составной ключ (compound sort key).

В дополнение, есть еще такой очень хитрый вид сортировки как Interleaved sort key, который дает одинаковый вес любой из колонок (или их комбинации) в ключе сортировки. Он отлично подходит к витринам данных, для которых нет одного заранее известного паттерна доступа.

INTERLEAVED SORT BY completed_ts_loc, city, country, service_group, is_airport, is_wheely_journey:

Вкупе с колоночным хранением данных это дает поразительные результаты с точки зрения производительности и использования ресурсов.

BI, ETL, & Reporting Tool Integration

ODBC is the most widely supported interface for connecting applications with data. All kinds of BI, Reporting, ETL, Database, and Analytics tools offer the ability to read and write data via ODBC connectivity.

  • Cognos BI
  • Crystal Reports
  • FileMaker Pro
  • FoxPro
  • Microsoft Access
  • Microsoft Excel
  • MicroStrategy
  • Oracle DB
  • Power Map
  • Power Pivot
  • QlikView
  • SAP Business Objects
  • Sharepoint Services
  • Tableau (certified)


Amazon Redshift ODBC Driver

The Amazon Redshift ODBC Driver is a powerful tool that allows you to connect with live Amazon Redshift data, directly from any applications that support ODBC connectivity. Read, write, and update Amazon Redshift data through a standard ODBC Driver interface.

The Amazon Redshift ODBC Driver is a powerful tool that allows you to easily connect-to live Amazon Redshift data through any ODBC capable application or tool! With the Driver users can access Amazon Redshift the same way that they would connect to any other ODBC data source. The Drivers are completely self-contained; no additional software installation is required.

  • Access Amazon Redshift data through widely available tools - standard ODBC interface offering the greatest accessibility from applications and developer -technologies.
  • Advanced wire-protocol SSL security for remote connectivity
  • Faster application deployment and configuration
  • 32-bit and 64-bit support

ODBC is the most widely supported interface for connecting applications with data. All kinds of BI, Reporting, ETL, Database, and Analytics tools offer the ability to read and write data via ODBC connectivity.

Cognos BI Crystal Reports FileMaker Pro
FoxPro Microsoft Access Microsoft Excel
MicroStrategy Oracle DB Power Map
Power Pivot QlikView SAP Business Objects
Sharepoint Services Tableau (certified) . and many more!

As the most widely used interface to relational data, ODBC interfaces are accessible from every major development technology, including PHP, Python, Delphi, Visual Basic, Labview, PowerBuilder, FoxPro, FileMaker Pro, and more.

Developers can use Amazon Redshift ODBC Driver to rapidly build Web, Desktop, and Mobile applications that interact with live Amazon Redshift data!

ODBC Driver Performance

With traditional approaches to remote access, performance bottlenecks can spell disaster for applications. Regardless if an application is created for internal use, a commercial project, web, or mobile application, slow performance can rapidly lead to project failure. Accessing data from any remote source has the potential to create these problems. Common issues include:

  1. Network Connections - Slow network connections and latency issues are common in mobile applications.
  2. Service Delays - Delays due to service interruptions, resulting in server hardware or software updates.
  3. Large Data - Intentional or unintentional requests for large amounts of data.
  4. Disconnects - Complete loss of network connectivity.

The CData ODBC Driver for Amazon Redshift solves these issues by supporting powerful smart caching technology that can greatly improve the performance and dramatically reduce application bottlenecks.

Кластерные вычисления как основа архитектуры

Кластер состоит из leader node (координатор) и набора compute node (вычислительный узел). Координатор играет роль связующего звена между кластером и пользовательскими приложениями, генерирует планы запросов, управляет коммуникацией. Вычислительные узлы — рабочие лошадки, на которых выполняется основная часть расчетов.

Redshift обеспечивает параллельную обработку данных на кластере машин

Redshift обеспечивает параллельную обработку данных на кластере машин

Этот принцип широко известен как MPP (massively parallel processing, массово-параллельная архитектура). Не лишним будет упомянуть и другие популярные СУБД, использующие подобные принципы: BigQuery, Vertica, Greenplum, Teradata, Azure SQL DW.

Каждая compute node обладает набором выделенных ресурсов: CPU, memory, disk, которые определяются типом виртуальной машины.

Спецификация типов compute node доступных для Amazon Redshift

Сегодня в Wheely мы используем 8 узлов типа dc2.large, что в сумме составляет 16 vCPU, 120 GiB памяти, 1.3 TB объем диска. Кто-то может справедливо заметить, что это не такие уж и огромные объемы данных, на что я бы возразил: суть не в объеме, а в том, какие результаты и пользу вы можете выжать из этих данных.

Не могут не радовать элементы гибкости и эластичности (elasticity), в целом присущие облачным сервисам. С ростом бизнеса и потребности в аналитике несколько раз без особого труда производилось расширение кластера: увеличивалось количество узлов (resize), осуществлялся переход на новое поколение виртуальных машин (node upgrade).

В моменты пиковых нагрузок производительность на стабильном уровне может поддержать функция concurrency scaling, которая автоматически добавляет вычислительные мощности в виде временных compute nodes, которые "гасятся" после спада нагрузки.

Очень ждём: in-database ML, native semi-structured data support

Даже несмотря на все перечисленные достоинства всегда есть куда развиваться. И команде Wheely как искушенным пользователям всегда хочется большего.

Облизываясь, я смотрю на новые фичи Amazon Redshift, которые уже находятся в статусе preview (пока доступны для тестовых кластеров):

Кажется, я уже придумал им достойное применение. Очень ждём! И, конечно, подготовим свежие обзоры и доклады.

Интересно? Присоединяйся к команде Wheely. Или свяжись со мной и задай вопросы — буду рад ответить.

Читайте также: