createConnectionForPool

Инициализируйте параллельный пул с помощью соединения с базой данных

Синтаксис

c = createConnectionForPool(pool,datasource,username,password)

Описание

пример

c = createConnectionForPool(pool,datasource,username,password) инициализирует параллельный пул путем создания соединения с базой данных на каждом рабочем в пуле с помощью источника данных, имени пользователя и пароля.

Примечание

Если вы используете источник данных ODBC для соединения с базой данных, у каждого рабочего в пуле должен быть необходимый установленный драйвер ODBC и сконфигурированный источник данных ODBC. В противном случае ошибка происходит, когда вы импортируете данные от базы данных.

Примеры

свернуть все

Используя соединение с базой данных ODBC, получите доступ к базе данных с помощью параллельного пула. Импортируйте данные от нескольких SQL-запросов параллельно.

Каждому рабочему в пуле установили драйвер ODBC. Кроме того, у каждого рабочего есть сконфигурированный источник данных ODBC. Для получения дополнительной информации смотрите, что configureODBCDataSource функционирует.

Запустите параллельный пул.

pool = gcp;
Starting parallel pool (parpool) using the 'local' profile ...
Connected to the parallel pool (number of workers: 6).

Инициализируйте параллельный пул с помощью источника данных ODBC. Этот источник данных конфигурирует драйвер ODBC к базе данных Microsoft® SQL Server® с аутентификацией Windows®. Задайте пустое имя пользователя и пароль.

datasource = "MS SQL Server Auth";
username = "";
password = "";
c = createConnectionForPool(pool,datasource,username,password);

Задайте SQL-запросы.

sqlqueries = ["SELECT * FROM invoice" ...
    "SELECT * FROM inventorytable" ...
    "SELECT * FROM producttable"];

Используйте функцию parfor, чтобы параллелизировать доступ к данным с помощью корзины запроса.

Для каждого рабочего получите объект соединения с базой данных, выполните SQL-запросы и импортируйте данные локально.

parfor i = 1:length(sqlqueries)

    conn = c.Value;

    results = fetch(conn,sqlqueries(i));

    allresults{i} = results;

end

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

allresults
allresults = 1×3 cell array
    {10×5 table}    {13×4 table}    {15×5 table}

Закройте параллельный пул.

delete(pool);

Используя соединение с базой данных JDBC, получите доступ к базе данных с помощью параллельного пула. Импортируйте данные от нескольких SQL-запросов параллельно.

Чтобы инициализировать параллельный пул с соединением с базой данных JDBC, необходимо сконфигурировать источник данных JDBC. Для получения дополнительной информации смотрите, что configureJDBCDataSource функционирует.

Запустите параллельный пул.

pool = gcp;
Starting parallel pool (parpool) using the 'local' profile ...
Connected to the parallel pool (number of workers: 6).

Инициализируйте параллельный пул с помощью источника данных JDBC MSSQLServerJDBCAuth. Этот источник данных конфигурирует драйвер JDBC к базе данных Microsoft® SQL Server® с аутентификацией Windows®. Задайте пустое имя пользователя и пароль.

datasource = "MSSQLServerJDBCAuth";
username = "";
password = "";
c = createConnectionForPool(pool,datasource,username,password);

Задайте SQL-запросы.

sqlqueries = ["SELECT * FROM invoice" ...
    "SELECT * FROM inventorytable" ...
    "SELECT * FROM producttable"];

Используйте функцию parfor, чтобы параллелизировать доступ к данным с помощью корзины запроса.

Для каждого рабочего получите объект соединения с базой данных, выполните SQL-запросы и импортируйте данные локально.

parfor i = 1:length(sqlqueries)

    conn = c.Value;

    results = fetch(conn,sqlqueries(i));

    allresults{i} = results;

end

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

allresults
allresults = 1×3 cell array
    {10×5 table}    {13×4 table}    {15×5 table}

Закройте параллельный пул.

delete(pool);

Входные параметры

свернуть все

Параллельный пул, заданный как объект parallel.Pool.

Имя источника данных, заданное как вектор символов или скаляр строки. Используйте имя источника данных, который вы конфигурируете в диалоговом окне Microsoft® ODBC Administrator или диалоговом окне JDBC Data Source Configuration. Можно открыть эти диалоговые окна с помощью соответствующего configureODBCDataSource и функций configureJDBCDataSource.

Пример: "ORA_JDBC"

Типы данных: char | string

Имя пользователя, требуемое получить доступ к базе данных, заданной как вектор символов или представить скаляр в виде строки. Если никакое имя пользователя не требуется, задайте пустое значение "".

Типы данных: char | string

Пароль, требуемый получить доступ к базе данных, заданной как вектор символов или представить скаляр в виде строки. Если никакой пароль не требуется, задайте пустое значение "".

Типы данных: char | string

Выходные аргументы

свернуть все

parallel.pool.Constant, заданный как объект parallel.pool.Constant. Свойство Value объекта parallel.pool.Constant доступно только на рабочих.

Введенный в R2019a