View Full Version : تجمیع اطلاعات چند سیستم روی یک سیستم مرکزی(بادیتابیس هم نام ویکسان)
shocraneh
چهارشنبه 24 اسفند 1390, 09:02 صبح
باسلام .یک برنامه روی چند تا سیستم نصب است و اطلاعات ذخیره می کنند . درپایان ماه باید رکوردهای موجود در یک تیبل خاص ،تمام این سیستم ها به کامپیوتر مرکزی (که همون برنامه و همون دیتابیس رو داره )منتقل بشه
تیبل مورد نظر درسیستم مرکزی هم اطلاعات دارد و تک تک اطلاعات سیستم های دیگه باید به اون اضافه بشن
به نظر دوستان ساده ترین وبهینه ترین راه حل چیه؟پیشاپیش ممنون
AMIBCT
چهارشنبه 24 اسفند 1390, 09:09 صبح
سیستمها چه طوری میتوانند به هم وصل شوند؟
danial82
چهارشنبه 24 اسفند 1390, 09:10 صبح
شما میتوانید از replication استفاده کنید
shocraneh
چهارشنبه 24 اسفند 1390, 09:14 صبح
سیستم ها هیچ گونه ارتباطی با هم ندارند . یا باید بک آپ گرفته شه یا با یه برنامه جانبی به فایل مورد نظرمون تبدیلش کنیم
shocraneh
چهارشنبه 24 اسفند 1390, 09:14 صبح
شما میتوانید از replication استفاده کنید
لطفا توضیح بدید.ممنون
babak2000
چهارشنبه 24 اسفند 1390, 12:59 عصر
شما میتوانید از replication استفاده کنید لطفا توضیح بدید.ممنون
ببنید دوست عزیز تا جایی که من میدونم (شاید اشتباه) replication زمانی میشه استفاده کرد که سیستم ها بهم وصل باشند
از طریقه شبکه داخلی (Lan ) یا اینترنت
البته اینجوری که شما توضیح دادید مثل اینکه هر سیستم اطلاعات منحصر بفرد خودش را وارد میکنه و اطلاعات اشتراکی
ندارید روی همین اساس شما میتونید یه برنامه بنویسید که از جدول مورد نظر طبق تاریخ خاصی خروجی گرفته (مثلا بصورت XML)
یا هر فورمت خاصی (مثلا یه Sp) که میتونید سپس روی سیستم مورد نظر هم برنامه ای برای بازیابی و اینپورت اطلاعات داخل بانک
اگه بتونید یه ارتباطی بگیرید با سرور مرکزی کارتون خیلی راحتتر میشه
baktash.n81@gmail.com
چهارشنبه 24 اسفند 1390, 15:07 عصر
سلام
نکته اول ... اینکه اون جدولی که اطلاعاتش رو دارید منتقل می کنید نباید فیلدی کلید خارجی داشته باشه ... وگرنه باید اون اطلاعات رو هم منتقل کنید ... مثلا اگه فیلد کد پرسنلی دارید باید اون کد پرسنلی تو بانک مرکزی هم معتبر باشه ...
درون جدول بانک مرکزی و همنطور زیر سیستم ها باید یک فیلد وجود داشته باشه که کد اون زیر سیستم رو نشون بده ...
اما در خصوص تجمیع اطلاعات .. همون روشی که خودتون گفتید درخصوص سیستم هایی که بهم وصل نیستن روش خوبیه ... روش بعدی هم اینه که شما یه ماژول آماده کنی که رکوردهای جدید اون جدول رو EXPORT کنه حالا یا به صورت xml یا Execl یا حتی متن ساده ... و یه ماژول هم تو سیستم مرکزی بنویسید که این اطلاعات رو بخونه و بریزه توی بانک ... ( با یه بیت فلگ می تونید رکوردهایی که جدید هستند رو شناسایی کنید و فقط همونا رو export کنید)
اگه همون روش قبل رو یکم توسعه بدید ... می تونید به جای اون ماژول ها از وب سرویس ها استفاده کنید یعنی در روز مشخصی سیستم به اینترنت وصل بشه و بانک مرکزی Request بفرسته و اون سیستم هم اطلاعات رو ارسال کنه ...
shocraneh
چهارشنبه 24 اسفند 1390, 17:05 عصر
ممنون از لطف تمام دوستان .آره سیستم ها هیچ ارتباط فیزیکی به هم ندارند و اطلاعات مستقلند منتها برنامه و بانک دقیقا یکی است.
این جور که فهمیدم میشه یه جدول اکسس دقیقا مثل اسکیوال داشته باشم و طبق فلک اطلاعات رو به اون انتقال بدم و رو سیستم مرکزی برعکس اون عمل کنم.
اما..
به نظر شما بهترنیست من یه بانک با نام متفاوتDatabase رو سیستم هام داشته باشم و جدول Tableمورد نظر رو دقیقا روی بانک دوم ایجاد کنم. درزمان نیاز اطلاعات قبلی Tableپاک و اطلاعات جدید با توجه به فلگ روی Table اینزرت بشه (به همراه فیلد اضافه نام کامپیوتر) حالا بک آپ Database این سیستم ها تک تک به سیستم مرکزی منتقل و روی Database ریستور بشه و بعدیک ماژول که این رکوردهارو از بانک دومی به اولی منتقل کنه .
حالا می مونه کد insert اطلاعات از یک بانک به بانک دیگه روی یه سیستم به شکلی که تمام رکوردها رو منتقل کنه ؟؟؟؟
پیشاپیش ممنونم
baktash.n81@gmail.com
شنبه 27 اسفند 1390, 07:33 صبح
خوب بعد از اینکه حجم دیتابیس ها زیاد شد حمل و نقلشون مشکل می شه ... مثلا اگه حجم اطلاعات روی یک دیتا بیس به 20 گیگابایت رسید انتقال فایل Backup سخت و Restore کردن اون به شدت زمان بر خواهد بود ...
shocraneh
شنبه 27 اسفند 1390, 23:38 عصر
یعنی بک آپ گیری واقعا زمان بر تر از تبدیل اطلاعات به اکسل یا xml است؟؟
چه طوری باید اطلاعات رو expert کرد ؟؟ خود اسکیوال این قابلیت رو داره که این تبدیل رو انجام بده؟
shocraneh
شنبه 05 فروردین 1391, 11:37 صبح
لطفا دوستان نظرخودشون رو بگن من رو انتقال اطلاعات تا به حال کار نکردم. کدوم راه برای کاربر بی دردسر تره؟
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.