دانلود فایل های تحقیقاتی

۳۰ مطلب در مهر ۱۳۹۶ ثبت شده است

  • ۰
  • ۰

آموزش AngularJs

بررسی اجمالی AngularJS

این فریم ورک با اعمال یک فرمت از چیزی که در HTML فراهم شده، کار می کند. اگر HTML به منظور توسعه برنامه های وب خلق شده بود، آن گاه معادل آن، angularJS می بود. در هنگام اعلان اسناد استاتیک، HTML بهترین گزینه است. اما HTML برای اعلان بازدید های دینامیک در برنامه های کاربردی وب ما مناسب نیست. با فریم ورک Angular، لغات HTML استفاده شده در برنامه شما می توانند تا حد زیادی گسترش یابند. پس از انجام این کار، شما به محیطی دست خواهید یافت که به راحتی خوانده شده، رسا بوده و برای اعمال توسعه های شما، سرعت عمل بیشتری دارد.

AngularJS و HTML

همان طور که می دانید، AngularJS برای گسترش ویژگی های HTML به کار می رود. بیشتر شما از نحوه استفاده از HTML استاندارد آگاه هستید. اما، AngularJS برای گسترش ویژگی های آن به کار می رود. در این فصل، ما می خواهیم یک صفحه HTML را خلق کرده، سپس کد نوشته شده به HTML را به قالبی که توسط AngularJS مورد استفاده قرار می گیرد تا همان داده ها را به صورت دینامیک نمایش دهد، تبدیل کنیم. فقط داده های پایه به صفحه HTML اضافه خواهند شد. اولین کد صفحه وب، به این صورت است:

<ul>
<li>
<span> Motorola </span>
<p>
I really like Motorola phones.
</p>
</li>
<li>
<span>Nokia are the best in Wi-Fi connection</span>
<p>
I really like to make use of devices.
</p>
</li>
</ul>

مدت زمان : 14 ساعت

دموی 1 :  

لینک سفارش

  • ایران متلب
  • ۰
  • ۰

Angular 2  چیست؟

Angular 2  یک فریم ورک متن باز جاوا اسکریپت است که برای ساختن برنامه های کاربردی وب در محیط HTML و جاوا اسکریپت به کار رفته و به عنوان اولین رویکرد تلفن همراه[1] شناخته می شود.

تاریخچه

نسخه بتا Angular 2 در مارس 2014 منتشر شد.

چرا از Angular 2 استفاده کنیم؟

Angular 2 از Angular 1 ساده تر بوده و مفاهیم کمتر آن باعث درک آسان تر برنامه می شوند.

 شما می توانید مجموعه های داده بزرگ را با کمترین میزان سربار حافظه، بروزرسانی کنید.

این نرم افزار، سرعت بارگذاری اولیه را از طریق رندر در سمت سرور، افزایش می دهد.

ویژگی ها

Angular 2 از Angular 1 سریع تر و کار با آن ساده تر است.

Angular 2 از آخرین نسخه های مرورگر ها پشتیبانی کرده و همچنین مرورگر های قدیمی مانند IE9+ و Android 4.1+ را نیز پشتیبانی می کند.

Angular 2 عمدتا بر برنامه های تلفن همراه متمرکز است. ساختار کد در این نسخه، بسیار ساده تر از نسخه پیشین است.

مزیت ها

اگر برنامه ای یک heavy load[2] باشد، Angular 2 آن را به طور کامل "پاسخگو به رابط کاربر[3]" می کند.

این برنامه از رندرینگ سمت سرور برای بازدید های موبایلی سریع استفاده می کند.

این برنامه به خوبی با ECMAScript و دیگر زبان هایی که به جاوا اسکریپت کامپایل می شوند کار می کند.

این برنامه از تزریق وابستگی برای نگهداری از برنامه ها بدون نوشتن کد های بسیار طولانی استفاده می کند.

همه چیز، رویکرد مبتنی بر کامپوننت خواهد بود.

معایب

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

اگر شما کاربر جدید Angular 2 هستید، اندکی زمان می برد تا کار با آن را یاد بگیرد.

[2] برنامه ای که میزان قدرت یک سیستم را به چالش می کشد، برای مثال، برنامه های تست سی پی یو

[3] UI

  • ایران متلب
  • ۰
  • ۰

AMOS

AMOS یک نرم افزار آماری است و حروف آن مخفف کلمات "تحلیل ساختار های یک گشتاور[1]" می باشند. AMOS یک ماژول اضافه شده به SPSS است و به طور خاص، برای مدل سازی معادلات ساختاری، تحلیل مسیر، و تحلیل عامل تاییدی به کار گرفته می شود. این نرم افزار همچنین با عنوان تحلیل کوواریانس یا نرم افزار مدل سازی سببی نیز شناخته می شود. AMOS یک برنامه بصری برای مدل سازی معادلات ساختاری ( SEM) است. با AMOS، ما می توانیم با استفاده از ابزار های ساده طراحی، مدل های گرافیکی رسم کنیم. AMOS به سرعت محاسبات مربوط به SEM را انجام داده و نتیجه را به نمایش می گذارد.

در محاسبه ضریب های SEM، AMOS از شیوه های زیر استفاده می کند:

بیشترین احتمال

کمترین مربعات توزین نشده[2]

کمترین مربعات تعمیم یافته[3]

معیار توزیع آزاد مجانبی براون[4]

کمترین مربعات مقیاس آزاد[5]

ساخت و ساز مدل در AMOS

در ابتدا، بایستی AMOS را اجرا کنیم. با کلیک بر روی منوی "start" و انتخاب گزینه " AMOS graphic"، می توانیم برنامه را اجرا کنیم. در لحظه ای که AMOS اجرا می شود، یک پنجره که " AMOS graphic" نام دارد، پدیدار می شود. در این پنجره، ما می توانیم به صورت دستی مدل SEM خود را ترسیم کنیم.

پیوست کردن داده ها

با انتخاب یک نام فایل از گزینه فایل داده ها، می توانیم داده ها را برای تحلیل SEM پیوست کنیم. با کلیک بر روی آیکون " select data" نیز می توان به این گزینه دسترسی داشت.

متغیر های مشاهده شده[6]: یک آیکون مستطیل برای ترسیم متغیر مشاهده شده، استفاده می شود.

متغیر مشاهده نشده[7]: یک آیکون دایره برای ترسیم متغیر مشاهده نشده استفاده می شود.

رابطه علت و معلول: یک پیکان یک سویه در AMOS برای ترسیم رابطه علت و معلول در متغیر های مشاهده شده و مشاهده نشده به کار می رود.

کوواریانس: یک پیکان دو سویه برای رسم کوواریانس میان متغیر ها استفاده می شود.

عبارت خطا: در AMOS، آیکون عبارت خطا، بعد از آیکون متغیر مشاهده نشده قرار دارد و برای ترسیم متغیر های پنهان به کار گرفته می شود.

نام گذاری متغیر ها: هنگامی که در یک پنجره گرافیکی، بر روی یک متغیر راست کلیک کنیم، اولین گزینه یعنی " object properties"، برای نام گذاری متغیر ها در AMOS به کار می رود. در این جا، آیکون های دیگری نیز وجود دارند که این آیکون ها، به ترسیم گرافیکی مدل SEM کمک می کنند. آیکون هایی مانند پاک کن، حرکت، محاسبه، دیدن متن، ویژگی های تحلیل، و غیره در ترسیم گرافیکی مدل SEM مفید هستند.

درک خروجی متن در AMOS

پس از اجرای تحلیل، ما می توانیم نتایج را بر روی پنجره گرافیکی مشاهده کنیم. ما همچنین می توانیم خروجی متن را نیز ببینیم. پنجره گرافیکی، تنها رگرسیون های استاندارد شده و غیر استاندارد شده و همچنین میزان عبارت های خطا[8] را نمایش می دهد. تمامی نتایج در خروجی متنی نمایش داده می شوند.

AMOS خروجی های مهم زیر را تولید می کند:

خلاصه وضعیت متغیر: در AMOS و خلاصه وضعیت متغیر خروجی متنی آن، ما می توانیم ببینیم که چه تعداد متغیر و نیز چه متغیر هایی برای تحلیل SEM به کار گرفته می شوند. می توانیم ببینیم که چه تعداد "متغیر مشاهده شده" و چه تعداد "متغیر مشاهده نشده" در مدل وجود داشتند.

دسترسی به حالت عادی: در مدل SEM، داده ها باید به صورت نرمال توزیع شوند. AMOS خروجی متنی و چولگی را ارائه می دهد و اوج نموداری و آزمون D- مربع کشیدگی ماهالانوبیس نیز به ما در مورد عادی بودن داده ها می گویند.

تخمین ها: در خروجی متنی AMOS، گزینه تخمین، به ما نتایج مربوط به میزان رگرسیون[9]، بارگذاری استاندارد شده برای عامل، باقی مانده، همبستگی، کوواریانس، اثر مستقیم، اثر غیر مستقیم ، اثر کل، و غیره را نشان می دهد.

شاخص اصلاح: در خروجی متنی AMOS، نتیجه شاخص اصلاح، قابلیت اطمینان مسیر ترسیم شده در مدل SEM را نشان می دهد. اگر مقدار MI شاخص بزرگ باشد، آن گاه ما می توانیم مسیر های بیشتری را به مدل SEM اضافه کنیم.

تناسب مدل: در خروجی متنی AMOS، گزینه تناسب مدل، نتیجه تناسب آمار های مدل را ارائه می دهد. این گزینه، خوبی شاخص های تناسب مانند GFI، RMR، TLI، BIC، RMSER و غیره را نشان می دهد.

پیغام خطا: اگر در حین فرآیند ترسیم مدل هرگونه مشکلی وجود داشته باشد، (برای مثال اگر فراموش کنیم که عبارت خطا را ترسیم کنیم و یا اگر کوواریانس را در میان دو متغیر رسم کنیم و یا اگر داده ها مفقود شوند)، آن گاه AMOS یا  نتایج را محاسبه نکرده، و یا یک پیغام خطا صادر می کند.

[1] moment

[2] Unweighted least squares

[3] Generalized least squares

[4] Browne’s asymptotically distribution-free criterion

[5] Scale-free least squares

[6] Observed Variable

[7] Unobserved Variable

[8] error term weights

[9] regression weight

  • ایران متلب
  • ۰
  • ۰

هر گاه یک برنامه نویس وب سایت بخواهد یک وب سایت و اپلیکشن موبایل آنرا از روی طرح اولیه بسازد. لازم است که قالب های هر قسمت از سایت را از طراحان بگیرد و با زحمت و مشقت زیاد پیکسل را بشمارد و CSS را با دقت و صبر زیاد تنظیم کند. ساعت های بیشماری لازم است گذاشته شود تا یک خروجی تمیز بر اساس اصول طراحی بدست آید که در تمامی مرورگرهای اینترنت به خوبی جواب دهد. تا در زمان 2011 که یک قهرمان جدید دنیای وب را دچار چالش کرد. این چیز جدید با شور و فداکاری Mark Otto و Hacob Thornton به وجود آمد و نام Bootstrap به خود گرفت. نسخه دوم در کمتر از نصف سال برای بهبود نسخه قبلی معرفی شد که اساس طراحی سایت واکنشگرا (responsive) شد. این نسخه شامل grid دوازده ستونی مقاوم و تعداد بسیار زیادی قطعات پیش تنظیم شده بود. با این قابلیت هر شخصی با اطلاعات پایین برنامه نویسی وب هم می توانست این قطعات را در کنار هم قرار دهد و یک وب سایت واکنشگرا ایجاد کند. این کنار هم قرار دادن قطعات ، شبیه کنار هم قرار دادن قطعات پازل به آسانی انجام می شود. components در دومین تولد آن ، نسخه 3 آن معرفی شد که تمرکز بیشتر آن بر روی موبایل بود و نسبت به نسخه 2 در طراحی فلت بهبودهایی داشت. دو سال بعد ، در آگوست 2015 چهارمین نسخه آن به نام اولین نسخه آلفا در اختیار برنامه نویسان قرار گرفت. این سیکل سریع توسعه بوت استارپ، لازم بود که در جایی متوقف شود. اکنون تیم اصلی گفته اند که هیچ نسخه ای بعد از نسخه 4 نخواهد آمد. من با جرات می گویم تاثیری که بوت استراپ بر روی دنیای وب داشته است مشابه خط تولید اسمبلی شرکت فورد در دنیای اتومبیل می باشد. امروزه بیش از 7 میلیون وب سایت (بر اساس آمار سایت Builtwith.com) از بوت استارپ استفاده می کنند. به نظر ما نسخه 3.X.X یک گزینه خوب برای ساخت وب سایت و اپلیکشن موبایل است.

لینک اصلی

  • ایران متلب
  • ۰
  • ۰

آموزش HTML5 Canvas

یکی از مهم ترین ابزارهای یک نقاش بوم نقاشی او می باشد. این به او این آزادی را می دهد تا همه نوع احساس و بیان و ایده را بر روی آن به نحوی که دوست دارد نمایش دهد. این آزادی به وسیله دو چیز محدود می شود: سطح مهارت و تصویر سازی او.

این موقعیت را در دنیای توسعه وب هم به طور مشابه داریم. با پیشرفت HTML5 و خصوصیات قدرتمندش ، توسعه دهندگان وب به توانایی هایی دسترسی پیدا کردند که در گذشته غیر ممکن بود. رسم گرافیک و ایجاد انیمیشین مستقیما در جستجوگر اینترنت به طور کامل ممکن شد با کمک HTML5 Canvas.

 

HTML5 Canvas چیست ؟

این API بوسیله نوشتن کدهای جاوا اسکریپ که می توانند ناحیه کاناواس را دسترسی داشته باشند. این دسترسی شامل یک مجموعه کامل از توابع رسم می باشد ک هاجازه تولید گرافیک دینامیک را می دهند.

 

چه کاربردهایی می توان با HTML5 Canvas ایجاد کرد ؟

بازی سازی : شما می توانید بازی های دوبعدی و سه بعدی بسازید.

تبلیغات : شما می توانید بنر و تبلیغات دینامیک بر مبنای فلش ایجاد کنید تا توجه مخاطب بیشتر جلب شود.

بیان داده : HTML5 می تواند داده را از منابع داده عمومی جمع آوری کند و از آنها استفاده کند تا چارت ها و گرافهای واکنش گرا تولید کند.

آموزش و یادگیری : HTML5 Canvas را میتوان برای تولید محتوی ترکیبی ویدئو و صوت و تصویرو متن جهت آموزش هم استفاده کرد.

هنر و تزیین : با استفاده از خلاقیت و ابزارهای در دسترس در اینجا می توان خروجی های هنری زیبایی تولید کرد.

 

زمینه بارگذاری کانواس

هر المان کانواس HTML5 می بایست یک زمینه باشد. زمینه مشخص می کند که   از چه HTML5 Canvas API  استفاده شود. زمینه 2 بعدی برای رسم نمودارهای دو بعدی و دستکاری تصویر های bitmap استفاده می شود. زمینه سه بعدی برای نمودارهای سه بعدی (ایجاد و دستکاری) استفاده می شود. این مفهوم به نام WebGL و OpenGL ES شناخته می شود.

 

شروع :

برای شروع با کانواس شما به یک ویرایشگر کد و یک مرورگراینترنت نیاز دارید. من از گوگل کروم و Textpad استفاده می کنم اما شما هر کدام دیگر را خواستید می توانید استفاده کنید.

اولین کد HTML ما به صورت زیر است :


<canvas id="exampleCanvas" width="500" height="300">
  <!-- OPTION 1: leave a message here if browser doesn't support canvas -->
    <p>Your browser doesn’t currently support HTML5 Canvas.
    Please check caniuse.com/#feat=canvas for information on
    browser support for canvas.</p>
  <!-- OPTION 2: put fallback content (text, image, Flash, etc.)
                 if the browser doesn't support canvas -->
</canvas>
و کد جاوا اسکریپ ما به صورت زیر است :
var canvas = document.getElementById('exampleCanvas'),
    context = canvas.getContext('2d');
    // code examples will continue here...


به صورت پیش فرض ، مرورگر المان های کانواس را با عرض 300 پیکسل عرض و 150 پیکسل ارتفاع ایجاد می کند. شما می توانید اندازه عرض و ارتفاع را تغییر دهید.

نکته بعدی این است که ما به ویژگی کانواس خود یک id دادیم تا در کد جاواسکریپ خود از آن استفاده کنیم. در نهایت ، شما می توانید از طریق کد CSS به اطراف کانواس خود قاب اضافه کنید تا بیشتر نمایان شود.

نکته بعدی این است که در بین باز و بسته کردن تگ <canvas> ، من محتوایی اضافه کردم که اگر مرورگر از کانواس پشتیبانی نمی کند آنرا نمایش دهد. شما می توانید هر متنی که خواستید قرار دهید.

جاوا اسکریپ با دو خط شروع می شود. در خط ابتدا، ما یک متغییر ایجاد می کنیم که المان کانواسمون را با   id  اش در بر بگیرد. خط دوم یک متغییر (context) ایجاد می کند که به محتوی 2 بعدی کانواس توسط تابع getContext() ارجاع می دهد . ما از متغییر context  برای دسترسی به تمامی تابع های طراحی کانواس و خصوصیات آن استفاده می کنیم.

با کانواس خودمون می توانیم شروع به کار با API آن هم بکنیم. اما قبلش بهتر است با تعدادی از مفاهیم کانواس بیشتر آشنا شویم.

اندازه المان و اندازه سطح رسم HTML5 Canvas :

بعلاوه اندازه و ارتفاع المان های کانواس ، شما همچنین می توانید از CSS برای تنظیم اندازه المان کانواس استفاده کنید.

هرچند، همانطور که می دانید تنظیم اندازه در CSS یا کانواس با هم متفاوت است. این به این دلیل است که کانواس دقیقا دو اندازه دارد : اندازه المان و اندازه سطح رسم المان. ولی در CSS شما به تنظیم سطح رسم المان دسترسی ندارید.

اگر اندازه المان با اندازه سطح رسم جور نباشد، مرورگر اینترنت سطح رسم را به اندازه المان fit می کند.

به همین خاطر بهتر است از ویژگیهای کانواس برای تنظیم المان ها به جای CSS استفاده کنید.

 

لینک دانلود

  • ایران متلب
  • ۰
  • ۰

از زمان تولید cinema 4D ، این نرم افزار یکی از معروفترین نرم افزاری های مدلسازی و انمشن سازی و رندرینگ سه بعدی می باشد. توسط Maxon توسعه داده شده است. Cinema 4D قادر به مدلسازی چندگوشه و subd و انیمیشن سازی و نورپردازی و تغییر بافت و رندرینگ در کاربردهای مدلسازی سه بعدی می باشد.

این آموزش کوتاه cinema 4D که توسط ایران متلب تهیه شده است به شما کمک می کند تا مفاهیم پایه این نرم افزار را آشنایی پیدا کنید.

 

معرفی cinema 4D :

تیم درخشان Greyscalegorilla تاکنون بیش از 200 آموزش کوتاه در چهار سال قبل ساخته اند. برخی از این ویدئو ها برای معرفی اولیه هستند.  

معرفی مدلسازی در Cinema 4D

در این ویدئو شما با ابزارها و تکنیک های شروع مدلسازی در سینما 4 بعدی آشنا می شوید.  

ذخیره و تنظیم کالیبراسیون دوربین

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

   

بافت گذاری اشیا و نورها در Cinema 4D

در این آموزش ، فرایند بافت گذاری اشیا در سینما 4بعدی و نورگذاری صحنه آموزش داده می شود.

   

کار با مواد در Cinema 4D :

در این آموزش شما یاد می گیرید که چگونه با مواد در این نرم افزار کار کنید. شما یاد می گیرید گه لایه ها چی هستند و پارامترهای متفاوت چی هستند. در این آموزش همچنین تفاوت بین شفافیت تصویر و آلفا و دیگر جزییات سیستم مواد را نیز یاد خواهید گرفت.

b1

 شروع سریع Cineware و Cinema 4D

آموزش 40 دقیقه چگونگی ابزارهای انیمشین سه بعدی و workflow می باشد. این آموزش شامل نسخه ابری جدیدترین قابلیت های After Effects هم می باشد.    

آموزش چگونگی کار با حیوان دو پا در Cinema 4D

در انتهای این آموزش شما یاد می گیرید که چگونه یک کاراکتر را با استخوان و اتصالات و کنترلرها کامل کنید. c1  

انتقال صحنه از Cinema 4D به After Effects

در این آموزش نحوه انتقال صحنه از Cinema 4D به After Effects را یاد خواهید گرفت.  

چگونگی استفاده از ابزار BodyPaint در Cinema 4D

با ابزار BodyPaint شما به سرعت می توانید رندر با کیفیت خوب را ایجاد کنید.    

چگونگی ساخت اشیای رقاص سه بعدی

در این آموزش شما یاد می گیرد چگونه یک شی یا شکل را وارد cinema 4D کنید و بر اساس موزیک رقص کند. در این آموزش شما نحوه ایجاد بیان های پیچیده و دینامیک انیمیشنی را یاد خواهید گرفت.  

انیمشین سازی حرکت یک لوگو در Cinema 4D

جهان گرافیک حرکت بطور پیوسته در حال تغییر است و کار در این زمینه در حال پیشرفت و پیچیده شدن است. در این آموزش شما نحوه انیمیشین سازی و ترکیب توالی لوگو را یاد خواهید گرفت.  

چگونگی ایجاد عمق واقعی از تاثیر میدان

در این آموزش شما به سادگی ایجاد عمق در field effect را یاد می گیرید. با استفاده از particle emitters و تگ فیزیکی شما می توانید نتایج دلخواه را ببینید و سپس به فتوشاپ ببرید و آنها را شارپ کنید.  

لینک اصلی

  • ایران متلب
  • ۰
  • ۰
سرفصل های این آموزش : انتقال حرارت در سیستم های بیولوژیکی انتقال حرارت در بافت پرفیوژن تعیین ضریب انتقال حرارت انتقال جرم در سیستم های بیولوژیکی سیستم بافر بی کربنات حمل و نقل دی اکسید کربن در خون حمل و نقل اکسیژن در خون پرفیوژن راکتور تامین اکسیژن برای تومور های توپ کروگ مدل سیلندر اکسیژن در بافت حمل و نقل بار در سیستم های بیولوژیکی هوچکین-هاکسلی مدل نورون هوچکین-هاکسلی پارامترهای راهگاهی مدل هاجکین و هاکسلی با گام تابع ورودی پتانسیل عمل  

لینک دانلود

  • ایران متلب
  • ۰
  • ۰
مقدمه ای بر سیستم های کنترل طراحی ابزار برای کنترل طراحی نام گذاری و فایل کنوانسیون نمایندگی سیستم در نرم افزار MATLAB مدلهای حالت فضا نمایندگی انتقال تابع مدل گسسته در زمان بلوک نمودارها و SIMULINK تبدیل بین نمایندگی پاسخ سیستم برآورد پاسخ از سیستم برآورد پاسخ از قطبها و صفرها برآورد سیستم از پاسخ ابزار طراحی معیارهای طراحی ابزار طراحی نمونه طراحی کنترل درجه یک از یک اشاره گر انعطاف پذیر کنترل PID یک سیستم تعلیق مغناطیسی کنترل سرب یک پاندول معکوس کنترل یک چرخ طیار مغناطیسی معلق Control Systems MATLAB code download train farsi persian

لینک دانلود

  • ایران متلب
  • ۰
  • ۰
دینامیک و ارتعاشات دینامیک ذرات و اجسام صلب آونگ مسطح حرکات مداری ممان اصلی اینرسی پایداری Rigid Body سیستم ارتعاشی با یک درجه آزادی سیستم های خطی: نوسانات آزاد سیستم های خطی: نوسانات اجباری سیستم های غیر خطی: نوسانات آزاد سیستم های غیر خطی: نوسانات اجباری سیستم های با چند درجه متعدد از آزادی سیستم نوسانات آزاد و اجباری با دو درجه آزادی فرکانس های طبیعی و مدهای اشکال ارتعاشات آزاد و اجباری از پرتو اویلر-برنولی و تیموشنکو فرکانس های طبیعی از پرتو اویلر-برنولی و تیموشنکو نوسانات اجباری از پرتو اویلر-برنولی  

لینک دانلود

  • ایران متلب
  • ۰
  • ۰

آپاچی هدوپ چیست؟

هدوپ و داده های بزرگ

نام تجاری آپاچی هدوپ در پی نیاز به پردازش حجم عظیم داده های بزرگ متولد شد. دنیای وب، روزانه در حال تولید اطلاعات بیشتر و بیشتر بود به صورتی که شاخص گذاری بر روی بیش از یک میلیون صفحه محتوا، کار بسیار دشواری بود. برای مقابله، گوگل یک سبک جدید از پردازش داده ها که با نام MapReduce شناخته می شود را اختراع کرد. یک سال بعد، گوگل اوراق سفیدی[1] در توصیف فریم ورک MapReduce منتشر کرد. داگ کاتینگ و مایک کفرلا[2]، با الهام از این اوراق، هدوپ را برای اعمال این مفاهیم بر روی یک نرم افزار فریم ورک متن باز برای حمایت از توزیع در پروژه موتور جستجوی Nutch خلق کردند. با داشتن ریشه اصلی، هدوپ با یک زیرساخت ذخیره سازی یکبار نوشتنی[3] ساده، طراحی شد.

هدوپ در نمایه سازی وب، بسیار فراتر از آغاز خود حرکت کرده و هم اکنون در بسیاری از صنایع و برای طیف گسترده ای از فعالیت هایی که یک قالب مشترک از داده هایی با تنوع، حجم و سرعت های گوناگون را به اشتراک می گذارند، به کار می رود- چه داده های ساخت یافته و چه داده های غیر ساخت یافته. این برنامه در حال حاضر در بسیاری از صنعت ها از قبیل صنعت های اقتصادی، رسانه و سرگرمی، دولتی، بهداشت و درمان، خدمات اطلاعات، خرده فروشی و دیگر صنعت هایی که با داده های بزرگ سر و کار دارند مورد استفاده قرار می گیرد اما هنوز هم محدودیت های زیرساخت های زخیره سازی اصلی، پابرجا هستند. هدوپ به طرز رو به افزایشی در حال تبدیل شدن به یک فریم ورک go to [4] برای اطلاعات فشرده در مقیاس بزرگ، می باشد. هدوپ برای پردازش حجم عظیم داده ها، از ترابایت گرفته تا پتابایت و فراتر از آن ساخته شده است. در این حجم داده، بعید است که بتوان آن را در تنها یک هارد کامپیوتر جای داد، و به همین ترتیب احتمال بسیار کمتری وجود دارد که بتوان آن را بر روی حافظه قرار داد.[5] زیبایی هدوپ در این است که این برنامه، طراحی شده تا بتواند حجم عظیمی از داده ها را با استفاده از اتصال چندین کامپیوتر ساده در کنار هم به صورت موازی، به صورت موثر پردازش کند. هدوپ با استفاده از مدل MapReduce، می تواند یک جستجو در یک مجموعه داده را گرفته، آن را تفکیک کرده و به صورت موازی بر روی گره های متعدد اجرا کند. توزیع محاسبه، مشکل داشتن داده هایی که بسیار بزرگ تر از آن هستند که بر روی تنها یک ماشین جای گیرند را حل می کند.

نرم افزار هدوپ

پشته نرم افزار هدوپ، یک اقتصاد کاملا جدید را برای ذخیره سازی و پردازش داده ها در مقیاس[6]، معرفی می کند. این برنامه به سازمان ها اجازه می دهد تا انعطاف پذیری بی نظیری در توانایی خود برای استفاده حداکثری از تمامی اشکال و اندازه ها، برای کشف بینش و دیدگاه در مورد کسب و کار خود، داشته باشند. کاربران حالا می توانند از کل سخت افزار و پشته نرم افزار، شامل سیستم عامل و نرم افزار هدوپ، در کل خوشه[7] بهره گرفته، و آن را از طریق یک واسط مدیریتی، کنترل کنند. آپاچی هدوپ یک فایل سیستمی توزیع شده را نیز شامل می شود که داده های ورودی را تفکیک کرده و بر روی گره های محاسباتی ذخیره می کند. این کار به داده ها اجازه می دهد تا به صورت موازی و با استفاده از تمامی دستگاه های درون آن خوشه مورد پردازش قرار گیرند.

فایل سیستمی توزیع شده هدوپ [8] به زبان جاوا نوشته شده و بر روی سیستم عامل های گوناگونی اجرا می شود. هدوپ از ابتدا برای همساز کردن پیاده سازی های چندگانه فایل های سیستمی طراحی شد که در این جا برخی از آنان موجود هستند. فایل های سیستمی HDFS و S3 احتمالا از پر استفاده ترین این فایل ها بوده، اما بسیاری دیگر از قبیل فایل های سیستمی MapReduce نیز وجود دارند.

در حالی که گوگل MapReduce را اختراع کرده و نسخه داخلی آن را در اختیار دارد، هدوپ نیز باقی مانده دنیای فریم ورک MapReduce را تشکیل می دهد. پس این همان برنامه ای خواهد بود که ما از آن استفاده خواهیم کرد. بیشتر دوره های هدوپ با جاوا آغاز می شوند، اما متاسفانه 90 درصد کد را فایل های بیهوده ای تشکیل می دهند که ما را از مسیر اصلی دور می کنند. چیزی که قصد دارم در این کتاب به تقویت آن بپردازم، پایه های اصلی هستند، پس ما تنها زمانی به صمت جاوا می رویم که واقعا ضروری باشد.

هدوپ چیست؟

بسیاری از مردم، هدوپ را به عنوان مترادفی برای MapReduce می پندارند. این کار نوعی استفاده در هم ریخته از تکنولوژی است. هدوپ در واقع یک اکوسیستم کامل از فن آوری هایی است که فریم ورک MapReduce را به کار می گیرند. برای مثال، فایل سیستمی هدوپ(HDFS) یک فایل سیستمی است که از تکرار سازی و شاردینگ[9] برای کمینه کردن احتمال شکست استفاده می کند.

در هنگام کار با داده های بزرگ، از آنجایی که ماشین های بسیاری درگیر هستند، احتمال شکست بالاست. این مساله به پارادوکسی به نام "مشکل تولد" مربوط می شود ( این مساله واقعا یک پارادوکس نیست، بلکه مستقیما از ریاضیات پیروی می کند). یکی از نتایج "مشکل تولد"، این است که اگر شما 23 قفرد را در یک اتاق داشته باشید، احتمال این که روز تولد 2 نفر از آن ها مشترک باشد، 50 درصد است. حال اگر این تعداد به 57 نفر برسد، این احتمال، 99 درصد می شود!.

این مساله بر خلاف این واقعیت است که احتمال این که روز تولد دو نفر مشترک باشد،  است.

لینک دانلود

[1]  a white paper- به اسنادی گفته می شود که یک شرکت ارتقا یا نشان دادن وِژگی های یک محصول یا راه حی منتشر می کند. [2] Doug Cutting and Mike Cafarella [3] a simple write-once storage infrastructure [4] دستوری در بسیاری از زبان های برنامه نویسی برای کنترل یک خط دستور دیگر [5] هرچند در متن اصلی مشخص نکرده چه حافظه ای، اما با توجه به استفاده از واژه MEMORY، احتمالا منظور همان حافظه اصلی یا رم می باشد. [6] در متن فقط از واژه  at scale لستفاده شده است. [7] Cluster- رایانش خوشه ای [8] The Apache Hadoop Distributed File System [9] نوعی پارتیشن بندی پایگاه داده که فایل های بسیار بزرگ را به فایل های کوچکتر، سریع تر و  قابلیت مدیریت ساده تر تقسیم می کند.
  • ایران متلب