.net - Communication between two apps, is SSIS the way to go? -
working team of more traditional developers came across situation:
we have growing number (two right now) of apps accessing common data inserted via ui of 1 of apps, called main administrative app. since other apps need of data or needed formatted different schema, 1 of solutions brought forward have database per app , sync job running frequency updates data 1 db another. being common soa scenario quick discard solution in favor of service oriented 1 data stored in 1 main repository , accessed via exposed services.
so, i'd read thoughts think biased in favor of relative new technologies , might not appreciating value in more traditional solutions.
my advice when choosing technology weigh pro's , con's. "new" vs "old" can in traps of time. there's going hot new buzzword or other out there @ given time , may or may not way go. let's analyze:
pro's of ssis package vs. service:
- you can transform data destination databases conform referential integrity relationships.
- it's easy access , modify existing applications access data.
- if have small amount of data transform, job run quickly.
- the ssis package nice, centralized place debug data transformation problems.
- security can easier transforming data ssis. don't have worry potential issues such kerberos delegation between service service.
- accessing data @ destinations much faster because don't have make service request. can join data in database.
con's of ssis package vs. service:
- you don't have real-time access source data @ destinations.
- if there's large amount of data, or if package poorly written, can take long time.
- if have rapidly growing number of destination databases, have modify ssis package often.
- you can set own security mechanism service, such can control , audit access information.
- if destination systems need write central source, merging of ssis can real pain.
so boil down this:
if you're writing centralized source, or can't have significant latency between updates, service makes lot of sense. otherwise, favor copying data ssis. @ place, use ssis transform our user data , import our systems' databases, use services implement organization-wide logging infrastructure.
Comments
Post a Comment