مدیریت دیتا / نرم افزار
Database Management
شرکت حامین فناوران نوین، با توجه بر پایه و توان علمی همکاران خود در حوزه دیتابیس و مدیریت دیتا و هوش تجاری ، در حوزه های زیر آماده ارائه خدمات مشاوره و پشتیبانی می باشد همچنین در حوزه نگهداری دیتا و افزایش بهره وری در حوزه دیتابیس با ارائه ۶ سرویس ویژه به صورت کاملا تخصصی و پیشرفته در ارتباط با بانکهای اطلاعاتی SQL Server آماده خدمت رسانی می باشد.
خدمات حامین فناوران نوین
خدمات مشاوره در حوزه Database
دسترسی پذیری یا همان HA (High Availability)
افزایش سرعت و کارایی (Performance & Tuning)
امنیت بانکهای اطلاعاتی (Security)
نگهداشت از بانکهای اطلاعاتی (Maintenance)
پایش وضعیت بانکهای اطلاعاتی (Monitoring)
راه اندازی سرور ثانوی (Replica Server)
HA یا همان High Availability
داراییهای اصلی سازمانها و شرکتها صرفا اموال منقول و غیر منقول آنها محسوب میشدند، اما با توجه به رشد دیتا و اطلاعات سازمانها این ارزش جای خود را به دیتا (داده) و اطلاعات آن سازمان یا شرکت داده است. اموال فیزیکی به صورت ذاتی قابل جایگزینی هستند اما از بین رفتن اطلاعات یک سازمان فاجعهای بسیار اسفناک و جبران ناپذیر برای آن مجموعه خواهد بود. به همین دلیل در دسترس بودن این دادهها و محافظت از آن تحت هر حادثهای اعم از زلزله، آتش سوزی، سرقت و… بسیار مهم و حائز اهمیت است. High Availability یا به اختصار HA به شما تضمین میدهد در هر شرایطی، طی به وقوع پیوستن حوادث طبیعی، غیر طبیعی یا زمان خاموشی (Down Time) اطلاعات شما همیشه و در همه حال در دسترس باشد.
برای اینکه بهتر موضوع HA را درک کنید پیشنهاد میکنیم صفحه راهکار همیشه در دسترس بودن یا همان HA (High Availability) را مطالعه کنید
روش های مختلف HA) High Availability)
در این روش جدولها و موضوعات مشخص (Views، Store Procedures و…) یک یا چندین SQL را میتوان همسانسازی کرد و روشی است که از لحاظ تئوری کامل به نظر میرسد، اما واقعیت این است که این روش برای HA طراحی نشده است.
با این روش میتوانید دیتا را روی Instance های مختلف داشته باشید، دیتایی که میخواهید محافظت (Protect) شودرا فیلتر کنید و در گزارشگیریها از قابلیتهای آن بهره ببرید. این روش برای HA مناسب نیست زیرا:
در هنگام از دسترس خارج شدن دیتابیس اصلی به صورت اتوماتیک به دیتابیس دیگر سوییچ نمیکند. مطمئنا نمیخواهید ساعت ۲ صبح آخر هفته مجبور شوید تنظیمات تغییر دیتابیس را انجام دهید (البته اگر مشتری شما دولتی نباشد و به سرور در آن زمان دسترسی داشته باشید)
همچنین در این روش ممکن است در اطلاعات میان دیتابیسها اختلاف پیش بیاید، مثلا کاربری عضو سایت شود و قبل replicate شدن دیتا، دیتابیس از دسترس خارج شود به این ترتیب کاربر امکان لاگین کردن نخواهد داشت.
در این روش به جای کپی کردن جدولها و Stored Procedures ها از Transaction Logs (شامل هر چیزی است که در دیتابیس اتفاق میافتد) به عنوان منبع اطلاعاتی استفاده میشود و میتوان این روش را روی یک یا چندین SQL Servers اعمال کرد.
Shipping در یک بازه زمانی مشخص اتفاق میافتد، بهصورت پیشفرض هر ۱۵ دقیقه یکبار است، اما میتوان آن را هر یک دقیقه یکبار یا هر یک روز یکبار نیز تنظیم کرد.
با استفاده از این روش شما یک یا چند دیتابیس پشتیبان آماده میتوانید داشته باشید.
در این روش هم اگر سرور اصلی از دسترس خارج شود، لازم است تنظیمات به صورت دستی انجام شود و همچنین احتمال از دست دادن دیتا در این روش هم وجود دارد.
این روش در نسخههای SQL Server 2014, Enterprise, Business Intelligence, Standard, and Web editions پشتیبانی میشود ولی در دنیای واقعی طرفدار چندانی ندارد.
Mirroring اولین روشی است که مایکروسافت با هدف ارائه راه حلی برای HA ارائه کرده است. در این روش دو Instance از دیتابیس بر روی سرورهای جداگانه ایجاد میکنیم.
با توجه به خطرات احتمالی ( مثل آتش سوزی) نگهداری هر دو Instance در کنار هم و در یک مکان عاقلانه نیست، بهتر است هر Instance در یک دیتاسنتر یا مکان جغرافیایی جدا از هم نگهداری شود.
یکی از دیتابیس ها به عنوان دیتابیس اصلی مشخص میشود و سرور دیگر در حالت آماده باش قرار دارد. اجرا کردن این دیتابیسها در حالت High-Safety این اطمینان را میدهد که دیتای هر دو دیتابیس دقیقا مشابه است.
در این روش درخواستی که از دیتابیس میشود در یک زمان در هر دو دیتابیس اعمال میشود.
چون از یک دیتابیس شاهد (Witness Server) استفاده میشود، از دست رفتن اطلاعات اتفاق نمیافتد. دیتابیس شاهد یک Microsoft SQL Server جداست که دیتابیس اصلی را مانیتور میکند و در زمان بروز مشکل به روی دیتابیس دوم سوییچ میکند.
اگر ارتباط دیتابیس ها قطع شود آنها اطلاعات خود را از دیتابیس شاهد دریافت میکنند. از آنجایی که دیتابیسها کاملا مشابه و آنلاین هستند، بهصورت دستی هم میتوان بدون اینکه اتفاقی برای سایت رخ دهد بین آنها سوییج کرد.
با این توضیحات این روش ایده آلی به نظر میرسد اما این روش در Maintenance Mode قرار گرفته است و در نسخههای جدید Microsoft SQL Server حذف میشود.
کلاستر (Cluster) در لغت به معنای “یک گروه از چیزهای مشابه یا آدمها که بهصورت عمدی یا اتفاقی در کنار هم قرار گرفتند” است.
بنابراینClustering به معنای قرار گرفتن در یک Cluster یا یک گروه نزدیک است. کلاسترها چیزی شبیه SQL Server مشتری را از سخت افزاری که روی آن اجرا شده است، جدا میکنند.
یک نرم افزار اجرا شده از دو قسمت تشکیل شده است: قسمتی در RAM و هر چیزی که Cached میشود و هر Query که اجرا میشو و Hard Drives که دیتابیس در آن قرار دارد.
در یک محیط کلاستر شده، میتوانیم پیکربندی (Configured) بیش از یک سرور را طوری انجام دهیم که از یک مجموعه Hard Drive مشترک استفاده کنند بهطوری که در یک زمان تنها یک سرور از Hard Drive ها استفاده کند.
در این روش در هر سرور SQL Server اجرا می شود و یک Hard drive اشتراکی بینشان وجود دارد و زمانیکه سرور اصلی از دسترس خارج شود، Hard drive به سرور دیگر اختصاص داده میشود و کار ادامه پیدا میکند و این همان چیزی است که به دنبالش هستیم، کمترین زمان پایین بودن سرویس (downtime)
یکی دیگر از مزیتهای این روش، زمانی است که میخواهیم سرویس پک جدیدی روی SQL نصب کنیم (دیتابیس را بهروزرسانی کنیم) در حالت عادی لازم است سرویس را متوقف کنیم و دیتابیس از دسترس خارج شود، معمولا اینکارها را در نیمه شب روزهای تعطیل زمانبندی میکنند که آنهم به معنای حضور ادمین در آن زمان در شرکت است که چندان خوش آیند نیست. با استفاده از کلاستر، این مسئله به راحتی حل میشود.
سرور A ، SQL را اجرا میکند و سرور B در حالت انتظار قرار دارد و کاری انجام نمیدهد، پس میتوان در این زمان آن را بهروزرسانی کرد و سپس وظیفه اجرای SQL را به آن سپرد و سرور A را بهروزرسانی کرد، به این ترتیب هر دو سرور بدون اینکه کاربران متوجه شوند بهروزرسانی میشوند.
خب کمی هم در رابطه با معایب این روش صحبت کنیم، تا بهاین جا که همه چیز عالی بوده است. مهمترین موضوع این روش هزینه آن است. برای ارائه یک سرویس لازم است دو سرور داشته باشید و این یعنی دو برابر شدن هزینهها !
از طرفی Hard Drive ها به صورت اشتراکی در این روش بین سرورها قرار میگیرند و اگر مشکلی برایشان پیش بیاید که نیاز به جابجایی داشته باشند بازهم DownTime برای سرویس ایجاد می شود.
برای راه اندازی این حالت حداقل از دو سرور استفاده میشود، پس نگرانی بابت خرابی مادربرد (Mother Board)، پاور (Power)، مموری (Memory) یا هرچیز دیگر وجود ندارد اما اگر ساختمان نگهداری سرورها آتش بگیرد چه اتفاقی میافتد؟
از آنجاییکه کلاسترها نیاز دارند با هم در ارتباط باشند بنابراین نمیتوانیم آنها را در دو مکان جغرافیایی متفاوت قرار دهیم. راههایی هست که بتوانیم اینکار را انجام دهیم، اما تاخیر ایجاد میکند که خب چندان جالب نیست.
بنابراین اگر نیاز هست که سرورها در مکانهای جغرافیایی مختلف قرار بگیرد ، این روش کارآمد نیست و لازم است از روشهای دیگر مثل Mirroring،Log Shipping یا Availability Group (در ادامه توضیح داده ایم) استفاده شود.
آخرین روش برای HAدر SQL Server 2012 با هدف فراهم کردن بیشترین میزان دسترسی برای یک یا چند دیتابیس، به جای روش Mirroring ارائه شد.
مشابه روش Failover Clustering این روش هم به Windows Clustering وابسته است، بنابراین به یک نقطه مرکزی نیاز دارد تا با دیتابیسها در ارتباط باشد.
برخلاف روش Failover Clusteringبه Shared Storage نیازی ندارد، که این موضوع زمانی که مشتری بخواهد روی Cloud هاست شود و در هزینهها صرفه جویی کند اهمیت پیدا میکند.
Availability Group مشابه روش Mirroringدیتا را تکثیر میدهد.
مشتری میتواند یک سرور با هارد SSD را نزدیک سرور اصلی داشته باشد و دیگری را در یک منطقه یا یک کشور متفاوت داشته باشد. از مزایای این روش این است که سرورها را به صورت دستی می توان خارج کرد.
راه اندازی و نگهداری از Availability Group سخت نیست اما با توجه به اینکه Microsoft SQL Server Enterprise نیاز داد و لازم است چند سرور آنلاین و Idle داشته باشیم هزینه هنگفتی دارد.
بنابراین این روش بهتر است برای وضعیتهای خاص و حساس راه اندازی شود بهطوری که هزینهها در واقع یک سرمایه گذاری محسوب شوند.
افزایش سرعت و کارایی (Performance & Tuning)
معمولا اولین راهکار برای رفع کندی برنامهها و نرم افزارها، بالا بردن منابع سخت افزاری مانند از RAM , CPU است که با توجه به مسائل و مشکلات اقتصادی فعلی، این موضوع بهشدت هزینه ساز است، در صورتی که برخی از مشتریان با وجود دارا بودن سرور مناسب همچنان شاهد کندی برنامهها مخصوصا در زمان گزارش گیری متعدد و همزمان از سوی کاربران هستند.
به همین دلیل در بررسی و حل مشکلات کندی عملکرد نرم افزار، از دید یک کاربر در صدد رفع مشکلات زیاد در این رابطه خواهیم بود و هدف ما افزایش سرعت در گزارشگیری براساس بهترین تکنیکها و استفاده حداقلی از منابع سخت افزاری سازمان است.
در ادامه میزان تاثیر هر کدام از عوامل بر کاهش عملکرد نرم افزارها را به ترتیب اولویت نشان خواهیم داد:
نرم افزار (Application)
دیتابیس (DataBase)
سرور (SQL Server)
سیستم عامل (Operating System)
سرور سخت افزاری (Server Hardware)
شبکه (Network)
امنیت بانکهای اطلاعاتی (Security)
چقدر به امنیت و امن نگهداشتن بانک اطلاعاتی و دیتای خود اهمیت میدهید؟ آیا نگران به سرقت رفتن اطلاعات یا نفوذ هکرو باج افزارها به دیتا سرور خود هستید؟ باورش سخت است اما هستند سرورهایی که با وجود بهترین فایروال و آنتی ویروسها دچار حمله و از دست رفتن اطلاعات شدهاند. در این راهکار ما از دیتای شما و حتی فایلهای پشتیبان با بیشترین ضریب امنیت نگهداری خواهیم کرد.انواع راه های نفوذ، سرقت و حتی تغییر در دیتا را میبندیم تا سرور شما از هر نظر در امنیت کامل باشد.
روش ایمن سازی:
پیاده سازی Audit جهت بررسی فعالیت کاربران
ضمانت جلوگیری سرقت اطلاعات
پیاده سازی گزارشات امنیتی
اعمال مجوز و دسترسی سطوح کاربری
ارائه امنیت سرویسها و پروتکل و SQL Server
نگهداشت از بانکهای اطلاعاتی (Maintenance)
آیا سرور شما به صورت دقیق طبق برنامه زمان بندی با بهترین تکنیکها و بالاترین سرعت نسبت به تهیه فایل پشتیبان اقدام میکند؟ چند درصد اطمینان دارید که فایلهای پشتیبان (Backup) شما در صورت نیاز قابل استفاده هستند؟ آیا ممکن نیست فایل پشتیبان نیز خراب شده باشد؟!! در صورت بروز حادثه و پر بودن فضای دیسک، متوقف (Stop) شدن سرویس، خرابی دیتا و عمل نکردن فرآیند تهیه فایل پشتیبان، از چه طریقی مطلع میشوید؟ فایلهای پشتیبان را برای اطمینان بیشتر در چند سرور نگهداری میکنید؟ آیا فایل پشتیبان تحت شبکه دارید؟ جهت تهیه فایل پشتیبان از دیتاهای حجیم در صورت کمبود فضا راهکار شما چیست؟
حساب رایان با روشهای زیر به شما برای نگهداشت از بانکهای اطلاعاتی خود کمک خواهد کرد:
بررسی وضعیت سلامت بانکهای اطلاعاتی
یکی از اساسیترین موضوعات در زمینه نگهداشت، اطلاع از وضعیت سلامت بانکهای اطلاعاتی به علت Crash سرور و پشتیبانی از سرور ثانوی است.
تهیه پشتیبان از دیتاهای حجیم
پیاده سازی پلن مناسب جهت تهیه پشتیبانی از بانکهای اطلاعاتی با حجم زیاد به علت کم بودن فضای Storage با بالاترین سرعت
اعلام آلارم ازطریق پیامک یا ایمیل
اطمینان از عملیات نگهداری با پیاده سازی روش دریافت پیامک یا ایمیل
امنیت فایلهای پشتیبان
رمزگذاری فایلهای پشتیبان جهت جلوگیری از سرقت با بهترین الگوریتمهای رمزگذاری
رصد وضعیت بانکهای اطلاعاتی (Monitoring)
یکی دیگر از مهمترین اقدامات در حوزه بهبود عملکرد بانکهای اطلاعاتی، بررسی و رصد وضعیت سرور و بانکهای اطلاعاتی حتی با کمترین دانش تهیه گزارشات در این رابطه است. به هیمن علت در این راهکار برآن شدیم تا با پیاده سازی سامانه مانیتورینگ (رصد) جهت ارزیابی هرچه بهتر منابع سخت افزاری و نرم افزاری با بیش از ۱۸۰۰شاخص گوناگون در این زمینه از آخرین وضعیت، همواره شما را مطلع سازیم.
راه اندازی سرور ثانوی (Replica Server)
یکی دیگر از راهکارهای شرکت حساب رایان در زمینه بانکهای اطلاعاتی، تفکیک دیتا سرورعملیاتی از تست است.در این شرایط کاربر بهراحتی امکان تغییر و آزمایش هر گونه عملیاتی را خواهد داشت.این موضوع از این جهت حائز اهمیت است که هرگونه تست روی سرورهای عملیاتی ممکن است خسارات جبران ناپذیری در پی داشته باشد. یکی دیگر از کاربردهای این سرور در جهت بهروزرسانی و رفع باگهای امنیتی قبل از اجرایی شدن روی سرور عملیاتی است. مهمترین ویژگی این راهکار آماده به کار بودن این سرور در صورت وقوع حادثه جهت عملیاتی شدن است
خدمات مشاوره در حوزه هوش تجاری BI
زیر ساخت BI یک راهکار هوش تجاریست که به مدیران کسب و کارها کمک میکند تا شاخصهای کلیدی (KPI) شرکت خود را در یک نگاه سنجیده و بر اساس دادههای واقعی تصمیم گیری نمایند. BI به راحتی با نرمافزارهای مختلف یکپارچه شده و میتواند اطلاعات مورد نیاز مدیران را در داشبوردهای مختلف نمایش دهد.
برخی از داشبوردهای مدیریتی
توسط تیم حامین فناوران
داشبورد مدیر عامل
ایجاد گزارشات مدیریتی از ( موجودی به تفکیک انبار – درصد پوشش کالا و مشتری – مبلغ وصول ماه – فروش و موجودی ریالی و تعدادی )
داشبورد مدیریت فروش
ایجاد گزارشات مدیریتی از ( فروش به تفکیک ماه و سال – تعداد مشتری به تفکیک ماه – ریال فروش ۱۰ مشتری برتر – فروش و سهم از فروش هر مسیر )
داشبورد مدیریت تامین کنندگان
ایجاد گزارشات مدیریتی از ( متوسط فروش روزانه – موجودی به تفکیک شعبه – ترند خرید، فروش وهدف به تفکیک سال – مانده باز فروش به تفکیک ماه)
داشبورد خزانهداری
ایجاد گزارشات مدیریتی از (اقلام باز به تفکیک ماه – مبلغ دریافتی نقد / کارمزد/ پوز /حواله – مبلغ تخفیف پس از فاکتور – مبلغ برگشت از فروش )
داشبورد مدیریت مالی
ایجاد گزارشات مدیریتی از ( نسبت و سرمایه در گردش – گردش کل دارایی – نسبت وجه نقد – نسبت ضریب مالکانه – نسبت بدهی بلند مدت )
داشبورد منابع انسانی
ایجاد گزارشات مدیریتی از ( متوسط مرخصی پرسنل – وضعیت جذب و خروج شرکت به تفکیک ماه – تعداد به تفکیک سن شرکت )
داده و مدلها
فراهم نمودن دادهها، تولید دادهها و کیفیت دادهها در BI نقش مهمی ایفا می کند. لذا جنبه های مهم تولید داده، جنبه های زمانی دادهها و کیفیت دادهها را مورد بحث قرار می دهیم.
تهیه دادهها
در این بخش فرآیند تهیه دادهها، جمع آوری و استخراج دادهها به توضیحات جامع مفاهیم و روش های تبدیل دادههای تراکنش به فرمتهای داده تحلیلی، بررسی میشود. با اصطلاح تراکنش داده ها، ما داده ها را با یک ساختار زمانی مشخص در نظر میگیریم که بعدا در تجزیه و تحلیل فرآیند مورد استفاده قرار خواهد گرفت. تمرکز بیشتر روی دادههای بزرگ (Big Data) و کیفیت داده قرار میگیرد.
خدمات حامین فناوران نوین
فرآیند تیم هوش تجاری حامین فناوران در سیستم داده کاوی شامل مراحل مختلفی می شود که در ذیل به آن اشاره می شود:
- پاک سازی دادهها (Data Cleaning)، مرحله آغازین فرایند داده کاوی است
- یکپارچه سازی دادهها
- انتخاب کردن دادههای مناسب
- تبدیل کردن دادهها
- کاوش و جستجو در دادهها
- بررسی و تحلیل الگوها
- نشان دادن علوم جمع آوری شده
دلیل نیاز به راه کارهوش تجاری
رقابت و تغییرات سریع در محیط کسب و کار ها باعث شده که سازمان ها برای پاسخ درست و به موقع، نیازمند عملیات سیستمی می باشند. از مزایای سیستم های داده ایی، کمک به گرفتن تصمیم های اساسی و درست برای کسب و کار ها است که از قابلیت تحلیل حجم وسیع داده ها عاری از خطای انسانی به دست می آید. هوش تجاری رویکردی برای تحلیل درست اطلاعات و اتخاذ تصمیمات صحیح و به هنگام در سازمان ها به کمک سیستم های رایانه ای تصمیم یار می باشد. با استفاده از هوش تجاری می توانیم داده های خام را به اطلاعات مفید که در تصمیمات نیاز است تبدیل کنیم و از مزیت های رقابتی در محیط کسب و کار خود بهره ببریم. هوش تجاری به سه رویکرد مدیریتی، تکنولوژیکی و محصول کسب و کار تمرکز دارد. هوش تجاری از طریق مولفه هایی همچون انباره داده و داده کاوی، تولید دانش از داده ها را انجام می دهد. درست است استفاده از هوش تجاری برای سازمان هزینه هایی دارد اما مزایای استفاده از آن هزینه ها را جبران می کند و باعث می شود سودآوری سازمان افزایش یابد.