19 هائڊرا سر. پروگرام جو شاندار جائزو

11-12 جولاءِ تي سينٽ پيٽرسبرگ ۾ ڪانفرنس ٿيندي ھندومتوازي ۽ ورهايل نظام جي ترقي لاء وقف. هائڊرا جي ڳالهه اها آهي ته اها اعليٰ سائنسدانن (جيڪي عام طور تي رڳو پرڏيهي سائنسي ڪانفرنسن ۾ مليا آهن) ۽ مشهور مشق ڪندڙ انجنيئرن کي هڪ وڏي پروگرام ۾ گڏ ڪري ٿو سائنس ۽ مشق جي چوڪ تي.

Hydra اسان جي سڀ کان اهم ڪانفرنس مان هڪ آهي تازن سالن ۾. ان کان اڳ ڏاڍي سنجيده تياري، مقررين جي چونڊ ۽ رپورٽن تي عمل ڪيو ويو. ان بابت گذريل هفتي habrointerview ٻاهر آيو JUG.ru گروپ جي ڊائريڪٽر سان گڏ، Alexey Fedorov (23 ڊيريو).

Мы اڳ ۾ ئي ٻڌايو اٽڪل ٽي اهم شرڪت ڪندڙ، ورهايل نظام جي نظريي جا باني - ليسلي لامپورٽ، موريس هيرلي ۽ مائيڪل سکاٽ. اهو سڄو پروگرام بابت وڌيڪ ڳالهائڻ جو وقت آهي!

19 هائڊرا سر. پروگرام جو شاندار جائزو

حرڪت

جيڪڏهن توهان پروگرامنگ ڪري رهيا آهيو، پوء هڪ طريقو يا ٻيو توهان ملائي ٿريڊنگ ۽ ورهايل ڪمپيوٽنگ سان معاملو ڪري رهيا آهيو. لاڳاپيل شعبن ۾ ماهر انهن سان سڌو سنئون ڪم ڪن ٿا، پر واضح طور تي، تقسيم اسان کي هر جڳهه کان نظر اچي ٿو: ڪنهن به ملٽي-ڪور ڪمپيوٽر يا ورهايل خدمت ۾، اتي ڪجهه آهي جيڪو متوازي حساب سان انجام ڏئي ٿو.

ڪيتريون ئي ڪانفرنسون آهن جيڪي ايپليڪيشن پروگرامنگ جي ڪجهه حصن کي ڍڪينديون آهن. اسپيڪٽرم جي ٻئي پاسي، اسان وٽ خاص سائنسي اسڪول آهن، ليڪچر جي شڪل ۾، پيچيده نظريي جي وڏي مقدار کي ظاهر ڪن ٿا. مثال طور، سينٽ پيٽرسبرگ ۾ هائڊرا سان گڏ، SPTDC اسڪول. هائيڊرا ڪانفرنس ۾، اسان ڪوشش ڪئي ته سخت مشق، ۽ سائنس، ۽ هر شيءِ کي گڏ ڪرڻ جي، جيڪا انهن جي چوڪ تي آهي.

هن جي باري ۾ سوچيو: اسان هڪ شاندار وقت ۾ رهون ٿا جتي توهان سائنس ۽ انجنيئرنگ جي شعبي جي باني سان ملن ٿا جيڪي اسان جيئري ۾ مصروف آهيون. فزڪس دان نيوٽن يا آئن اسٽائن سان نه ملندا- ٽرين هلي وئي آهي. پر اهي جيڪي ورهايل نظام جي نظريي جا بنياد ٺاهيا، مشهور پروگرامنگ ٻولين کي ايجاد ڪيو، ۽ پهريون ڀيرو اهو سڀ ڪجهه ڪم ڪندڙ پروٽوٽائپ ۾ شامل ڪيو، اڃا تائين اسان جي اڳيان رهن ٿا. انهن ماڻهن پنهنجون نوڪريون اڌ رستي تي نه ڇڏيون آهن، هن وقت دنيا جي مشهور يونيورسٽين ۽ ڪمپنين ۾ حقيقي دنيا جا ڪم ڪري رهيا آهن، ۽ اڄ جي علم ۽ تجربي جو سڀ کان وڏو ذريعو آهن.

ٻئي طرف، انهن سان ملڻ جو موقعو عام طور تي خالص نظرياتي رهي ٿو: اسان مان ڪجھ روچسٽر جي ڪجهه يونيورسٽين ۾ عوامي واقعن جي مسلسل نگراني ڪري سگھن ٿا ته جيئن پوءِ آمريڪا وڃڻ ۽ واپس مائيڪل سکاٽ جي ليڪچر ڏانهن. عام طور تي هائڊرا جي سڀني ميمبرن جو دورو ڪرڻ هڪ ننڍڙو نصيب هوندو، خرچ ٿيل وقت جي ابتڙ کان سواء (جيتوڻيڪ اهو هڪ دلچسپ جستجو وانگر آواز آهي).

ٻئي طرف، اسان وٽ ڪيترائي اعلي انجنيئر آهن جيڪي هن وقت ورهايل سسٽم جي حقيقي مسئلن تي ڪم ڪري رهيا آهن، ۽ انهن کي ضرور ٻڌائڻ لاء ڪجهه آهي. پر هتي مسئلو آهي - اهي работают۽ انهن جو وقت قيمتي آهي. ها، جيڪڏهن توهان هڪ ملازم آهيو Microsoft، گوگل يا JetBrains، هڪ اندروني واقعي ۾ هڪ مشهور ڳالهائيندڙن مان هڪ ملڻ جو امڪان ڊرامائي طور تي وڌي ٿو، پر عام طور تي - نه، اهو هر روز نٿو ٿئي.

اهڙيءَ طرح، هائيڊرا ڪانفرنس هڪ اهم ڪم پورو ڪري ٿي، جيڪو اسان مان گهڻا پاڻ نه ٿا ڪري سگهن - هڪ هنڌ ۽ هڪ ئي وقت، انهن ماڻهن کي گڏ ڪري ٿو جن جا خيال يا گفتگو جن سان توهان جي زندگي بدلجي سگهي ٿي. مان سمجهان ٿو ته هر ڪنهن کي ورهايل نظام جي ضرورت ناهي، ڪجهه پيچيده بنيادي شيون. توھان PHP ۾ CRUDs پروگرام ڪري سگھوٿا پنھنجي باقي زندگي ۽ مڪمل طور تي خوش رھو. پر ڪير ان جي ضرورت آهي - اهو توهان جو موقعو آهي.

هابري تي هائڊرا ڪانفرنس جي پهرين اعلان کان ڪافي وقت گذري چڪو آهي. هن عرصي دوران، تمام گهڻو ڪم ڪيو ويو آهي - ۽ هاڻي، اسان وٽ تقريبن سڀني رپورٽن جي هڪ فهرست آهي. ڪو به سست اڪيلو ڌاڳو وارو الگورتھم نه، صرف خالص ورهايل هارڊڪور! اچو ته عام لفظن سان ختم ڪريون، ۽ ڏسو ته اسان وٽ هاڻي ڇا آهي.

ڪينيٽس

ڪانفرنس جا ڏينهن شروع ۽ ختم ڪن ٿا. عام طور تي افتتاحي مهم جو مقصد ڪانفرنس جي عام روح ۽ هدايت کي مقرر ڪرڻ آهي. بند ٿيڻ وارو اهم نوٽ هڪ لڪير ٺاهي ٿو ۽ وضاحت ڪري ٿو ته اسان ڪانفرنس جي ڏينهن دوران حاصل ڪيل علم ۽ صلاحيتن سان ڪيئن رهي سگهون ٿا. شروعات ۽ پڇاڙي: ڇا ياد ڪيو وڃي ٿو بهترين، ۽ عام طور تي، وڌايل قدر آهي.

ڪلف ڪلڪ- H2O ورهايو K/V الگورتھم

19 هائڊرا سر. پروگرام جو شاندار جائزو ڪلف جاوا جي دنيا ۾ هڪ ڏند ڪٿا آهي. 90ع واري ڏهاڪي جي آخر ۾، پي ايڇ ڊي جي ٿيسز لاءِ، هن نالي سان هڪ مقالو لکيو "تجزيو گڏ ڪرڻ، گڏ ڪرڻ جي اصلاح"، جيڪو ڪجهه وقت کان پوءِ HotSpot JVM سرور ڪمپيلر جو بنياد بڻجي ويو. ٻن سالن بعد، هو اڳ ۾ ئي سن مائڪرو سسٽم تي JVM تي ڪم ڪري رهيو هو ۽ سڄي دنيا کي ڏيکاريو ويو ته جي آء ٽي جي وجود جو حق آهي. اها سڄي ڪهاڻي آهي ته جاوا هڪ تيز ترين جديد رن ٽائمز مان هڪ آهي سمارٽ ۽ تيز ترين اصلاحن سان گڏ ڪلف ڪلڪ کان. شروعات ۾، اهو سمجهيو ويندو هو ته جيڪڏهن ڪا شيء هڪ جامد ڪمپلر وٽ موجود آهي، ته توهان ان کي جٽ ڪرڻ جي ڪوشش به نٿا ڪري سگهو. ڪلف ۽ ٽيم جي محنت جي مهرباني، سڀ نيون ٻوليون ٺهڻ شروع ٿيون، جي آءِ ٽي جي ترتيب جي خيال سان ڊفالٽ. يقينا، اهو هڪ شخص جو ڪم نه هو، پر ڪلف ان ۾ هڪ اهم ڪردار ادا ڪيو.

افتتاحي ڪني نوٽ ۾، ڪلف پنهنجي ٻين ڪمن بابت ڳالهائيندو - H20، صنعتي ايپليڪيشنن لاءِ ورهايل ۽ اسپيبلبل مشين لرننگ لاءِ هڪ ان-ميموري پليٽ فارم. وڌيڪ واضح طور تي، ان جي اندر اهم-قدر جوڑوں جي ورهايل اسٽوريج بابت. هي هڪ تمام تيز اسٽوريج آهي جنهن ۾ تمام گهڻيون دلچسپ ملڪيتون آهن (صحيح فهرست ڏنل آهي وضاحت) جيڪي وڏي ڊيٽا جي اسٽريمنگ جي رياضي ۾ ساڳئي حل جي استعمال جي اجازت ڏين ٿا.

هڪ ٻي ڳالهه جيڪا ڪلف ڏيندو Azul هارڊويئر ٽرانزيڪشنل ياداشت جو تجربو. سندس سوانح عمري جو ٻيو حصو - ڏهن سالن Azul ۾ ڪم ڪري ٿو، جتي هن Azul هارڊويئر ۽ ٽيڪنالاجي اسٽيڪ ۾ ڪيتريون ئي شيون اپڊيٽ ڪيون ۽ بهتر ڪيون: JIT مرتب ڪندڙ، رن ٽائم، ٿريڊ ماڊل، ايرر هينڊلنگ، اسٽيڪ مينيپوليشن، هارڊويئر انٽرپرٽس، ڪلاس لوڊ ڪرڻ، وغيره وغيره. خيال.

سڀ کان دلچسپ حصو تڏهن شروع ٿيو جڏهن هنن وڏي ڪاروبار لاءِ هارڊويئر ٺاهيو - جاوا هلائڻ لاءِ هڪ سپر ڪمپيوٽر. اها ڪافي نت نئين شيءِ هئي، خاص طور تي جاوا لاءِ تيار ڪئي وئي، جنهن جون خاص گهرجون آهن - پڙهڻ لاءِ ميموري رڪاوٽون گهٽ-روڪ واري ڪچري کي گڏ ڪرڻ لاءِ، حدن جي چڪاس سان گڏ صفون، ورچوئل ڪالون... بهترين ٽيڪنالاجي مان هڪ آهي هارڊويئر ٽرانزيڪشنل ميموري. ڪنهن به 1 ڪور جو پورو L864 ٽرانزيڪشنل لکڻ ۾ حصو وٺي سگھي ٿو، جيڪو خاص طور تي جاوا ۾ لاڪ سان ڪم ڪرڻ لاءِ ضروري آهي (مطابقت ٿيل بلاڪ متوازي طور تي ڪم ڪري سگهن ٿا، جيستائين ڪو حقيقي ميموري تڪرار نه هجي). پر خوبصورت خيال سخت حقيقت جي خلاف ڪري پيو - ۽ هن رپورٽ ۾ ڪلف توهان کي ٻڌائيندو ته ڇو HTM ۽ STM ملٽي ٿريڊ ڪمپيوٽنگ جي عملي ضرورتن لاءِ مناسب نه آهن.

مائيڪل سکاٽ- ٻٽي ڊيٽا جي جوڙجڪ

19 هائڊرا سر. پروگرام جو شاندار جائزو مائيڪل سکاٽ - روچسٽر يونيورسٽي ۾ ڪمپيوٽر سائنس جو پروفيسر، جنهن سان قسمت کيس ڳنڍيو اڳ ۾ ئي 34 سالن تائين، ۽ پنهنجي اباڻي يونيورسٽي وڪوسنسن-ميڊيسن ۾ ، پنجن سالن تائين ڊين هو. هو متوازي ۽ تقسيم ٿيل پروگرامنگ ۽ ٻولي ڊيزائن جي شعبي ۾ تحقيق ۾ مصروف آهي ۽ شاگردن کي اهو سيکاريندو آهي.

مائيڪل کي سڄي دنيا ڄاڻي ٿي درسي ڪتاب جي مهرباني "پروگرامنگ ٻولي عمليات"، جنهن جو تازو ايڊيشن نسبتا تازو شايع ڪيو ويو - 2015 ۾. هن جي نوڪري "شيئر ٿيل ميموري ملٽي پروسيسرز تي اسپيبلبل هم وقت سازي لاءِ الگورتھم" حاصل ڪيو Dijkstra انعام ورهايل ڪمپيوٽنگ جي ميدان ۾ سڀ کان وڌيڪ مشهور ۽ کليل ڪوڙ يونيورسٽي آف روچسٽر آن لائين لائبريري ۾. توهان شايد هن کي ڄاڻو ٿا ته ساڳئي مائيڪل-اسڪاٽ الگورتھم جي ليکڪ طور "سادو، تيز، ۽ عملي غير بلاڪنگ ۽ بلاڪنگ سمورو قطار الگورتھم".

جيئن ته جاوا جي دنيا لاءِ، هي هڪ خاص ڪيس آهي: ڊگ لي سان گڏ، هن ترقي ڪئي اهي غير بلاڪ ڪرڻ وارا الگورتھم ۽ هم وقت ساز قطارون جيڪي جاوا لائبريريون هلن ٿيون. اھو اھو آھي جيڪو "ڊبل ڊيٽا ڍانچي" جي ڪني نوٽ بابت ھوندو - جاوا SE 6 ۾ انھن اڏاوتن جو تعارف اسان کي 10 ڀيرا ڪارڪردگي بهتر ڪرڻ جي اجازت ڏني. java.util.concurrent.ThreadPoolExecutor. جيڪڏهن توهان اڳ ۾ دلچسپي وٺندا آهيو ته اهي "ڊبل ڊيٽا ڍانچي" ڇا آهن، پوء اتي آهي لاڳاپيل ڪم.

موريس هيرلي- بلاڪچين ۽ ورهايل ڪمپيوٽنگ جو مستقبل

19 هائڊرا سر. پروگرام جو شاندار جائزو موريس هيرلي - ٻن Dijkstra انعامن جو فاتح. پهرين ڪم لاء آهي "انتظار-مفت هم وقت سازي" (برائون يونيورسٽي)، ۽ ٻيو، تازو - "ٽرانزيڪشنل ميموري: آرڪيٽيڪچرل سپورٽ لاءِ لاڪ فري ڊيٽا اسٽرڪچرز" (ورجينيا ٽيڪن يونيورسٽي). ڊجڪٽرا انعام انهن ڪمن لاءِ ڏنو ويندو آهي جن جي اهميت ۽ اثر گهٽ ۾ گهٽ ڏهن سالن کان قابل ذڪر آهي، ۽ اهو واضح آهي ته موريس هن فيلڊ ۾ سڀ کان مشهور ماهرن مان هڪ آهي. هو هن وقت براون يونيورسٽيءَ ۾ پروفيسر آهي ۽ هن وٽ پيراگراف ڊگريون ڪاميابيون آهن.

هن اختتامي اهم نوٽ ۾، موريس بلاڪچين ورهايل سسٽم جي نظريي ۽ عمل جي باري ۾ ڳالهائيندو ورهايل ڪمپيوٽنگ جي ڪلاسن جي نقطي نظر کان ۽ ڪيئن اهو ڪيترن ئي لاڳاپيل مسئلن کي آسان بڻائي ٿو. هيءَ رپورٽ خاص طور تي ڪانفرنس جي موضوع تي آهي - نه ته مائننگ هائپ جي باري ۾، بلڪه ان جي باري ۾ ته ڪيئن اسان جي ڄاڻ کي حيرت انگيز طريقي سان ۽ مناسب طريقي سان استعمال ڪري سگهجي ٿو مختلف ڪمن جي سلسلي ۾.

جولاءِ 2017 ۾، موريس اڳ ۾ ئي روس ۾ SPTDC اسڪول آيو، JUG.ru ميٽنگ ۾ حصو ورتو، ۽ رڪارڊنگ يوٽيوب تي ڏسي سگھجي ٿو:

مکيه پروگرام

پوءِ پروگرام ۾ شامل رپورٽن جو مختصر جائزو ورتو ويندو. ڪجهه رپورٽون هتي تفصيل سان بيان ڪيون ويون آهن، ڪجهه وڌيڪ مختصر. ڊگھيون وضاحتون خاص طور تي انگريزي-ٻولي جي رپورٽن ڏانهن ويا جن کي سائنسي مقالا، وڪيپيڊيا تي اصطلاحن وغيره جي لنڪ جي ضرورت آهي. هڪ مڪمل فهرست ٿي سگهي ٿو ڪانفرنس جي ويب سائيٽ تي ڏسو. سائيٽ تي لسٽ کي اپڊيٽ ڪيو ويندو ۽ اضافي ڪيو ويندو.

ليسلي لامپورٽ- سوال ۽ الف

19 هائڊرا سر. پروگرام جو شاندار جائزو ليسلي لامپورٽ ورهايل ڪمپيوٽنگ جو هڪ اهم ليکڪ آهي. لاٽيڪس "Lamport TeX" جو مطلب آهي. اھو اھو ھو جنھن پھريون ڀيرو، 1979 ۾، تصور کي متعارف ڪرايو مسلسل تسلسل، ۽ سندس مضمون "هڪ ملٽي پروسيسر ڪمپيوٽر ڪيئن ٺاهيو جيڪو صحيح طريقي سان ملٽي پروسيس پروگرامن کي انجام ڏئي" Dijkstra انعام حاصل ڪيو.

فارميٽ جي لحاظ کان هي پروگرام جو سڀ کان وڌيڪ غير معمولي حصو آهي، ڇاڪاڻ ته اهو پڻ هڪ رپورٽ نه آهي، پر هڪ سوال ۽ جواب سيشن آهي. جڏهن سامعين جو هڪ اهم حصو اڳ ۾ ئي واقف آهي (يا واقف ٿي سگهي ٿو) سڀني قسمن جي ڪمن جي بنياد تي لامپورٽ جي نظريي جي بنياد تي، هن جي پنهنجي مضمونن ۽ رپورٽن تي، اهو تمام ضروري آهي ته دستياب وقت سڌو رابطي تي خرچ ڪرڻ.

خيال سادو آهي - توهان يوٽيوب تي ٻه رپورٽون ڏسو: "پروگرامنگ ڪوڊنگ کان وڌيڪ هجڻ گهرجي" и "جيڪڏهن توهان هڪ پروگرام نه لکي رهيا آهيو، پروگرامنگ ٻولي استعمال نه ڪريو" ۽ گهٽ ۾ گهٽ هڪ سوال تيار ڪريو، ۽ ليسلي جواب.

انهن ٻن وڊيوز مان پهرين اسان وٽ موجود آهي بدمعاشي ۾ تبديل ٿي ويو. جيڪڏهن توهان وٽ وڊيو ڏسڻ لاءِ هڪ ڪلاڪ جو وقت نه آهي، ته توهان جلدي پڙهي سگهو ٿا اهو سڀ ٽيڪسٽ فارم ۾.

نوٽ: يوٽيوب تي Leslie Lamport سان گڏ ڪيترائي وڌيڪ وڊيوز آهن. مثال طور، اتي هڪ شاندار آهي TLA + ڪورس. هن سڄي ڪورس جو هڪ آف لائن نسخو موجود آهي تي ليکڪ جو گهر صفحو، ۽ يوٽيوب تي هن ان کي موبائيل ڊوائيسز تي وڌيڪ آسان ڏسڻ لاءِ لڳايو.

مارٽن ڪلپمن - ورهايل تعاون لاءِ صارف جي ڊوائيسز تي ڊيٽا کي هم وقت سازي ڪرڻ

19 هائڊرا سر. پروگرام جو شاندار جائزو مارٽن ڪلپمين ڪيمبرج يونيورسٽي ۾ هڪ محقق آهي جيڪو CRDT ۽ رسمي الگورتھم جي تصديق تي ڪم ڪري رهيو آهي. مارٽن جو ڪتاب "ڊيزائننگ ڊيٽا-گھڻي ايپليڪيشن"2017 ۾ شايع ٿيل، تمام ڪامياب ثابت ٿيو ۽ ڊيٽا اسٽوريج ۽ پروسيسنگ جي شعبي ۾ بيسٽ سيلر لسٽن کي ماريو. کیون سکاٽ، Microsoft تي CTO هڪ ڀيرو چيو: ”هي ڪتاب ڊزائن انجنيئرن لاءِ لازمي هجڻ گهرجي. هي هڪ نادر وسيلو آهي جيڪو نظريو ۽ عمل کي پلائي ٿو ڊولپرز کي ڊزائين ڪرڻ ۽ ان تي عمل ڪرڻ ۾ مدد ڏيڻ لاءِ ڊيٽا انفراسٽرڪچر ۽ سسٽم کي سمارٽ. ڪافڪا ۽ سي ٽي او ڪنفلوئنٽ جي خالق جيئي ڪرپس به ڪجهه اهڙو ئي چيو هو.

علمي تحقيق ۾ وڃڻ کان اڳ، مارٽن صنعت ۾ ڪم ڪيو ۽ ٻه ڪامياب شروعاتون قائم ڪيون:

  • لاڳاپيل، توهان جي اي ميل رابطن جي سماجي پروفائل کي ظاهر ڪرڻ لاء وقف، جيڪو LinkedIn 2012 ۾ خريد ڪيو؛
  • Go Test It، هڪ گھڻن برائوزر خودڪار ويب سائيٽ چيڪ ڪندڙ جيڪو RedGate 2009 ۾ خريد ڪيو.

عام طور تي، جيتوڻيڪ مارٽن اسان جي ڪنٽينٽرن کان گهٽ سڃاتل آهي، هو اڳ ۾ ئي ورهايل ڪمپيوٽنگ ۽ صنعت جي ترقي ۾ ڪجهه حصو ڏيڻ جي قابل ٿي چڪو آهي.

هن گفتگو ۾، مارٽن پنهنجي علمي تحقيق جي ويجهو هڪ موضوع بابت ڳالهائيندو. گوگل ڊاڪس ۾ ۽ دستاويزن جي گڏيل تصنيف لاءِ ساڳي سوفا، ”ڪو-اٿورنگ“ جو مطلب آهي نقل ڪرڻ وارو ڪم: هر صارف وٽ هڪ گڏيل دستاويز جو پنهنجو نقل هوندو آهي، جنهن کي هو پوءِ تبديل ڪندا آهن، ۽ سڀئي تبديليون نيٽ ورڪ تي موڪليا ويندا آهن باقي. شرڪت ڪندڙن جو. دستاويزن ۾ آف لائن تبديلين جي نتيجي ۾ عارضي دستاويز جي غير مطابقت ٻين شرڪت ڪندڙن جي حوالي سان، ۽ ٻيهر هم وقت سازي جي ضرورت آهي تڪرار کي سنڀالڻ. بس ان لاءِ آهن تڪرار کان آزاد نقل ٿيل ڊيٽا جا قسم (CRDT)، حقيقت ۾، هڪ بلڪل نئين شيء آهي، جنهن جو بنياد صرف 2011 ۾ ٺاهيو ويو هو. هي بحث بحث ڪري ٿو ته ان وقت کان پوءِ CRDT دنيا ۾ ڇا ٿيو آهي، تازيون ترقيون ڪهڙيون آهن، عام طور تي مقامي-پهريون ايپليڪيشنون ٺاهڻ جي طريقي تي بحث ڪري ٿي، ۽ اوپن سورس لائبريري جو استعمال. خودڪار ملائڻ خاص طور تي.

ايندڙ هفتي اسان شايع ڪنداسين مارٽن سان گڏ هڪ وڏو انٽرويو Habré تي، اهو دلچسپ ٿيندو.

پيڊرو راماليٽي - انتظار کان آزاد ڊيٽا جي جوڙجڪ ۽ انتظار کان آزاد ٽرانزيڪشن

19 هائڊرا سر. پروگرام جو شاندار جائزو Pedro Cisco تي ڪم ڪري ٿو ۽ گذريل ڏهن سالن کان متوازي الگورتھم ٺاهي رهيو آهي، جنهن ۾ هم وقت سازي ميڪانيزم، لاڪ فري ۽ انتظار کان آزاد ڊيٽا ڍانچو، ۽ هر شي جيڪا توهان هن موضوع تي سوچي سگهو ٿا. هن جي موجوده تحقيق ۽ انجنيئرنگ مفادن تي مرڪوز آهن يونيورسل تعميرات، سافٽ ويئر ٽرانزيڪشنل ميموري، پرسسٽنٽ ميموري، ۽ ساڳي ٽيڪنالاجيز کي درست، اسپيبلبل، ۽ غلطي برداشت ڪندڙ ايپليڪيشنن کي فعال ڪرڻ لاءِ. ۽ هو هڪ بلاگ جو ليکڪ پڻ آهي جيڪو تنگ حلقن ۾ مشهور آهي همعصر فريڪس.

گھڻن ملٽي ٿريڊ ٿيل ايپليڪيشنون ھاڻي متوازي ڊيٽا ڍانچي تي ھلنديون آھن، ڪردارن جي وچ ۾ پيغام جي قطارن کي استعمال ڪرڻ کان وٺي ڪي-ويليو اسٽورن ۾ انڊيڪس ٿيل ڊيٽا ڍانچي تائين. اهي ڪيترن ئي سالن کان جاوا JDK ۾ ڪاميابي سان ڪم ڪري رهيا آهن، ۽ اهي سست رفتار سان C ++ ۾ شامل ڪيا ويا آهن.

هڪ متوازي ڊيٽا جي جوڙجڪ کي لاڳو ڪرڻ جو آسان طريقو هڪ سيريل (سنگل ٿريڊڊ) عمل درآمد آهي جنهن ۾ طريقا ميٽيڪسز طرفان محفوظ آهن. هي ڪنهن به جون لاءِ دستياب آهي، پر ان ۾ واضح اسڪيلنگ ۽ ڪارڪردگي جا مسئلا آهن. ساڳئي وقت، لاڪ فري ۽ انتظار کان آزاد ڊيٽا جي جوڙجڪ نه رڳو غلطين کي بهتر طور تي سنڀاليندا آهن، پر هڪ بهتر ڪارڪردگي پروفائل پڻ آهي - جڏهن ته، انهن جي ترقي کي خاص استعمال جي صورت ۾ وڏي مهارت ۽ موافقت جي ضرورت آهي. ڪوڊ جي هڪ غلط لائن هر شيء کي ٽوڙڻ لاء ڪافي آهي.

ڪيئن پڪ ڪجي ته هڪ غير ماهر به اهڙي ڊيٽا ڍانچي کي ڊزائين ۽ لاڳو ڪري سگهي ٿو؟ اهو معلوم ٿئي ٿو ته ڪنهن به ترتيب وار الگورٿم کي ڪنهن به ذريعي موضوع کان محفوظ ڪري سگهجي ٿو آفاقي ڊيزائن، يا ٽرانزيڪشنل ياداشت. هڪ شيء لاء، اهي هن مسئلي کي حل ڪرڻ لاء داخلا جي حد کي گهٽ ڪري سگهن ٿا. جڏهن ته، ٻنهي حلن کي غير موثر عملن جي اڳواڻي ۾ آڻيندا آهن. پيڊرو ان بابت ڳالهائيندو ته ڪيئن انهن انهن تعميرات کي وڌيڪ ڪارائتو بڻائڻ جو انتظام ڪيو ۽ انهن کي انهن جي الگورتھم لاءِ ڪيئن استعمال ڪري سگهجي ٿو.

هيڊي هاورڊ- ورهايل اتفاق راءِ کي آزاد ڪرڻ

19 هائڊرا سر. پروگرام جو شاندار جائزو هيڊي هاورڊ، مارٽن وانگر، ڪيمبرج يونيورسٽي ۾ ورهايل سسٽم محقق آهي. هن جي ماهريت مستقل مزاجي، غلطي رواداري، ڪارڪردگي ۽ ورهايل اتفاق آهي. هوءَ پيڪسوس الگورتھم جي عام ڪرڻ لاءِ مشهور آهي لچڪدار Paxos.

پگهار ته پينڪس - غير معتبر ڪمپيوٽرن جي نيٽ ورڪ ۾ اتفاق جي مسئلي کي حل ڪرڻ لاء پروٽوڪول جو هڪ خاندان، جيڪي ليسلي لامپورٽ جي ڪم تي ٻڌل هئا. اهڙيء طرح، اسان جا ڪجهه ڳالهائيندڙ ڪمن تي ڪم ڪري رهيا آهن جيڪي اصل ۾ اسان جي ٻين ڳالهائيندڙن پاران تجويز ڪيل هئا - ۽ اهو شاندار آهي.

ڪيترن ئي ميزبانن جي وچ ۾ اتفاق راءِ ڳولڻ جي صلاحيت- ايڊريسنگ، ليڊر جي چونڊ، بلاڪنگ، يا ڪوآرڊينيشن- اڄ جي ورهايل نظامن ۾ هڪ بنيادي مسئلو آهي. Paxos هاڻي اتفاق راءِ جي مسئلن کي حل ڪرڻ جو بنيادي طريقو آهي، ۽ مختلف عملي ضرورتن لاءِ الگورتھم کي وڌائڻ ۽ بهتر ڪرڻ لاءِ ان جي چوڌاري تمام گهڻي تحقيق آهي.

هن رپورٽ ۾، اسان Paxos جي نظرياتي بنيادن تي نظرثاني ڪنداسين، شروعاتي گهرجن کي آرام ڪرڻ ۽ الگورتھم کي عام ڪرڻ. اسان ڏسنداسين ته Paxos، حقيقت ۾، اتفاق راء جي وڏي حد تائين اختيارن مان صرف هڪ آهي، ۽ اهو سپیکٹرم تي ٻيا نقطا پڻ سٺي تقسيم سسٽم جي تعمير لاء ڪافي مفيد آهن.

Alex Petrov - پنھنجي اسٽوريج جي قيمتن کي گھٽايو عارضي نقل ۽ سستا ڪورم سان

19 هائڊرا سر. پروگرام جو شاندار جائزو ايڪس هڪ ڊيٽابيس ۽ اسٽوريج اسپيشلسٽ آهي ۽، وڌيڪ اهم، هڪ ڪميٽر Cassandra. هو هن وقت O'Reilly سان گڏ ڪم ڪري رهيو آهي ڊيٽابيس اندروني ڪتاب تي.

سسٽم سان گڏ آخري تسلسل (روسي اصطلاح ۾ - "آخر ۾ مستقل مزاجي")، نوڊ يا نيٽ ورڪ جي تقسيم جي زوال کان پوء، هيٺ ڏنل پريشاني کي حل ڪرڻ جي ضرورت آهي: يا ته درخواستن کي پورو ڪرڻ جاري رکو، استحڪام جي قرباني، يا انهن تي عمل ڪرڻ کان انڪار ڪرڻ ۽ دستيابي کي قربان ڪرڻ. اهڙي سسٽم ۾، ڪورم، نوڊس جي اوورليپنگ سبسٽس ۽ انهي ڳالهه کي يقيني بڻائڻ ته گهٽ ۾ گهٽ هڪ نوڊ ۾ سڀ کان تازو قدر شامل آهي، هڪ سٺو حل ٿي سگهي ٿو. اهو ممڪن آهي ته ناڪامين کان بچڻ ۽ ڪنيڪشن جي نقصان کان بچڻ لاء ڪجهه نوڊس جڏهن ته سڀ کان تازو قدرن سان جواب ڏيڻ جاري رکندي.

بهرحال، هر شيء پنهنجي قيمت آهي. هڪ ڪورم ريپليڪشن اسڪيم جو مطلب آهي اسٽوريج جي وڌندڙ قيمت: توهان کي لازمي طور تي هڪ ئي وقت ڪيترن ئي نوڊس تي بيڪار ڊيٽا ذخيرو ڪرڻ گهرجي انهي کي يقيني بڻائڻ لاءِ ته ڪافي ڪاپيون موجود آهن جڏهن ڪو مسئلو ٿئي ٿو. اهو ظاهر ٿئي ٿو ته توهان سڀني نقلن تي سڀني ڊيٽا کي ذخيرو نٿا ڪري سگهو. توهان اسٽوريج تي لوڊ گهٽائي سگهو ٿا جيڪڏهن توهان ڊيٽا کي صرف نوڊس جي هڪ حصي تي رکو ٿا، ۽ خاص نوڊس (Transient Replica) استعمال ڪريو ناڪامي سنڀالڻ واري منظرنامي لاءِ.

رپورٽ جي دوران، اسان غور ڪنداسين شاهدي جا نقل، نقل ڪرڻ واري اسڪيم ۾ استعمال ٿيل Spanner и ميگا ميٽ، ۽ نالن جي تحت Apache Cassandra ۾ هن تصور جي نفاذ عارضي نقل ۽ سستا ڪورم.

دمتري Vyukov - Goroutines بي نقاب

19 هائڊرا سر. پروگرام جو شاندار جائزو دمتري هڪ ڊولپر آهي گوگل تي ڪم ڪري رهيو آهي C/C++ ۽ Go dynamic testing - Address/Memory/ThreadSanitizer ۽ ساڳيا اوزار لينڪس ڪنيل لاءِ. هن هڪ اسپيبلبل گوروٽين شيڊيولر، هڪ نيٽ ورڪ پولر، ۽ هڪ متوازي گاربيج ڪليڪٽر Go to ۾ حصو ورتو آهي. هو ملٽي ٿريڊنگ ۾ ماهر آهي، هڪ درجن نون نان بلاڪنگ الگورٿمز جو ليکڪ ۽ مالڪ آهي. ڪارو پٽو اڳوڻن.

هاڻي ٿورڙي رپورٽ پاڻ بابت. گو ٻولي کي گوروٽينز (هلڪي وزن واري موضوعن) ۽ چينلز (FIFO قطار) جي صورت ۾ ملٽي ٿريڊنگ لاءِ مقامي مدد حاصل آهي. انهن ميکانيزم جي مهرباني، استعمال ڪندڙن لاءِ جديد ملٽي ٿريڊ ٿيل ايپليڪيشنون لکڻ لاءِ اهو تمام آسان ۽ خوشگوار آهي، ۽ اهو جادو وانگر نظر اچي ٿو. جيئن اسان سمجھون ٿا، هتي ڪو جادو ناهي. هن رپورٽ ۾، دمتري گو شيڊولر جي پيچيدگين تي غور ڪندو ۽ هن "جادو" کي لاڳو ڪرڻ جا راز ڏيکاريندو. پهريون، هو شيڊولر جي مکيه حصن جو هڪ جائزو ڏيندو، اهو ڪيئن ڪم ڪري ٿو. اڳيون، اسان ڪجهه پهلوئن تي ويجھو نظر وجهنداسين، جهڙوڪ پارڪنگ / انپارڪنگ جي حڪمت عملي ۽ بلاڪنگ سسٽم ڪالز کي هٿ ڪرڻ. آخرڪار، دمتري شيڊولر ۾ ممڪن سڌارن بابت ٿورو ڳالهائيندو.

دمتري بوگيچينڪو - امڪاني اسڪيچ ۽ وڌيڪ سان ورهايل گراف تجزيي کي تيز ڪرڻ

19 هائڊرا سر. پروگرام جو شاندار جائزو دمتري تقريبن 9 سالن تائين آئوٽ سورسنگ ۾ ڪم ڪيو، بغير يونيورسٽي ۽ سائنسي ڪميونٽي سان رابطي کي وڃائڻ کان سواء. Odnoklassniki ۾ وڏي ڊيٽا جو تجزيو هن لاءِ هڪ منفرد موقعو هو ته هو نظرياتي تربيت ۽ سائنسي بنيادن کي گڏ ڪري حقيقي، گهربل شين جي ترقي سان.

ورهايل گراف جو تجزيو هڪ مشڪل ڪم رهيو آهي ۽ رهي ٿو: جڏهن پاڙيسري ورڪس جي ڪنيڪشن بابت معلومات حاصل ڪرڻ ضروري ٿي وڃي ٿي، ڊيٽا کي اڪثر مشينن جي وچ ۾ منتقل ڪرڻو پوندو آهي، جيڪو عمل جي وقت ۾ اضافو ۽ نيٽ ورڪ تي لوڊ ٿيڻ جو سبب بڻجي ٿو. انفراسٽرڪچر. هن ڳالهه ٻولهه ۾، اسان ڏسنداسين ته توهان پروسيسنگ جي هڪ اهم اسپيڊ اپ ڪيئن حاصل ڪري سگهو ٿا پروسيسنگ جي امڪاني ڊيٽا جي جوڙجڪ يا حقيقتن جهڙوڪ سماجي نيٽ ورڪ ۾ دوستي گراف جي سميري. هي سڀ Apache Spark ڪوڊ مثالن سان بيان ڪيو ويو آهي.

Denis Rystsov - پنھنجي اسٽوريج جي قيمتن کي گھٽايو عارضي نقل ۽ سستا ڪورم سان

19 هائڊرا سر. پروگرام جو شاندار جائزو Denis - ڊولپر Cosmos DB, consistency model validation ۾ هڪ ماهر, consensus algorithms, and distributed transactions. هاڻي هو Microsoft تي ڪم ڪري ٿو، ۽ ان کان اڳ هو Amazon ۽ Yandex تي ورهايل سسٽم ۾ مصروف هو.

هن رپورٽ ۾، اسان ورهايل ٽرانزيڪشن پروٽوڪول سان واقف ٿينداسين جيڪي گذريل ڪجهه سالن کان ايجاد ڪيا ويا آهن، جيڪي لاڳو ڪري سگھجن ٿيون ڪلائنٽ پاسي تي ڪنهن به ڊيٽا اسٽور جي چوٽي تي جيڪا مشروط تازه ڪاري جي حمايت ڪري ٿي (مقابلي ۽ سيٽ). هيٺئين لائن اها آهي ته زندگي ٻن مرحلن جي انجام سان ختم نه ٿيندي آهي، ٽرانزيڪشن کي ڪنهن به ڊيٽابيس جي مٿان شامل ڪري سگهجي ٿو - ايپليڪيشن جي سطح تي، پر مختلف پروٽوڪول (2PC، Percolator، RAMP) مختلف ٽريڊ آف آهن ۽ اسان کي نه ڏنو ويو آهي. مفت ۾.

Alexey Zinoviev - نه سڀئي ML الگورتھم ورهايل جنت ۾ ختم ٿين ٿا

19 هائڊرا سر. پروگرام جو شاندار جائزو اليڪسي (zaleslaw) اسان جو ڊگهو اسپيڪر ۽ ٻين ڪانفرنسن ۾ پروگرام ڪميٽين جو ميمبر آهي. EPAM سسٽم ۾ هڪ مشق ڪندڙ ٽرينر، ۽ 2012 کان هيدوپ / اسپارڪ ۽ ٻين بگ ڊيٽا سان دوستي آهي.

هن ڳالهه ٻولهه ۾، اليڪسي پنهنجي تجربي جي بنياد تي Apache Spark ML، Apache Mahout، Apache Flink ML ۽ Apache Ignite ML ٺاهڻ جي تجربي جي بنياد تي تقسيم ٿيل عمل لاءِ ڪلاسيڪل مشين لرننگ الگورٿمز کي ترتيب ڏيڻ جي مسئلن بابت ڳالهائيندو. Alexey انهن فريم ورڪ ۾ ورهايل ايم ايل الگورتھم جي عمل درآمد بابت پڻ ڳالهائيندو.

۽ نتيجي ۾، Yandex کان ٻه رپورٽون Yandex ڊيٽابيس بابت.

Vladislav Kuznetsov - Yandex ڊيٽابيس - اسان ڪيئن مهيا ڪندا آهيون غلطي رواداري

19 هائڊرا سر. پروگرام جو شاندار جائزو Vladislav ورهايل پليٽ فارم گروپ ۾ Yandex تي هڪ ڊولپر آهي. Yandex ڊيٽابيس هڪ افقي طور تي اسپيبلبل، جيو ورهايل، غلطي برداشت ڪرڻ وارو DBMS آهي جيڪو ڊسڪ، سرور، ريڪ، ۽ ڊيٽا سينٽرن جي ناڪامي کي برداشت ڪري سگهي ٿو بغير مطابقت جي سمجهوتو ڪرڻ کان سواء. غلطي رواداري کي يقيني بڻائڻ لاء، هڪ ملڪيت جي تقسيم اتفاق الورورٿم استعمال ڪيو ويو آهي، انهي سان گڏ ڪيترائي ٽيڪنيڪل حل، جيڪي رپورٽ ۾ تفصيل سان بحث ڪيا ويا آهن. رپورٽ DBMS ڊولپرز ۽ ڊي بي ايم ايس جي بنياد تي لاڳو ٿيل حلن جي ڊولپرز جي دلچسپي جي ٿي سگھي ٿي.

سيميون چيچرندا - YDB ۾ ورهايل ٽرانزيڪشن

19 هائڊرا سر. پروگرام جو شاندار جائزو Semyon Yandex تي ورهايل پليٽ فارم گروپ ۾ هڪ ڊولپر آهي، YDB تنصيب جي گهڻن نوڪر استعمال جي امڪان تي ڪم ڪري رهيو آهي.

Yandex ڊيٽابيس OLTP سوالن لاءِ ٺهيل آهي ۽ ٽرانزيڪشنل سسٽم لاءِ ACID گهرجن کي پورو ڪري ٿو. رپورٽ ۾، اسان YDB ٽرانزيڪشن سسٽم جي تحت ٽرانزيڪشن شيڊولنگ الگورتھم تي غور ڪنداسين. اچو ته تجزيو ڪريون ته ڪهڙيون ادارا ٽرانزيڪشن ۾ حصو وٺن ٿا، جيڪي ٽرانزيڪشن کي عالمي آرڊر تفويض ڪن ٿا، ڪيئن ٽرانزيڪشن ايٽمي، اعتبار ۽ سخت اڪيلائي جي سطح حاصل ڪئي وڃي ٿي. هڪ عام ڪم جي مثال کي استعمال ڪندي، اچو ته غور ڪريون ٽرانزيڪشن تي عمل درآمد کي استعمال ڪندي ٻن مرحلن جي عزم ۽ تعيناتي ٽرانزيڪشن. اچو ته انهن جي اختلافن تي بحث ڪريون.

ايندڙ ڇا آهي؟

ڪانفرنس جو پروگرام نون رپورٽن سان ڀريو پيو آهي. خاص طور تي، اسان کي هڪ رپورٽ جي توقع آهي نکيتا ڪول (ndkoval) JetBrains کان ۽ Oleg Anastasiev (m0nstermind) Odnoklassniki کان. نڪيتا ڪوٽلن ٽيم ۾ ڪوروٽينز لاءِ الگورتھم تي ڪم ڪري ٿي، ۽ اوليگ اوڊنوڪلاسنيڪي پليٽ فارم ۾ اعليٰ لوڊ سسٽم لاءِ آرڪيٽيڪچر ۽ حل تيار ڪري ٿو. ان کان علاوه، 1 وڌيڪ شرطي طور تي خالي سلاٽ آهي، اميدوارن سان جن لاءِ پروگرام ڪميٽي هن وقت ڪم ڪري رهي آهي.

هائيڊرا ڪانفرنس 11-12 جولاءِ تي سينٽ پيٽرسبرگ ۾ ٿيندي. ٽڪيٽون ٿي سگهن ٿيون سرڪاري ويب سائيٽ تي خريد ڪريو. آن لائين ٽڪيٽن جي دستيابي تي ڌيان ڏيو - جيڪڏھن ڪنھن سبب جي ڪري توھان انھن ڏينھن ۾ سينٽ پيٽرسبرگ تائين پھچي نٿا سگھو.

هائڊرا ۾ ملنداسين!

جو ذريعو: www.habr.com

تبصرو شامل ڪريو