در درس قبلی با OLAP و مفهوم تحلیل مکعب دادهها آشنا شدید. در کنار مفهوم OLAP، مفهومی به نام OLTP وجود دارد که بسیاری از برنامهنویسان هر روزه با آن سر و کار دارند و در روز چندین بار از OLTP جهت پردازش دادههای خود بر روی انواع پایگاهدادهها استفاده میکنند. در این درس میخواهیم تفاوت OLAP و OLTP را درک کنیم.
بهتر است اول یک مثال از OLTP بیاوریم. فرض کنید شما یک حساب بانکی دارید. بر روی این حساب بانکی یک نرمافزار بانک بر روی گوشی خود نصب کردهاید و همچنین وبسایت بانک به شما اجازه انتقال وجه از طریق وبسایت را میدهد. موجودی حساب شما ۱میلیون تومان است. حال فرض کنید در یک لحظه (به صورت همزمان) با نرمافزار تلفن همراه و وبسایت، با هر کدام، قصد دارید ۷۰۰هزار تومان به حساب شخص دیگری انتقال دهیم. یعنی جمعا قصد انتقال ۱میلیون و ۴۰۰هزار تومان توسط دو سیستم (تلفن همراه و وبسایت) به صورت همزمان به حساب شخص دیگری را دارید. این یعنی شما میخواهید ۴۰۰هزار تومان بیشتر از موجودی خود در یک زمان انتقال دهید. در اینجا از سیستمهای OLTP استفاده میشود تا تراکنشها را به صورت دقیق در پردازش محاسبه کند و اجازه ندهد در یک لحظه تراکنشی مانند تراکنش فوق انجام شود (در مورد تراکنشها در درس تراکنش چیست بیشتر توضیح دادهایم). مشاهده میکنید که OLTP برای پردازش دادههایی انجام میشود که نیاز به تحلیل (Analysis) خاصی ندارند و تراکنشها (Transactions) نقل اصلی و اساسی را ایفا میکنند. در واقع OLTP که مخفف Online Transaction Processing است به مجموعهای از سیستمها گفته میشود که مانند مثال بالا، بایستی عملیات مبتنی بر تراکنش (و حساس به درستی تراکنشها) را انجام دهند. (تراکنش بانکی را با تراکنش پایگاه داده اشتباه نگیرید! در اینجا منظور تراکنش در پایگاه داده است)
در حالی که OLAP دستهای از سیستمها میباشد که کار تحلیل دادهها را با توجه به مکعبهای داده و دادههای تجمیع شده انجام میدهد و بیشتر به درد تحلیل میخورد. برای مثال اگر شرکتی بخواهد میزان فروش بهمن سال ۹۷ را با میزان فروش بهمن سال ۹۶ خود مقایسه کند و دادههای زیادی هم داشته باشد، بهتر است از OLAP استفاده کند (بهتر است مکعبداده بسازد و تحلیلها را بر روی آن انجام دهد). در حالی که اگر همین شرکت بخواهد یک فروشگاه اینترنتی راه بیندازد که خرید و فروش آنلاین محصولاتش را داشته باشد، به یک سیستم OLTP (مانند فروشگاههای آنلاین) نیاز دارد.
- ۱ » هوش تجاری (Business Intelligence) چیست؟
- ۲ » انبار داده (Data Warehouse) چیست؟
- ۳ » مفهوم مکعب داده (Data Cube) در انباردادهها
- ۴ » پردازش تحلیلی برخط یا همان OLAP چیست؟
- ۵ » تفاوت OLAP و OLTP چیست؟
- ۶ » فرآیند ETL در انبار داده (Extract, Transformation, Load)
- ۷ » ELT در انبار داده و تفاوت آن با ETL
- ۸ » طراحی انبار داده با شِمای چند بُعدی (Multidimensional Schema)
- ۹ » بازار داده (Data Mart) چیست و چه تفاوتی با انبار داده (Data Warehouse) دارد؟
- ۱۰ » دریاچه داده (Data Lake) چیست؟
سلام ممنونم از زحماتی که برای گردآوری این مطالب کشیدید. بسیار آموزنده بود.
فقط یه ایراد تایپی دیدم گفتم بگم تا در جستجوها کاربران دچار اشتباه نشوند و ارزش مطالب شما کم نشود و آن هم موضوع این صفحه هست که باید از OTLP به OLTP تغییر پیدا کنه.
ممنون
سلام
بله، ممنون اصطلاح شد
سپاس گذارم بابت اصلاح و ایمیلی که فرستادید.
با سلام و خسته نباشید
مطالبتون عالیه و خیلی مفیده
کتاب فارسی هستش که این انبار داده هارو کامل توضیح داده باشه؟
ممنون استفاده بردیم.
سلام، مثلا استاد ما این مطالب رو گفت اما اصلا نگفت و متوجه نشدیم۔۔۔ اینجا خیلی ساده و درست توضیح دادید ممنون
عالی توضیح دادین، ساده و روون
انصافا مطالب سایت با دقت نظر و زحمت بسیار ویراسته و تالیف شدهاند
مدتی هست که مطالب چیستو رو برحسب نیاز مطالعه میکنم
بسیار روان و با کیفیت نگارش شده است. دست مریزاد