luo SSIS-ja SSRS-työnkulkuja R: llä SQL Server-palvelimella

  • 08/28/2020
  • 5 luettavat minuutit
    • d
    • M
    • a
    • D
    • c
    • +2

koskee: SQL Server 2016 (13.x) ja myöhemmin

tässä artikkelissa selitetään, miten sulautettuja R-ja Python-komentosarjoja käytetään SQL Server-Koneoppimispalvelujen kieli-ja datatieteen ominaisuuksilla, joissa on kaksi tärkeää SQL Server-ominaisuutta: SQL Server Integration Services (SSIS) ja SQL Server Reporting Services SSRS. SQL Serverin R-ja Python-kirjastot tarjoavat tilastollisia ja ennakoivia funktioita. SSIS ja SSRS tarjoavat koordinoituja ETL-muunnoksia ja visualisointeja. Tässä artikkelissa selitetään, miten kaikki nämä ominaisuudet kootaan tähän työnkulun kuvioon:

  • luo tallennettu menettely, joka sisältää suoritettavan R-tai Python-toiminnon
  • suorita tallennettu toimenpide SSIS: stä tai SSRS: stä

tämän artikkelin esimerkit käsittelevät enimmäkseen R: ää ja SSIS: ää, mutta käsitteet ja vaiheet pätevät yhtä lailla Pythoniin. Toisessa osassa annetaan ohjeita ja linkkejä SSRS-visualisointeihin.

käytä SSIS: ää automaatioon

datatieteen työnkulut ovat erittäin iteratiivisia ja sisältävät paljon datan muuntamista, mukaan lukien skaalaus, aggregaatiot, todennäköisyyksien laskenta sekä attribuuttien uudelleennimeäminen ja yhdistäminen. Datatutkijat ovat tottuneet tekemään monia näistä tehtävistä R: llä, Pythonilla tai muulla kielellä; tällaisten työnkulkujen suorittaminen yritystiedoilla vaatii kuitenkin saumatonta integraatiota ETL: n työkaluihin ja prosesseihin.

koska R Services (in-Database) mahdollistaa monimutkaisten operaatioiden suorittamisen R: ssä Transact-SQL: n ja tallennettujen prosessien kautta, voit integroida datatieteen tehtävät olemassa oleviin ETL-prosesseihin. Sen sijaan, että suorittaisit ketjun muistia vaativia tehtäviä, tiedonvalmistelu voidaan optimoida tehokkaimmilla työkaluilla, kuten Integrointipalveluilla ja Transact-SQL: llä.

tässä muutamia ideoita siitä, miten voit automatisoida tietojenkäsittely-ja mallintamisputkistoja Integrointipalvelujen avulla:

  • Pura tietoja toimitiloista tai pilvilähteistä koulutustietojen rakentamiseksi
  • Rakenna ja suorita R-tai Python-malleja osana tietojen integroinnin työnkulkua
  • Uudelleenkouluta malleja säännöllisesti (aikataulun mukaisesti)
  • lataa R-tai Python-skriptin tulokset muihin kohteisiin, kuten Excel, Power BI, Oracle ja Teradata, muutamia mainitaksemme
  • käytä SSIS-tehtäviä dataominaisuuksien luomiseen SQL-tietokannassa

  • käytä ehdollista haarautumista vaihtaaksesi laskentayhteyttä r-ja Python-työt

SSIS-esimerkki

tämä esimerkki näyttää, miten automatisoida tehtäviä SSIS. Luot tallennetut menettelyt sulautetulla R: llä SQL Server Management Studion avulla ja suoritat sitten tallennetut toimenpiteet Suorita T-SQL-tehtäviä SSIS-paketissa.

tämän esimerkin läpikäymiseksi sinun tulisi tuntea Management Studio, SSIS, SSIS Designer, package design ja T-SQL. SSIS-paketti käyttää kolmea suorittaa T-SQL-tehtäviä, jotka lisäävät harjoitustiedot taulukkoon, mallintavat tiedot ja pisteyttävät tiedot saadakseen ennustuksen tuotoksen.

Load training data

suorita seuraava komentosarja SQL Server Management studiossa luodaksesi taulukon tietojen tallentamiseksi. Sinun pitäisi luoda ja käyttää testitietokanta tähän harjoitukseen.

luo tallennettu menettely, joka lataa harjoitustietoja tietokehykseen. Tässä esimerkissä käytetään sisäänrakennettua Iris-tietokokonaisuutta.

SSIS Designerissa luo Suorita SQL-tehtävä, joka suorittaa juuri määrittämäsi tallennetun toimenpiteen. Sqlstatement-skripti poistaa olemassa olevat tiedot, määrittää, mitkä tiedot lisätään, ja kutsuu tallennetun menettelyn tietojen antamiseksi.

Luo malli

aja seuraava skripti SQL Server Management studioon ja luo taulukko, joka tallentaa mallin.

luo tallennettu menettely, joka luo lineaarisen mallin rxlinmodia käyttäen. RevoScaleR-ja revoscalepy-kirjastot ovat automaattisesti saatavilla R-ja Python-istunnoissa SQL Server-palvelimella, joten kirjastoa ei tarvitse tuoda.

SSIS Designerissa luo suoritus SQL-tehtävä generate_iris_rx_model-tallennetun prosessin toteuttamiseksi. Malli on sarjallistettu ja tallennettu ssis_iris_models-taulukkoon. Skripti Sqlstatementille on seuraava:

tarkastuspisteenä, kun tämä tehtävä on suoritettu, voit tiedustella ssis_iris_malleja nähdäksesi, että se sisältää yhden binäärimallin.

ennusta (pisteet) tuloksia käyttämällä ”koulutettua” mallia

nyt kun sinulla on koodi, joka lataa harjoitustietoja ja luo mallin, ainoa askel jäljellä on mallin käyttäminen ennusteiden tuottamiseen.

voit tehdä tämän laittamalla R-skriptin SQL-kyselyyn käynnistääksesi ssis_iris_modelissa sisäänrakennetun R-funktion rxpredict. Tallennettu menettely nimeltään predict_species_length suorittaa tämän tehtävän.

SSIS Designerissa luo suoritus SQL-tehtävä, joka suorittaa predict_species_length tallennetun menettelyn luodakseen ennustetun terälehden pituuden.

exec predict_species_length 'rxLinMod';

Suorita ratkaisu

SSIS Designerissa painamalla F5 suorittaaksesi paketin. Sinun pitäisi nähdä tulos samanlainen kuin seuraava kuvakaappaus.

käytä SSRS visualisointeihin

vaikka R voi luoda kaavioita ja mielenkiintoisia visualisointeja, se ei ole hyvin integroitu ulkoisiin tietolähteisiin, mikä tarkoittaa, että jokainen kaavio tai kuvaaja on tuotettava erikseen. Myös jakaminen voi olla vaikeaa.

käyttämällä R-palveluita (in-Database), voit suorittaa monimutkaisia operaatioita R: ssä Transact-SQL-tallennettujen menettelyjen kautta, jotka voidaan helposti kuluttaa erilaisilla yritysten raportointityökaluilla, mukaan lukien raportointipalvelut ja Power BI.

tämän artikkelin SSIS-ja SSRS-esimerkit kuvaavat kahta tapausta, joissa on toteutettu tallennettuja menettelyjä, joihin on upotettu R-tai Python-skripti. Avain takeaway on, että voit tehdä R-tai Python-skriptin saataville mille tahansa sovellukselle tai työkalulle, joka voi lähettää suorituspyynnön tallennetulla menettelyllä. Lisäksi SSIS: ään voi luoda paketteja, jotka automatisoivat ja ajoittavat monenlaisia toimintoja, kuten tiedonhankintaa, puhdistusta, manipulointia ja niin edelleen, R-tai Python data science-toiminnoilla, jotka sisältyvät toimintoketjuun. Lisätietoja ja ideoita on ohjeaiheessa R-koodin Operationalisointi SQL Server-Koneoppimispalveluissa tallennettujen menetelmien avulla.

Vastaa

Sähköpostiosoitettasi ei julkaista.