
Utveckling av en Windows Service för databassynkronisering med Microsoft Sync Framework Christian Vik Examensarbete för ingenjörsexamen (YH) Utbildningsprogrammet för informationsteknik Vasa 2011 EXAMENSARBETE Författare: Christian Vik Utbildningsprogram och ort: Informationsteknik, Vasa Handledare: Kaj Wikman Titel: Utveckling av en Windows service för databassynkronisering med Micro- soft Sync Framework __________________________________________________________________ Datum 31.03.2011 Sidantal 45 __________________________________________________________________ Abstrakt Detta examensarbete utfördes åt Hogia Ferry Systems. Examensarbetet be- handlar utvecklingen av ett synkroniseringsverktyg för databaserna som före- tagets produkter använder. Lösningen kommer att ersätta ett befintligt system för synkronisering. Fokus för detta projekt ligger på utvecklingen av en synkroniseringstjänst för multipla typer av databaser. Databaserna som stöds är SQL Server, Informix samt Oracle. För utvecklingen av själva synkroniseringen har Microsoft Sync Framework använts. För att få konfigureringen och mappningen av databaser- na dynamisk görs all konfigurering via XML-filer. För schemaläggning av syn- kroniseringen har Quartz.NET använts. Synkroniseringstjänsten har stöd för både schemalagd samt manuell synkronisering. Projektet utvecklades på Microsoft .NET plattformen och utvecklingen skedde i Visual Studio 2010 med programmeringsspråket C#. Resultatet blev ett funge- rande synkroniseringsverktyg implementerat som en Windows Service samt en klient skriven i WPF där kommunikationen med servicen sker via WCF. __________________________________________________________________ Språk: svenska Nyckelord: databassynkronisering, Sync Framework, Quartz.NET, XML, WPF, WCF __________________________________________________________________ Förvaras: Examensarbetet finns tillgängligt antingen i webbiblioteket Theseus.fi eller i Tritonia. OPINNÄYTETYÖ Tekijä: Christian Vik Koulutusohjelma ja paikkakunta: Tietotekniikka, Vaasa Ohjaaja: Kaj Wikman Nimike: Windows service tietokannan synkronoinnin kehittäminen Microsoft Sync Frameworkilla __________________________________________________________________ Päivämäärä 31.03.2011 Sivumäärä 45 __________________________________________________________________ Tiivistelmä Tämä opinnäytetyö tehtiin Hogia Ferry Systemsille. Tutkintotyö käsittelee synk- ronointityökalun kehittämisen tietokantaan, jota yrityksen tuotteet käyttävät. Ratkaisu tulee nykyisen ole synkronointijärjestelmän tilalle. Tämä projekti kohdistaa synkronointipalvelun kehittämisen useimmille eri tie- tokannoille. Tietokannat, joita tuetaan ovat SQL Server, Informix sekä Oracle. Synkronointityön kehittämiseksi olen käyttänyt Microsoft Sync Frameworkia. Jotta saataisiin tietokantojen kokoonpano ja kartoitus dynaamiseksi, teen kai- ken kokoonpanon XML-tiedostojien avulla. Synkronoinnin ajastamiseen olen käyttänyt Quartz.NETiä. Synkronointipalvelulla on tuki sekä ajastetulle että kä- sin tehtävälle synkronisoinnille. Projekti kehitettiin Microsoft .NET perustalla ja kehitys tapahtui Visual Studio 2010:llä ohjelmointikielellä C#. Tuloksena saatiin toimiva synkronointityökalu toteutettuna kuten Windows Service sekä WPF:ssä kirjoitettu asiakasohjelma missä huollon kommunikaatio tapahtuu WCF:n kautta. __________________________________________________________________ Kieli: ruotsi Avainsanat: tietokannan synkronointi, Sync Framework, Quartz.NET, XML, WPF, WCF __________________________________________________________________ Arkistoidaan: Opinnäytetyö on saatavilla joko ammattikorkeakoulujen verkko- kirjastossa Theseus.fi tai kirjastossa. BACHELOR’S THESIS Author: Christian Vik Degree programme: Information Technology, Vaasa Supervisor: Kaj Wikman Title: Development of a Windows Service for database synchronization using Microsoft Sync Framework __________________________________________________________________ Date 31.03.2011 Number of pages 45 __________________________________________________________________ Abstrakt This Bachelor’s thesis was made for Hogia Ferry Systems. The project deals with the development of a synchronization tool for the databases that the company’s products use. The solution will replace an existing synchronization system. The focus for this project is the development of a synchronization service for multiple types of databases. The supported databases are SQL Server, Informix and Oracle. Microsoft Sync Framework has been used for the development of the synchronization. To get the configuration and mapping dynamic, all the configuration are stored in XML files. Quartz.NET has been used for the sched- uling of the synchronization. The synchronization service has support for both scheduled and manual synchronization. The project was written with C# for the Microsoft.NET framework using Visual Studio 2010. The result is a working synchronization tool implemented as a Windows Service along with a Client written in WPF where the communication is done with WCF. __________________________________________________________________ Language: Swedish Key words: database synchronization, Sync Frame- work, Quartz.NET, XML, WPF, WCF __________________________________________________________________ Filed at: The thesis is available either at the web library Theseus.fi or at Tritonia Academic Library, Vaasa. Innehållsförteckning Innehållsförteckning Förkortningar och definitioner 1 Inledning......................................................................................................................... 1 1.1 Företaget ................................................................................................................. 1 1.1.1 Hogia ............................................................................................................... 1 1.1.2 Hogia Ferry Systems ....................................................................................... 1 1.2 Projektbeskrivning .................................................................................................. 2 1.2.1 Existerande lösning ......................................................................................... 2 1.2.2 Begränsningar & krav ...................................................................................... 3 2 Programvara och utvecklingsverktyg ............................................................................. 4 2.1 Microsoft Visual Studio 2010 Professional ............................................................ 4 2.2 Databaserna ............................................................................................................. 5 2.2.1 Microsoft SQL Server 2008 R2 ....................................................................... 7 2.2.2 IBM Informix .................................................................................................. 7 2.2.3 Oracle............................................................................................................... 7 2.3 Microsoft .NET Framework ................................................................................... 8 2.4 Microsoft Sync Framework .................................................................................... 8 2.5 Entity Framework 4 ................................................................................................ 9 2.6 Quartz.net .............................................................................................................. 11 2.7 C# .......................................................................................................................... 11 2.8 WPF – Windows Presentation Foundation ........................................................... 12 2.9 WCF – Windows Communication Foundation .................................................... 14 3 Utförande ...................................................................................................................... 18 3.1 Inledning ............................................................................................................... 18 3.2 Sync Framework vs Entity Framework ................................................................ 18 3.3 Synkroniseringstjänsten ........................................................................................ 20 3.3.1 Implementation av Windows servicen .......................................................... 20 3.3.2 Implementation av WCF-tjänster .................................................................. 21 3.3.3 Konfiguration ................................................................................................ 22 3.3.4 Schemaläggaren ............................................................................................. 23 3.3.5 Synkroniseringsmodulen ............................................................................... 25 3.3.6 Synkroniseringsmotorn .................................................................................. 26 3.4 Klienten ................................................................................................................. 36 3.4.1 Konfigureringsmöjligheter ............................................................................ 37 3.4.2 Manuell synkronisering ................................................................................. 38 3.5 Testning ................................................................................................................ 39 4 Resultat ........................................................................................................................
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages55 Page
-
File Size-