PDA

View Full Version : روش های پیشنهادی برای Data Tracking (نگهداری History اطلاعات)



Maryam_y_m
سه شنبه 01 آذر 1384, 10:15 صبح
سیستمی برای نگهداری اطلاعات مربوط به سخت افزارهای نصب شده در مکانهای مشخص داریم . این دستگاهها ممکن است تعویض شوند، از جایی به جای دیگر منتقل شوند، از رده خارج شوند و یا هر تغییر دیگر. حال ما میخواهیم History این جابه جایی ها را داشته باشیم. مثلا بفهمیم که در فلان تاریخ وضعیت دستگاهها چه بوده است و یا در یک بازه زمانی مشخص چه دستگاههایی در یک مکان خاص داشته ایم. با توجه به حجم بالای اطلاعات درون بانک، برای نگهداری اطلاعات History و Data Tracking چه پیشنهادی میکنید؟
در صورت امکان در اسرع وقت جواب بدهید. :لبخند:

JavanSoft
سه شنبه 01 آذر 1384, 13:28 عصر
1)ایا این بحث شمابه تعمیرات پیشگیرانه هم مربوط می شود یا خیر ؟
2) آیا قرار است بر اساس این اطلاعات گزارش و یا دستورالعمل نیز صادر شود یا خیر
3) آیا این صورت مساله واقعی است یا خیر؟
4) آیا مشخصات دستگاههای شما با یک دیگر تطبیق دارد یا خیر؟
5)‌ آیا مشخصات دستگاهها نگهداری می شود و یا سوابق عملیات دستگاهها؟

Maryam_y_m
سه شنبه 01 آذر 1384, 15:12 عصر
ا) برای تعمیرات پیشگیرانه در بازه های زمانی مشخص، عمل سرویس دوره ای تجهیزات انجام میگیرد
2)بله برای گزارش گیری از موقعیت مکانی و وضعیت تجهیزات در بازه های زمانی مختلف، به داشتن تاریخچه اطلاعات نیاز داریم
3)کاملا. پیاده سازی این سیستم تا مرحله ای که بتواند اطلاعات را بگیرد و گزارشات مربوطه را نیز ارائه بدهد انجام شده است . ولی این سیستم قابلیت نگهداری اطلاعات حال را دارا می باشد و اگر چیزی تغییری بکند (Edit شود) اطلاعات قبلی از بین خواهد رفت
4) ما انواع مختلفی از دستگاهها داریم . که آنها را به صورت گروههایی تعریف کرده ایم(مانند Ram،Hard,...). هر یک از این گروهها، خصیصه هایی دارند مانند(ظرفیت هارد، مدل هارد، سرعت رم و ... ). برخی از گروهها گاها یک سری خصیصه مشترک نیز میتوانند داشته باشند مانند شرکت سازنده ولی این در همه موارد صدق نمیکند و بیشتر گروهها دارای خصیصه های متفاوت از هم میباشند
5) تاکید ما در این فاز فعلا روی نگهداری مشخصات دستگاهها می باشد
موضوع اصلی این است که ما می خواهیم از طریق یک روش استاندارد و بهینه بتوانیم در سیستم عملیات بروز رسانی تجهیزات را بگونه ای داشته باشیم که در هر زمان امکان مشاهده وضعیت قبلی را نیز داشته باشیم.
با تشکر از توجه شما

JavanSoft
سه شنبه 01 آذر 1384, 19:20 عصر
اما چند نکته (بدون اینکه بدانم کل مساله چیست ) مشخص است
1) قدرت تغییر سیستم فعلی یا در دست شما قراردارد و یا اینکه نیست
1.1) اگر نیست پس نیاز به نرم افزاری برای ذخیره سوابق با توجه به فعالیت بانکهای اطلاعاتی دارد
1.2) اگر هست پس باید کل سیستم (بانکها/نرم افزار /...) را برای پیاده سازی تغیرات مجددا مورد بررسی قرار داد

2)در مورد ذخیره سازی اطلاعات هریک از اقلام نیز می توان به این موضوع اشاره کرد که آیا شما همه موارد مورد نیاز را شناسایی کرده اید و یا خیر
2.1) شناسایی کرده اید : پس با یک مجموعه بسیار وسیع از اطلاعاتی که با هم سنخیت ندارند مواجهید و در نتیجه ذخیره کلیه سوابق شما را دچار مشکل خواهد کرد
2.2) نکرده اید : پس با شناسایی اولین موردی که در اقلام شما نگنجد سیستم شما پس از آغاز به کار دچار مشکل خواهد شد

نتها راه حل ممکن استفاده از بانکاهای اطلاعاتی متغیر است

من قبلا این سیستم را طراحی کرده ام
در صورت تمایل می توانید با من تماس بگیرید .

Maryam_y_m
چهارشنبه 02 آذر 1384, 10:42 صبح
کل مساله به این صورت است که این سیستم برای تجهیزات سخت افزاری داخل یک شرکت (دارای بخشهای مختلف) برای ما تعریف شده بود و تحلیل آن با راهنمایی یک تحلیلگر به صورت ِDynamic Data Modelingصورت گرفت و در آن زمان هم نگهداشتن تاریخچه اطلاعات در آینده نزدیک مد نظر بود ولی ترجیح داده شد که اول قالب کلی سیستم در بیاید و سپس این امکان در آن گنجانده شود. سپس طراحی و پیاده سازی ان توسط خود ما انجام شد. برای عملیاتی شدن سیستم تصمیم به گنجاندن امکان Data Tracking گرفته شد . برای انجام این کار تصمیم گرفتیم از یک سری جداول History استفاده کنیم که با استفاده از Trigger ها هر عمل Edit ای که انجام میشود، ورژن قبلی رکورد به جدول History منتقل شود و فقط ورژن آخر در جدول اصلی بماند. ولی با توجه به حجم بالای اطلاعات از به کار بردن Trigger به دلیل کند شدن صرفنظر کردیم و ترجیح دادیم عملیات روی جداول History توسط برنامه صورت گیرد.
حال میخواهیم بدانیم آیا پیاده سازی این روش عملی و منطقی است و یا اینکه روش بهتری هم وجود دارد.
2) اقلام اطلاعاتی که نیاز به ذخیره شدن دارند شناسایی شده
منظور شما را از بانک اطلاعاتی متغیر تفهمیدم

JavanSoft
چهارشنبه 02 آذر 1384, 16:05 عصر
1) با استفاده از Trigger می توان اینکار را انجام داد ولی همانگونه که خود به نتیجه رسیدید سرعت پایین می آید مگر اینکه Triggerهایی داشته باشید که قدرت تشخیص داشته باشند
2)حتی بالفرض سرعت در تریگرهای مورد بحث می بایستی یک طراحی بالا بروی ساختارها انجام دهید که هم نیاز حال و هم آینده را تحت پوشش قرار دهد
3)در برنامه همانگونه که گفتم امکان پذیر است اما با این شرط که روند برنامه مورد مطالعه مجدد قرار گیرد
4) ممکن است با نگاهی شماره 3 ولی بدون دست بردن در برنامه بخواهید اینکار را انجام دهید که در این حالت می بایستی یک برنامه منعطف برای تشخیص اطلاعات بدردبخور و در عین حال مهم در هر بانکی بنویسید که شاید بتوان اسم آنرا Spyware گذاشت
5) بانک اطلاعاتی متغیر بانکی است که ساختار آن مشخص نیست و در هر موردی ممکن است نسبت به اطلاعات از خود انعطاف نشان دهد . بنا براین برنامه نویسی خاص خود رامی خواهد

JavanSoft
چهارشنبه 02 آذر 1384, 16:06 عصر
برای شما PM زدم