Data Warehouse یا انبار داده چیست؛ تفاوت OLTP و OLAP
در این مقاله می خوانید انبار داده چیست و با انواع انبار داده آشنا می شوید.
پایگاه داده چیست؟
در پاسخ به این پرسش و تعریف پایگاه داده بایستی گفت بانک اطلاعاتی مجموعه ای سازمان یافته از اطلاعات ساختار یافته یا داده ها است که معمولاً بصورت الکترونیکی در یک سیستم رایانه ای ذخیره می شود. یک بانک اطلاعاتی معمولاً توسط یک سیستم مدیریت پایگاه داده (DBMS) کنترل می شود. در کنار هم ، داده ها و DBMS به همراه برنامه های کاربردی که با آنها در ارتباط هستند ، به یک سیستم بانک اطلاعاتی گفته می شوند که اغلب کوتاه فقط به بانک اطلاعاتی محدود می شود.
در طراحی پایگاه داده ، داده ها در متداول ترین انواع پایگاه داده ها در حال فعالیت امروزه به طور معمول در ردیف ها و ستون ها در یک سری جداول مدل سازی می شوند تا پردازش و پرس و جو داده ها کارآمد باشد. سپس به داده ها می توان به راحتی قابل دسترسی، مدیریت، اصلاح، به روز رسانی، کنترل و سازماندهی قرار گرفت. اکثر بانکهای اطلاعاتی برای نوشتن و جستجوی داده از زبان پرس و جو ساختار یافته (SQL) استفاده می کنند.
برای کسب اطلاعات بیشتر در مورد سرور دیتابیس چیست مقاله ما را مطالعه نمایید.
انبار داده چیست؟
انبار سازی داده ها (DW) فرایندی برای جمع آوری و مدیریت داده ها از منابع متنوع برای ارائه بینش تجاری معنی دار است. یک انبار داده معمولاً برای اتصال و تجزیه و تحلیل داده های تجاری از منابع ناهمگن استفاده می شود.
انبار داده یا Data Warehouse بر اساس نیاز ها و کابرد های متفاوت به دسته بندی های مختلفی تقسیم میشوند که میتوان به دو دسته بندی زیر جهت طراحی های مختلف اشاره نمود
- ( OLTP (Online Transaction Processing یا انبار داده پردازش تراکنش آنلاین
- ( OLAP( Online Analytical Processing یا انبار داده پردازش تحلیلی آنلاین
به یاد داشته باشید که شما هنگام خرید سرور مجازی بایستی این دو نوع انبارداده را در نظر گرفته و سپس اقدام به خرید کنید .
تفاوت پایگاه داده و انبار داده
یک پایگاه داده برای ذخیره کردن و دسترسی به اطلاعات استفاده می شود ولی انبار داده برای آسان شدن گزارشگیری و تحلیل اطلاعات در مقیاس های بزرگ کاربرد دارد.
پیشنهاد می شود در مورد اینکه کلان داده چیست بیشتر مطالعه کنید.
حال در امتداد مقاله به بررسی انبار داده OLTP و انبار داده OLAP می پردازیم.
oltp چیست؟
انبار داده پردازش تحلیلی آنلاین، نوعی از انواع انبار داده یا مخزن داده است که جهت طراحی سیستم های مدیریت و پردازش داده ها به صورت چند بعدی (multi dimensional) و آنالیز و مدیریت داده های ذکر شده بکار میرود.
در واقع در این نوع پایگاه داده، زمان پاسخ گویی تراکنش ها از اهمیت فوق العاده ای برخوردار است و این نوع از انواع انبار داده بیشتر جهت داده کاوی و تکنیک های پردازش سریع استفاده میشود.
انبار داده OLTP
انبار داده پردازش تراکنش آنلاین، متداول ترین نوع از انواع انبار داده است که جهت پیاده سازی سیستم های زیر می توان از آن استفاده کرد :
- سیستم های تصمیم گیری (Decision Support Systems)
- انبار داده ها data warehouse
- لایه دسترسی بانک اطلاعاتی (data marts)
از میان انواع انبار داده نوع OLTP جهت پردازش تراکنش های بیدرنگ کاربرد دارند که ذاتا نیازمند یکسری الزامات خاص هستند.برای مثال اگر شما یک فروشگاه آنلاین را مدیریت و پیاده سازی می نمایید باید از بروز رسانی جداول بانک اطلاعاتی هنگام خرید کاربران خود و سفارش محصولات و درستی بروز رسانی جداول ذکر شده قبل از پیاده سازی به صورت OLTP ، اطمینان حاصل نمایید .
تراکنش های موجود در انبار داده OLTP از نوع Atomic یا تجزیه ناپذیر بوده بدین معنی که یا تراکنش انجام می شود یا خیر و حد وسطی وجود ندارد و نیز دارای محیطی مجزا (isolated) جهت عدم تداخل در محیط تراکنش های دیگر و در محیطی پایا اجرا می شوند.
از ویژگی های دیگر بانک اطلاعاتی انبار داده OLTP میتوان به “row level locking” یا قفل کردن در سطح یک سطر بانک اطلاعاتی اشاره نمود که در واقع تراکنش سطری را فقل کرده و تا پایان عملیات، تراکنش های دیگر هیچ تغییری بر روی آن سطر اعمال نخواهند کرد .در واقع از این جهت شباهت های بسیاری با قفل کردن های Pthread در برنامه نویسی های همروند دارد.حال امیداواریم تفاوت OLTP و OLAP چیست؟ را درک کرده باشید.
استراتژی های طراحی انبار داده
دو دیدگاه استراتژیک جهت طراحی و توسعه پایگاه داده های مختلف وجود دارد :
- دیدگاه بالا به پایین (Top – down)
- دیدگاه پایین به بالا (bottom-up)
هرچند دو دیدگاه فوق اساسا با یکدیگر تفاوت دارند ولی هر دو دیدگاه تعامل بین فرآیند ها جهت یکپارچه سازی سیستم های نرم افزاری را فراهم می سازند.
دیدگاه بالا به پایین (Top – down)
متد طراحی انبار داده ، از مباحث کلی در طراحی شروع شده و به موارد جزیی ختم می شود یا به بیان دیگر با طرحی از کلیات ، طراحی سیستم آغاز گردیده و سپس پروسه به سمت پایین و جزییات بیشتر که سیستم با آنها ارتباط دارد پیش میرود. این پروسه شامل تعریف نوع entity ها و ویژگی های هر یک می باشد.
دیدگاه پایین به بالا (bottom-up)
متد طراحی پایین به بالا درست برعکس متد طراحی بالا به پایین بوده به این ترتیب که از مباحث جزیی در طراحی شروع شده و به مباحث کلی ختم می شود . این پروسه در ابتدا با طراحی المان های داده ای ما (item) شروع شده و با فرآیند پیوند این المان ها و معرفی آنها به عنوان مجموعه داده ها (data sets) خاتمه خواهد یافت و به بیان دیگر این متد طراحی ابتدا ویژگی های هر entity را بررسی می نماید و سپس آنها را در قالب مدل طراحی عرضه میدارد.
در دو دیدگاه طراحی فوق (top – down and bottom – up) فاکتور هایی مانند: وسعت پروژه ، اندازه سیستم در حال طراحی،سبک مدیریت سازمان، ساختار سازمان مذکور تاثیر بسزایی دارند و حال آنکه با توجه به فاکتور های ذکر شده میتوان از دو دیدگاه طراحی زیر بنا به نیاز استفاده کرد.
- دیدگاه طراحی متمرکز
- دیدگاه طراحی غیر متمرکز
دیدگاه طراحی انبار داده متمرکز
دیدگاه طراحی فوق بیشترین کاربرد را هنگامی که مولفه های داده ای ما از تعدادی کمی از رویه ها و اشیاء کوچک تشکیل شده باشند، دارا می باشد. در حقیقت طراحی به صورت کوچک و متمرکز صورت خواهد گرفت.
طراحی متمرکز به راحتی می تواند توسط یک طراح پایگاه داده و یا یک تیم کوچک توسعه دهنده بانک های اطلاعاتی صورت پذیرد. فرد یا تیم توسعه ذکر شده میتواند مسائل را تشریح و سپس طرح مفهومی اولیه را ایجاد و سپس به توسعه طرح ایجاد شده پرداخته و پردازش های سیستمی لازم برای پوشش اهداف طرح سازمانی فوق را تعریف نمایند.
دیدگاه طراحی انبار داده غیر متمرکز
طراحی غیر متمرکز در طراحی سیستم های بزرگ با ارتباطات داده ای پیچیده و مولفه های داده ای بالا ،بیشترین کاربرد را دارا میباشد. همچنین در طراحی و تشریح مولفه های داده ای کوچک که بخشی از مولفه های داده ای بزرگ مانند طراحی مجموعه داده ها ( Data Sets ) می باشند ، کاربرد دارد.
طراحی فوق معمولا توسط تیم های بزرگ توسعه دهنده که هر یک بر روی ماژولی خاص فعالیت دارند صورت می پذیرد و طرح های مفهومی کوچک توسط تیم های ذکر شده و بر اساس ماژول های مختلف ایجاد و مورد بررسی قرار می گیرد و در نهایت از الحاق طرح های کوچک ، طرح مفهومی نهایی شکل خواهد گرفت امیدواریم با خواندن این مقاله با مخزن داده یا انبار داده چیست و انواع پایگاه داده ها آشنا شده باشید.
سوالات متداول
انواع دیتابیس ها رو با خوندن مقاله سرانجام درک کردم همینطور پایگاه داده و انبار داده به خوبی توضیح داده شده
با مقایسه انواع پایگاه داده می توان پیاده سازی پایگاه داده را راحت تر انجام داد ممنون از مقاله عالیتون