Загрузить данные из таблицы MS SQL в snappyData - PullRequest
3 голосов
/ 04 февраля 2020

Я использую Tibco ComputeDB, который является новым для меня. Он использует sparkDB и snappyData. Я хочу добавить данные из MS SQL в таблицу памяти snappyData.

Я могу прочитать данные из CSV и загрузить их в snappyDaya с помощью следующей команды.

=> CREATE EXTERNAL TABLE IF, если НЕ СУЩЕСТВУЕТ AirlineData ИСПОЛЬЗУЯ ОПЦИИ csv (путь '/home/ubuntu/Downloads/airline-data-small/*.csv')

Теперь так же, как я хочу читать данные из MS SQL и хочу добавить это в snappyData, но не в состоянии найти правильный способ сделать это. Я следовал ниже документации и смог подключиться к серверу MS SQL и отображать данные с помощью spark / scala. Но не нашел способа добавить его в snappyData.

=> https://docs.microsoft.com/en-us/azure/databricks/data/data-sources/sql-databases

Есть также документация, в которой показано, как это сделать для MySQL, но не для MS SQL.

=> https://snappydatainc.github.io/snappydata/howto/load_data_from_external_data_stores/

Наткнулся на ссылку ниже и внес изменения для sqlserver, но получил ошибку.

= > Как получить внешнюю таблицу jdb c url в SnappyData

Для SQL Сервер: -

создать внешнюю таблицу Test_1 с использованием параметров jdb c ( url 'jdb c: sqlserver: // сервер: порт; база данных = имя_базы; пользователь = имя пользователя; пароль = pswd', драйвер 'com.microsoft.sqlserver.jdb c .SQLServerDriver', таблица данных dbtable 'CERTIFICATES');

Ошибка: -

ОШИБКА 42000: (SQLState = 42000 Severity = 20000) (Сервер = localhost / 127.0.0.1 [1528] Thread = ThriftProcessor-0) Синтаксическая ошибка или исключение анализа: com .microsoft.sqlserver.jdb c .SQLServerDriver

1 Ответ

3 голосов
/ 05 февраля 2020

Похоже, JAR-файл драйвера C для сервера SQL не добавлен в путь к классам.

Для этого вам потребуется развернуть JR-файл C файла драйвера для SQL сервера. используя следующую команду SQL:

deploy jar <unique-alias-name> 'path-to-jar'

Проверьте эту ссылку для более подробной информации: https://snappydatainc.github.io/snappydata/reference/sql_reference/deploy_jar/

Последняя версия JDB C драйвер можно скачать отсюда: https://www.microsoft.com/en-US/download/details.aspx?id=11774

После развертывания jar попробуйте создать внешнюю таблицу, и она должна работать. Протестировано по следующему запросу с Microsoft SQL Server 2016:

CREATE  EXTERNAL TABLE external_table USING jdbc OPTIONS (dbtable 'T1',driver 'com.microsoft.sqlserver.jdbc.SQLServerDriver',user 'sqldb', password 'pw',url 'jdbc:sqlserver://sql-server-host:1435;DatabaseName=testdatabase');
...