پرش به محتوا

پیش‌نویس:مکعب داده

از ویکی‌پدیا، دانشنامهٔ آزاد

برای مفهوم داده‌کاوی، مکعب پردازش تحلیلی آنلاین را مشاهده کنید.

در زمینه های برنامه نویسی کامپیوتر، یک مکعب داده یک آرایه چند بعدی ("n-D") از مقادیر است. به طور معمول، اصطلاح مکعب داده در زمینه‌هایی به کار می‌رود که این آرایه‌ها بسیار بزرگتر از حافظه اصلی کامپیوتر میزبان هستند. نمونه ها شامل انبار های داده چند ترابایتی/پتابایتی و سری های زمانی داده های تصویری است.

مکعب داده برای نمایش داده ها در کنار برخی از ابعاد مورد علاقه استفاده می شود. به عنوان مثال، در پردازش تحلیلی برخط (OLAP) چنین ابعادی می تواند شرکت های تابعه یک شرکت، محصولاتی که شرکت ارائه می دهد و زمان باشد. در این سازوکار، یک داده یک رویداد فروش است که در آن یک محصول خاص در یک شرکت تابعه خاص در یک زمان خاص فروخته شده است. در سری زمانی تصاویر ماهواره ای ابعاد مختصات طول و عرض جغرافیایی و زمان خواهد بود. یک واقعیت (گاهی اوقات اندازه گیری نامیده می شود) یک پیکسل در مکان و زمان معینی است که توسط ماهواره گرفته می شود (توسط پردازش هایی که در اینجا مورد بحث نیست). با اینکه به آن مکعب می گویند (و مثال های ارائه شده در بالا برای اختصار سه بعدی هستند)، مکعب داده به طور کلی یک مفهوم چند بعدی است که می تواند یک بعدی، دو بعدی، سه بعدی یا بالاتر باشد. در هر صورت، هر بعد داده‌ها را به گروه‌هایی از سلول‌ها تقسیم می‌کند، در حالی که هر سلول در مکعب نشان‌دهنده یک معیار واحد است. گاهی اوقات مکعب‌ها فقط چند مقدار را نگه می‌دارند و بقیه آن‌ها خالی هستند، یعنی تعریف‌نشده‌اند، در حالی که گاهی اوقات بیشتر یا همه مختصات مکعب یک مقدار سلول دارند. چنین داده‌هایی مانند مورد اول پراکنده و در مورد دوم متراکم نامیده می‌شوند، اگرچه هیچ مرزبندی سفت و سختی بین این دو وجود ندارد.

تاریخچه[ویرایش]

آرایه های چند بعدی از دیرباز در زبان های برنامه نویسی مورد استفاده بوده اند. فرترن آرایه‌های 1 بعدی و آرایه‌هایی از آرایه‌ها را با نمایه‌سازی دلخواه ارائه می‌دهد که امکان ساخت آرایه‌های با ابعاد بالاتر را تا 15 بعد فراهم می‌کند. APL از آرایه های n-D با مجموعه ای غنی از عملیات پشتیبانی می کند. وجه مشترک همه اینها این است که آرایه ها باید در حافظه اصلی قرار گیرند و فقط در زمانی که برنامه خاصی که آنها را نگهداری می کند (مانند نرم افزار پردازش تصویر) در دسترس هستند.

مجموعه‌ای از فرمت‌های تبادل داده از ذخیره و انتقال داده‌های مکعب مانند پشتیبانی می‌کنند که اغلب برای حوزه‌های کاربردی خاص طراحی شده‌اند. مثال‌ها عبارتند از MDX برای داده‌های آماری (به‌ویژه، تجاری)، قالب های سلسله مراتبی داده برای داده‌های علمی عمومی و TIFF برای تصاویر.

در سال 1992، پیتر باومن مدیریت مکعب های عظیم داده را با عملکرد کاربر سطح بالا همراه با معماری نرم افزاری کارآمد معرفی کرد. عملیات Datacube شامل استخراج زیرمجموعه، پردازش، ادغام و به طور کلی پرس و جو مطابق با زبان های دستکاری داده ها مانند SQL است.

چند سال بعد، مفهوم مکعب داده برای توصیف داده های کسب و کار متغیر با زمان با عنوان مکعب های داده توسط جیم گری و همکاران و توسط ونکی هارینارایان، آناند راجارامان و جف اولمن به کار رفت و در یک دوره 25 ساله در بین 500 مقاله برتر علوم کامپیوتر با بیشترین استناد قرار گرفت.

در همان زمان، یک گروه کاری بر روی پایگاه‌های داده چند بعدی ("Arbeitskreis Multi-Dimensionale Datenbanken") در Gesellschaft für Informatik آلمان تأسیس شد.

Datacube Inc. یک شرکت پردازش تصویر بود که در سال 1996 برنامه‌های سخت‌افزاری و نرم‌افزاری را برای بازار رایانه‌های شخصی به فروش می‌رساند، البته بدون پرداختن به مکعب‌های داده.

طرح ابتکاری EarthServer نیازهای سرویس مکعب داده های جغرافیایی را فراهم کرده است.

استاندارد سازی[ویرایش]

در سال 2018، زبان پایگاه داده ISO SQL با کارکرد مکعب داده ای به عنوان "SQL - قسمت 15: آرایه های چند بعدی (SQL/MDA)" گسترش یافت.

Web Coverage Processing Service یک زبان تجزیه و تحلیل مکعب داده های جغرافیایی است که توسط Open Geospatial Consortium در سال 2008 منتشر شد. علاوه بر عملیات های رایج مکعب داده، این زبان در مورد مفاهیم فضا و زمان نیز می داند و از مکعب های داده شبکه ای منظم و نامنظم بر اساس مفهوم داده های پوششی پشتیبانی می کند.

یک استاندارد صنعتی برای پرس و جو از مکعب های داده کسب و کار، که در اصل توسط مایکروسافت توسعه یافته است، MultiDimensional eXpressions است.

پیاده سازی ها[ویرایش]

بسیاری از زبان‌های کامپیوتری سطح بالا، مکعب‌های داده و دیگر آرایه‌های بزرگ را به‌عنوان موجودیت‌هایی مجزا از محتوای آن‌ها در نظر می‌گیرند. این زبان‌ها، که Fortran، APL، IDL، NumPy، PDL و S-Lang نمونه‌هایی از آن‌ها هستند، به برنامه‌نویس اجازه می‌دهند تا کلیپ‌های فیلم کامل و سایر داده‌ها را به طور انبوه با عبارات ساده مشتق شده از جبر خطی و ریاضیات برداری دستکاری کند. برخی از زبان ها (مانند PDL) بین لیست تصاویر و مکعب داده تمایز قائل می شوند، در حالی که بسیاری از زبان ها (مانند IDL) این کار را نمی کنند.

آرایه‌های DBMS (سیستم‌های مدیریت پایگاه داده) یک مدل داده ارائه می‌دهند که به طور کلی از تعریف، مدیریت، بازیابی و دستکاری مکعب‌های داده n بعدی پشتیبانی می‌کند. این دسته از پایگاه داده از سال 1994 توسط سیستم rasdaman ایجاد شده است

کاربرد ها[ویرایش]

آرایه‌های چند بعدی می‌توانند داده‌های حسگر مکانی-زمانی، تصویر و شبیه‌سازی را به‌طور معنی‌داری نشان‌دهند، و همچنین داده‌های آماری را که مفاهیم ابعاد در آن لزوماً ماهیت مکانی یا زمانی ندارند نیز نشان دهند. به طور کلی، هر نوع محوری را می توان با هر محور دیگری در یک مکعب داده ترکیب کرد.

ریاضیات[ویرایش]

در ریاضیات، یک آرایه یک بعدی با یک بردار مطابقت دارد، یک آرایه دو بعدی شبیه یک ماتریس است. به طور کلی، یک تانسور ممکن است به عنوان یک مکعب داده n بعدی نشان داده شود.

علم و مهندسی[ویرایش]

برای یک توالی زمانی از تصاویر رنگی، آرایه به طور کلی چهار بعدی است، با ابعاد تصویر که نشان دهنده X و Y مختصات، زمان و صفحه رنگی RGB (یا فضاهای رنگی دیگر) هستند. برای مثال، ابتکار EarthServer مراکز داده را از قاره‌های مختلف متحد می‌کند که سری های زمانی تصاویر ماهواره‌ای 3-D x/y/t و داده‌های آب و هوا 4-D x/y/z/t را برای بازیابی و پردازش سمت سرور از طریق Open ارائه می‌کند. استاندارد زبان پرس و جوی مکعب داده های جغرافیایی کنسرسیوم جغرافیایی WCPS.

مکعب داده در زمینه طیف سنجی تصویربرداری نیز استفاده می شود، زیرا یک تصویر با تفکیک طیفی به عنوان یک حجم سه بعدی نشان داده می شود. مکعب های داده های رصد زمین تصاویر ماهواره ای مانند Landsat 8 و Sentinel-2 را با تجزیه و تحلیل سامانه اطلاعات جغرافیایی ترکیب می کنند.

هوش تجاری[ویرایش]

در پردازش تحلیلی برخط (OLAP)، مکعب‌های داده چینش معمولی از داده‌های تجاری هستند که برای تجزیه و تحلیل از دیدگاه‌های مختلف از طریق عملیات‌هایی مانند برش، مکعب سازی، چرخش و تجمیع مناسب هستند.

جستار های وابسته[ویرایش]

Array dbms

Rasdaman