Ambris

Statybos veiklos duomenų srautas į SQL ir Power BI

Buvo: Veiklos duomenys buvo išorinėje programoje, o ataskaitos – įmonės serveriuose veikiančiose sistemose; bendrai analizei duomenis tekdavo perkėlinėti ranka.

Padaryta: Sukurtas automatinis srautas, kuris pagal grafiką surenka duomenis iš išorinės programos, sutvarko ir įkelia į SQL duomenų bazę.

Dabar: Power BI ataskaitos gauna paruoštus duomenis automatiškai – be rankinio perkėlimo.

Problema

Duomenys turėjo patikimai ir automatiškai keliauti iš veiklos programos į tvarkingą duomenų bazę, o iš jos – tiesiai į Power BI ataskaitas. Kaskart turėjo būti perkeliami tik pasikeitę įrašai.

Esamos sistemos

  • Išorinė veiklos API
  • Įmonės serveriuose veikiantis SQL Server
  • Power BI

Apribojimai

  • Duomenų perkėlimas turėjo veikti pačios įmonės serveriuose ir pasileisti automatiškai pagal nustatytą grafiką.
  • Sistema turi įsiminti, iki kurios vietos duomenys jau perkelti, pati pakartoti nepavykusius bandymus ir užtikrinti, kad įrašai nebūtų perkelti tik iš dalies.
  • Techninės sistemų detalės, duomenų kiekiai ir veikimo greičio rodikliai viešai neskelbiami.

Sprendimo architektūra

Įmonės serveryje veikianti programa pati pasiima duomenis iš veiklos programos, juos sutvarko ir sudeda į SQL duomenų bazę. Iš jos Power BI iš karto gauna paruoštus rodinius. Perkeliami tik pasikeitę įrašai, o viskas vyksta automatiškai pagal grafiką.

Duomenų surinkimas ir paruošimas ataskaitoms (ETL)
Duomenų surinkimas ir paruošimas ataskaitoms (ETL)Duomenys paimami iš kitos sistemos per API, paruošiami ETL procesu, sudedami į SQL Server ir pateikiami Power BI ataskaitoms.APIETL (duomenųparuošimas)SQL ServerPower BI
Tekstinis aprašymas
  • API
  • ETL (duomenų paruošimas)
  • SQL Server
  • Power BI

Įgyvendinimas

Sukurtas duomenų surinkimo ir paruošimo sprendimas (ETL), kuris duomenis iš veiklos programos perkelia į SQL duomenų bazę. Jis ima duomenis dalimis, perkelia tik pasikeitusius įrašus, pats pakartoja nepavykusius bandymus, o kiekvienas pakeitimas prieš paleidimą automatiškai patikrinamas.

Naudotos technologijos

  • C# 12 / .NET 8
  • SQL Server
  • Dapper
  • SqlBulkCopy
  • DbUp
  • PowerShell
  • Windows Task Scheduler
  • GitHub Actions

Rezultatas

  • Veiklos duomenys iš programos į duomenų bazę dabar keliauja tvarkingai ir automatiškai – be rankinio perkėlimo.
  • Power BI ataskaitos apie projektus ir kasdienę veiklą gauna jau paruoštus duomenis.
  • Duomenų atnaujinimas veikia pagal grafiką ir atsilaiko prieš laikinus sutrikimus.

Ko pasimokyta ir ką galima pakartoti

  • Ataskaitos tampa patikimos tada, kai duomenų surinkimas, jų sutvarkymas ir ataskaitų rodiniai suplanuojami kaip vienas bendras kelias.
  • Prieš paleidžiant automatinį atnaujinimą reikia iš anksto sutarti, kaip sistema įsimena, kur sustojo, ir ką daro, kai kas nors nepavyksta.

Pastaba apie skelbiamus duomenis

E7 pagrindžia API–SQL ETL, SQL ir Power BI rodinių modelį. KPI, apimtys ir našumas neviešinami.

Aptarkime panašią problemą

Aptarkime panašią problemą