Repository چیست؟
SOFTWARE REPOSITORY
Repository یا به طور خلاصه Repo به طور کلی، یک مخزن فناوری اطلاعات و ذخیره کد است به این صورت که مکانی متمرکز است که در آن داده ها به روشی سازمان یافته، معمولاً در حافظه رایانه، ذخیره و نگهداری می شوند.
یک مخزن می تواند عملکردهای مختلفی را داشته باشد. میتواند مستقیماً در دسترس کاربران بدون نیاز به جابجایی در سراسر شبکه قرار گیرد، یا میتواند مکانی باشد که پایگاههای داده، فایلها یا اسناد خاصی برای دسترسی یا توزیع در آن ذخیره کنند.
یک مخزن می تواند تجمیع خود داده ها در یک مکان ذخیره سازی قابل دسترس باشد، یا می تواند امکان استخراج انتخابی داده ها را فراهم کند.
اصطلاحات مهم:
Data lake: مخزن داده بزرگی است که داده های بدون ساختار را که طبقه بندی شده و با metadata برچسب گذاری شده اند، ذخیره می کند.
Data mart:یر مجموعه های یک مخزن داده که معمولا کوچکتر هستند و بر روی یک منطقه یا بخش خاص متمرکز هستند.
Data cube: فهرستی از داده ها با سه بعد یا بیشتر که به صورت جدول ذخیره می شوند.
تعریف
SOFTWARE REPOSITORY مکانی جهت ذخیره سازی بسته های نرم افزاری است که مواردی مانند فهرست مطالب، کد منبع و ابرداده در آن قرار دارند. در یک سازمان، یک Repository نرم افزاری برای ذخیره مصنوعات یا بازتاب مخازن خارجی استفاده می شود که ممکن است به دلیل محدودیت های امنیتی در دسترس نباشند.
یک Repository میتواند عملکردهای اضافی مانند کنترل دسترسی، نسخهسازی، بررسیهای امنیتی برای نرمافزار آپلود شده و عملکرد خوشهای (cluster functionality) را ارائه دهد. به طور معمول از فرمت های مختلفی برای ارائه یک منبع ایمن پشتیبانی می کند.
همچنین ویژگی های امنیتی داخلی مانند طراحی ضد بدافزار و سیستم احراز هویت برای محافظت از کاربران وجود دارد. در تئوری، یک کاربر واقعی باید بتواند به یک محیط امن وارد شود، نرم افزار یا منابع کد خاصی را پیدا کند و آنها را برای تعامل با سیستم نرم افزاری به عنوان یک مجموعه دریافت کند.
چه نیازی به ایجاد Repository وجود دارد؟
1. تصمیم گیری سریع (Fast Track Decision Making)
2. دیباگ و تست (Debugging and Testing)
3. کنترل و مقایسه ورژن (Version Control and Comparison)
یک Repository می تواند در سیستم های کنترل ورژن برنامه، برای ذخیره ابرداده برای ساختار دایرکتوری یا مجموعه ای از فایل ها استفاده شود.
Repository می تواند برای کپی کردن کل مجموعه اطلاعات در سیستم هر کاربر استفاده شود، یا می توان از آن برای نگهداری داده ها در یک سرویس استفاده کرد. همچنین می تواند برای مقایسه ورژن ها استفاده شود زیرا تاریخچه تغییرات ایجاد شده در داده های ذخیره شده را ذخیره می کند.
انواع Repository
Content Repository: محتوا آن یک پایگاه داده از محتوای دیجیتال، مانند اسناد، دارایی های دیجیتال، تصاویر، ویدئو، صدا و غیره است. یک مثال شناخته شده از این نوع مخزن،می توان از یک سیستم مدیریت محتوا (CMS) که در سرورهای فایل ذخیره شده است نام برد.
Disciplinary Repositor: این مخزن حاوی داده های مربوط به یک حوزه موضوعی خاص است. اغلب شامل کارهای محققان و دانشمندان است که در آن حوزه موضوعی تخصص دارند. یک مخزن Disciplinary کارهایی را از محققان می پذیرد که حاوی داده ها یا کارهای مرتبط با آن موضوع خاص باشد.
Information repository: مخازن اطلاعات می تواند معنای گسترده تری داشته باشد. با این حال، در رابطه با فناوری اطلاعات، به فضای دیجیتالی اطلاق می شود که داده ها را به روشی سازمان یافته نگه می دارد و نگهداری می کند.
Institutional Repository:مخزنی که حاوی آرشیو کپیهای دیجیتالی از خروجی های یک موسسه است، به عنوان مخزن Institutional و یا سازمانی شناخته میشود. (بیشتر برای یک موسسه تحقیقاتی استفاده می شود.)