هر دولوپری به دنبال زبانهای برنامهنویسی سریعتر است اما نوشتن نرمافزارهای سریع و بهینه به ویژه زمانی که با زبانهای برنامهنویسی قدیمی کار میکنید، تیری در تاریکی است. در تلاش برای رسیدن به این سرعت و چابکی، برخی سازمانها و شرکتهای فناوری در تلاش برای ابداع روشها و رویکردهای جدیدی هستند. در حوزهٔ Big Data (بیگ دیتا یا کلان داده) و به امید سرعت بخشیدن در این حوزه، شرکتهای انگشت شماری در Apache Hadoop تنوع ایجاد کرده و توزیعهای مختلفی را منتشر کردهاند اما آنچه در این مقاله قصد داریم مورد بررسی قرار دهیم، یک زبان برنامهنویسی تخصصی است تحت عنوان Milk که به منظور مدیریت به مراتب سریعتر کلان داده به بازار عرضه شده است.
Milk یک زبان توسعه یافته توسط آزمایشگاه CSAIL در دانشگاه علوم رایانه و هوش مصنوعی MIT برای تحقق سرعت بخشیدن به دادههای خُرد از طریق کارآمدتر کردن مدیریت حافظه است. الگوریتمهای نوشته در Milk سرعت پردازش را برای توسعهدهندگانی که باید با نقاط اطلاعاتی پراکنده در سراسر مجموعهٔ کلان دادهها دست و پنجه نرم کنند، چهار برابر سریعتر از زبانهای موجود میکند. Vladimir kiriansky، یکی از فعالان کامیونیتی Milk، در بیانیهای در سایت خبری دانشگاه MIT نوشت:
یافتن دادهای خاص از میان یک مجموعهٔ بیگ دیتا، فرایندی ناکارآمد و کاری دشوار است. برای روشنتر شدن این مسئله، مثالی از زندگی روزمره میزنم؛ فرض کنید هر بار نیاز به شیر داشته باشید، ابتدا در یخچال را باز کرده، شیشهٔ شیر را باز میکنید و کمی از آن را برمیدارید و بعد درب شیشه را میبندید و آن را دوباره در یخچال قرار میدهید. کاری تکراری و طاقتفرسا!
به جای ایجاد درخواستهای مکرر برای بازیابی بلوکهای بزرگ داده، هستهٔ زبان میلک تنها دادهای را درخواست میکند که میداند نرمافزار به آن نیاز دارد (قبل از اینکه درخواستی به هسته فرستاده شود، این زبان لیستی از اطلاعات آدرس آیتمها برای خود ایجاد میکند.) که در مثال بالا، این همانند فقط یک بار رفتن به سمت یخچال برای شیشهٔ شیر است!
یکی دیگر از مزایای زبان برنامهنویسی میلک این است که توسعهدهندگان میتوانند در اطراف دستورالعمل پردازش دادهٔ مد نظر، چند خطی کد بزنند و کامپایلر چگونگی و کارآمدترین راه ممکن را برای مدیریت حافظه تعیین خواهد کرد.
Milk هنوز در اوایل راه توسعه است اما امیدوارم که این زبان به زودی در GitHub و ریپازیتوریهای دیگر ظاهر شود چرا که در سالهای آتی، روز به روز اهمیت کلان دادهها در فضای آیتی بیشتر شده و به طور حتم نیاز به پلتفرمهایی بهینهتر و سریعتر برای پردازش دادهها خواهیم داشت.