19 kepala hydra. Ulasan program yang bagus

Hydra Conference akan diadakan pada 11-12 Juli di St. Petersburg, yang didedikasikan untuk pengembangan sistem paralel dan terdistribusi. Fitur Hydra adalah bahwa ia menggabungkan ilmuwan keren (yang biasanya hanya dapat ditemukan di konferensi ilmiah asing) dan insinyur yang terkenal, menjadi satu program besar di persimpangan sains dan praktik.


Hydra adalah salah satu konferensi terpenting kami selama beberapa tahun terakhir. Dia didahului oleh persiapan yang sangat serius, pemilihan pembicara dan laporan. Pekan lalu , wawancara dengan direktur perusahaan JUG.ru Group, Alexei Fedorov ( 23derevo ), dirilis tentang hal ini.


Kami telah berbicara tentang tiga peserta penting, pendiri teori sistem terdistribusi - Leslie Lamport, Maurice Herlichi dan Michael Scott. Saatnya berbicara lebih banyak tentang keseluruhan program!



Motivasi


Jika Anda pemrograman, maka entah bagaimana Anda berurusan dengan komputasi multithreading dan terdistribusi. Para ahli di bidang yang relevan bekerja secara langsung dengan mereka, tetapi secara implisit distribusi melihat kita dari mana-mana: di komputer multi-core atau layanan terdistribusi ada sesuatu yang paralel dengan perhitungan.


Ada banyak konferensi yang mengungkapkan berbagai aspek pemrograman terapan. Di sisi lain dari spektrum, kami memiliki sekolah ilmiah khusus yang, dalam format kuliah, mengungkapkan sejumlah besar teori kompleks. Misalnya, sekolah SPTDC berjalan paralel dengan Hydra di St. Petersburg. Di Hydra, kami mencoba menyatukan praktik keras, dan sains, dan semuanya di persimpangan mereka.


Pikirkan tentang ini: kita hidup di saat yang menakjubkan ketika Anda dapat bertemu dengan para pendiri bidang sains dan teknik yang sedang kami tangani. Fisikawan tidak akan bertemu dengan Newton atau Einstein - kereta tersisa. Tetapi masih ada orang yang tinggal di dekat kita yang menciptakan dasar-dasar teori sistem terdistribusi, muncul dengan bahasa pemrograman populer, dan untuk pertama kalinya mewujudkan semua ini menjadi prototipe yang berfungsi. Orang-orang ini tidak meninggalkan pekerjaan mereka di tengah jalan, saat ini mereka terlibat dalam tugas-tugas mendesak di universitas dan perusahaan terkenal di dunia, dan mereka adalah sumber pengetahuan dan pengalaman terbesar hingga saat ini.


Di sisi lain, kesempatan untuk bertemu dengan mereka biasanya tetap murni teoretis: beberapa dari kita dapat terus-menerus memantau acara-acara publik di Universitas Rochester, lalu bergegas ke Amerika Serikat dan kembali ke kuliah untuk Michael Scott. Untuk mengunjungi semua peserta Hydra secara umum akan berada dalam keadaan kecil, tidak termasuk jurang waktu yang dihabiskan (meskipun ini terdengar seperti pencarian yang menarik).


Di sisi lain, kami memiliki banyak insinyur top yang sedang mengerjakan masalah mendesak sistem terdistribusi sekarang, dan mereka pasti memiliki sesuatu untuk diceritakan. Tapi di sini masalahnya - mereka bekerja , dan waktu mereka mahal. Ya, jika Anda adalah karyawan Microsoft, Google atau JetBrains, kemungkinan bertemu dengan salah satu pembicara terkenal di acara internal meningkat secara dramatis, tetapi secara umum - tidak, tidak setiap hari hal itu terjadi.


Dengan demikian, konferensi Hydra memenuhi tugas penting yang sebagian besar dari kita tidak dapat lakukan sendiri - di satu tempat dan pada saat yang sama menyatukan orang-orang yang ide atau komunikasinya dengan siapa dapat mengubah hidup Anda. Saya akui bahwa tidak semua orang membutuhkan sistem terdistribusi, beberapa hal mendasar yang kompleks. Anda dapat memprogram CRUD dalam PHP selama sisa hidup Anda dan tetap benar-benar bahagia. Tapi siapa yang butuh itu adalah kesempatanmu.


Sudah cukup banyak waktu berlalu sejak pengumuman pertama konferensi Hydra tentang Habré. Selama ini, banyak pekerjaan telah dilakukan - dan sekarang, kami memiliki daftar hampir semua laporan. Tidak ada algoritma single-threaded lamban, hanya hardcore terdistribusi murni! Mari kita selesaikan dengan kata-kata umum, dan lihat apa yang kita miliki sekarang.


Keynotes


Keynotes memulai dan mengakhiri hari-hari konferensi. Biasanya makna dari pembukaan adalah untuk mengatur semangat umum dan arah konferensi. Keynote penutup menarik garis dan menjelaskan bagaimana hidup dengan pengetahuan dan keterampilan yang diperoleh selama hari-hari konferensi. Awal dan akhir: apa yang akan diingat terbaik dari semua, dan secara umum, semakin penting.


Cliff Click - Algoritma K / V terdistribusi H2O


Tebing adalah legenda di dunia Jawa. Pada akhir 90-an, untuk tesis PhD-nya, ia menulis sebuah makalah berjudul Menggabungkan Analisis, Menggabungkan Optimasi , yang setelah beberapa waktu menjadi dasar untuk Kompiler Server JVM HotSpot. Dua tahun kemudian, dia sudah bekerja di Sun Microsystems di JVM dan menunjukkan kepada dunia bahwa JIT memiliki hak untuk hidup. Seluruh cerita bahwa Jawa adalah salah satu runtime modern tercepat dengan optimasi paling cerdas dan tercepat berasal dari Cliff Click. Pada awalnya, diyakini bahwa jika ada sesuatu yang tersedia untuk kompiler statis, Anda bahkan tidak dapat mencoba jit. Berkat kerja Cliff dan tim, semua bahasa baru mulai dibuat dengan ide kompilasi JIT default. Tentu saja, ini bukan pekerjaan untuk satu orang, tetapi Cliff memainkan peran yang sangat penting di dalamnya.


Dalam keynote pembuka, Cliff akan berbicara tentang upaya lainnya - H20 , sebuah platform dalam memori untuk pembelajaran mesin yang terdistribusi dan dapat diukur untuk aplikasi industri. Atau lebih tepatnya, tentang penyimpanan terdistribusi pasangan kunci-nilai di dalamnya. Ini adalah repositori yang sangat cepat dengan banyak properti menarik (daftar persisnya ada di deskripsi ) yang memungkinkan Anda untuk menggunakan solusi serupa dalam matematika streaming data besar.


Pembicaraan lain yang akan diberikan Cliff adalah pengalaman Memori Transaksional Azul Hardware . Bagian lain dari biografinya adalah sepuluh tahun bekerja di Azul , di mana ia memperbarui dan meningkatkan banyak hal dalam perangkat keras dan tumpukan teknologi Azul: kompiler JIT, runtime, model ulir, penanganan kesalahan, pekerjaan tumpukan, gangguan perangkat keras, pemuatan kelas, dan seterusnya dan seterusnya. hal-hal seperti itu - yah, Anda mengerti maksudnya.


Bagian yang paling menarik dimulai ketika mereka membuat perangkat keras untuk bisnis besar - superkomputer untuk menjalankan Java. Itu adalah hal yang agak inovatif, dipertajam khusus untuk Java, yang memiliki persyaratan khusus - hambatan memori untuk membaca untuk pengumpulan sampah rendah, array dengan pemeriksaan perbatasan, panggilan virtual ... Salah satu teknologi paling keren adalah perangkat keras memori transaksional. Semua L1 dari 864 core dapat berpartisipasi dalam penulisan transaksional, yang sangat penting untuk bekerja dengan kunci di Jawa (blok yang disinkronkan dapat bekerja secara paralel, selama tidak ada konflik memori nyata). Tetapi ide yang bagus menabrak kenyataan yang keras - dan dalam laporan ini, Cliff akan menjelaskan mengapa HTM dan STM tidak terlalu cocok untuk kebutuhan praktis komputasi multi-threaded.


Michael Scott - Struktur data ganda


Michael Scott adalah seorang profesor Ilmu Komputer di University of Rochester, yang nasibnya telah menghubungkannya selama 34 tahun , dan di universitas asal Wisconsin-Madison, ia adalah dekan selama lima tahun. Dia terlibat dalam penelitian di bidang pemrograman paralel dan didistribusikan dan desain bahasa dan mengajarkan siswa ini.


Seluruh dunia mengenal Michael berkat buku teks "Programming Language Pragmatics" , edisi terakhir yang dirilis relatif baru-baru ini - pada tahun 2015. Karyanya , Algoritma untuk sinkronisasi yang dapat diskalakan pada multiprosesor berbagi-memori, menerima Hadiah Dijkstra sebagai salah satu yang paling terkenal di bidang komputasi terdistribusi dan secara terbuka terletak di perpustakaan online Universitas Rochester. Anda juga dapat mengenalnya sebagai penulis algoritma Michael-Scott yang sama dari "Simple, Fast, and Practical Non-Blocking dan Blocking Concurrent Queue Algorithms" .


Adapun dunia Java, ini adalah kasus khusus: bersama dengan Doug Lea, ia mengembangkan algoritma non-blocking dan antrian sinkron yang menjalankan perpustakaan Java. Inilah yang menjadi keynote struktur data ganda - pengenalan struktur ini di Java SE 6 diizinkan 10 kali untuk meningkatkan kinerja java.util.concurrent.ThreadPoolExecutor . Jika Anda tertarik sebelumnya apa "struktur data ganda" ini, maka ada pekerjaan yang sesuai tentang hal itu.


Maurice Herlihy - Blockchains dan masa depan komputasi terdistribusi


Maurice Herlichi adalah pemenang dua penghargaan Dijkstra. Yang pertama adalah untuk Sinkronisasi Bebas-Tunggu (Brown University), dan yang kedua, yang lebih baru, adalah Memori Transaksional: Dukungan Arsitektur untuk Struktur Data Bebas-Kunci (Virginia Tech University). Hadiah Dijkstra diberikan untuk karya-karya yang signifikansi dan pengaruhnya telah terlihat selama setidaknya sepuluh tahun, dan, jelas, Maurice adalah salah satu spesialis paling terkenal di bidangnya. Dia saat ini bekerja sebagai profesor di Brown University dan memiliki banyak prestasi sepanjang paragraf panjang.


Pada keynote penutup ini, Maurice akan berbicara tentang teori dan praktik sistem terdistribusi blockchain dalam hal klasik komputasi terdistribusi dan bagaimana ini menyederhanakan banyak masalah terkait. Laporan ini secara eksklusif membahas topik konferensi - bukan tentang menambang hype sama sekali, tetapi lebih tentang bagaimana pengetahuan kita bisa sangat efektif dan sesuai untuk diterapkan pada berbagai tugas.


Pada bulan Juli 2017, Maurice datang ke Rusia di sekolah SPTDC, berpartisipasi dalam reli JUG.ru, dan rekamannya dapat dilihat di YouTube:



Program utama


Berikutnya adalah ulasan singkat dari laporan yang termasuk dalam program. Beberapa laporan dijelaskan secara rinci di sini, dan beberapa lebih pendek. Deskripsi panjang diperoleh terutama dalam laporan berbahasa Inggris yang membutuhkan tautan ke makalah ilmiah, istilah di Wikipedia, dan sebagainya. Daftar lengkapnya dapat dilihat di situs web konferensi . Daftar di situs akan diperbarui dan ditambah.


Leslie Lamport - Tanya Jawab


Leslie Lampport adalah penulis karya mendasar dalam komputasi terdistribusi. LaTeX adalah singkatan dari Lamport TeX. Ini adalah pertama kalinya ia memperkenalkan konsep konsistensi yang konsisten pada tahun 1979, dan artikelnya “Bagaimana Membuat Komputer Multiprosesor yang Menjalankan Program Multiproses dengan Benar” memenangkan Hadiah Dijkstra.


Ini adalah bagian yang paling tidak biasa dari program dalam hal format, karena itu bahkan bukan laporan, tetapi sesi tanya jawab. Ketika sebagian besar audiens sudah terbiasa (atau bisa berkenalan) dengan semua jenis karya berdasarkan "teori Lamport", artikel dan laporannya sendiri, penting untuk menghabiskan semua waktu yang tersedia untuk komunikasi langsung.


Idenya sederhana - Anda menonton dua laporan di YouTube: "Pemrograman Seharusnya Lebih Dari Pengkodean" dan "Jika Anda Tidak Menulis Program, Jangan Gunakan Bahasa Pemrograman" dan siapkan setidaknya satu pertanyaan, dan Leslie menjawab.


Yang pertama dari dua video ini telah kami ubah menjadi habrosta . Jika Anda tidak punya waktu satu jam untuk menonton video, Anda dapat dengan cepat membaca semua ini dalam bentuk teks.


Catatan: ada lebih banyak video dari Leslie Lamport di YouTube. Misalnya, ada kursus TLA + yang sangat baik. Versi offline seluruh kursus ini ada di beranda penulis , dan di YouTube ia mengunggahnya untuk lebih mudah dilihat di perangkat seluler.


Martin Kleppmann - Menyinkronkan data antar perangkat pengguna untuk kolaborasi terdistribusi


Martin Kleppmann adalah seorang peneliti di University of Cambridge, bekerja pada CRDT dan verifikasi formal algoritma. Buku Martin Merancang Aplikasi Intensif Data , yang diterbitkan pada tahun 2017, terbukti sangat sukses dan membuatnya menjadi daftar buku terlaris di bidang penyimpanan dan pemrosesan data. Kevin Scott, CTO di Microsoft, pernah berkata : “Buku ini harus menjadi keharusan bagi para insinyur pengembangan. "Ini adalah sumber daya langka yang menggabungkan teori dan praktik, membantu pengembang merancang lebih cerdas dan menerapkan infrastruktur dan sistem pemrosesan data." Hal serupa dikatakan oleh pencipta Kafka dan CEO Confluent, Jay Kreps.


Sebelum terlibat dalam penelitian akademis, Martin bekerja di industri ini dan ikut mendirikan dua startup yang sukses:


  • Rapportive, didedikasikan untuk menampilkan profil sosial kontak dari email Anda, yang dibeli LinkedIn pada 2012;
  • Go Test It, layanan untuk memeriksa situs web secara otomatis di berbagai browser, yang dibeli RedGate pada 2009.

Secara umum, Martin, meskipun kurang dikenal dibandingkan para penulis utama kami, sudah dapat memberikan kontribusi pada pengembangan komputasi terdistribusi dan industri.


Dalam laporan ini, Martin akan berbicara tentang topik yang lebih dekat dengan penelitian akademisnya. Di Google Documents dan sofa serupa untuk dokumen pengeditan bersama, “pengeditan bersama” berarti tugas replikasi: setiap pengguna memiliki replika sendiri dokumen bersama, yang kemudian mereka modifikasi, dan semua perubahan dikirim ke peserta lain melalui jaringan. Perubahan pada dokumen offline menghasilkan inkonsistensi sementara dari dokumen sehubungan dengan peserta lain, dan sinkronisasi ulang memerlukan penanganan konflik. Hanya untuk ini, ada Replicated Data Type (CRDT) bebas-Konflik , pada kenyataannya - hal yang agak baru, esensi yang dirumuskan hanya pada tahun 2011. Laporan ini membahas apa yang telah terjadi sejak saat itu di dunia CRDT, apa pencapaian terbaru, membahas pendekatan untuk membuat aplikasi lokal pertama pada umumnya dan penggunaan perpustakaan sumber terbuka Automerge pada khususnya.


Minggu depan kita akan menerbitkan di Habré sebuah wawancara besar dengan Martin, itu akan menarik.

Pedro Ramalhete - Struktur data bebas-tunggu dan transaksi bebas-tunggu


Pedro telah bekerja di Cisco dan telah mengembangkan algoritma paralel selama sepuluh tahun terakhir, termasuk mekanisme sinkronisasi, struktur data bebas kunci dan bebas-tunggu, dan segala sesuatu yang dapat Anda bayangkan tentang topik ini. Minat penelitian dan tekniknya saat ini difokuskan pada Konstruksi Universal, Memori Transaksional Perangkat Lunak, Memori Persisten, dan teknologi serupa yang memungkinkan penerapan aplikasi yang benar, terukur, dan toleran terhadap kesalahan. Dia juga penulis blog Concurrency Freaks , yang dikenal luas di kalangan sempit.


Sebagian besar aplikasi multi-utas sekarang bekerja pada struktur data paralel, mulai dengan menggunakan antrian pesan antara aktor dan berakhir dengan struktur data yang diindeks di penyimpanan nilai kunci. Di Java JDK, mereka telah bekerja dengan sukses selama bertahun-tahun, dan di C ++ perlahan-lahan ditambahkan.


Cara paling sederhana untuk mengimplementasikan struktur data paralel adalah implementasi sekuensial (single-threaded) di mana metode dilindungi oleh mutex. Ini dapat diakses pada Juni apa pun, tetapi memiliki masalah yang jelas dengan penskalaan dan kinerja. Pada saat yang sama, struktur data bebas kunci dan bebas tunggu tidak hanya mengatasi kesalahan dengan lebih baik, tetapi juga memiliki profil kinerja yang lebih sukses - namun, pengembangannya membutuhkan keahlian dan adaptasi mendalam untuk aplikasi tertentu. Satu baris kode yang salah sudah cukup untuk menghancurkan segalanya.


Bagaimana membuat orang yang bukan ahli dapat merancang dan mengimplementasikan struktur data seperti itu? Diketahui bahwa setiap algoritma sekuensial dapat dibuat aman menggunakan salah satu dari desain universal atau memori transaksional. Untuk satu, mereka dapat menurunkan ambang untuk memasuki tugas ini. Namun, kedua solusi cenderung mengarah pada implementasi yang tidak efisien. Pedro akan berbicara tentang bagaimana mereka berhasil membuat desain ini lebih efisien dan bagaimana mereka dapat digunakan untuk algoritma mereka.


Heidi Howard - Membebaskan konsensus yang didistribusikan


Heidi Howard, seperti Martin, seorang peneliti sistem terdistribusi di University of Cambridge. Spesialisasinya adalah konsistensi, toleransi kesalahan, kinerja, dan konsensus terdistribusi. Dia terkenal karena generalisasi algoritma Paxos yang disebut Fleksibel Paxos .


Ingatlah bahwa Paxos adalah keluarga protokol untuk memecahkan masalah konsensus dalam jaringan komputer yang tidak dapat diandalkan, yang didasarkan pada karya Leslie Lamport. Jadi, beberapa pembicara kami sedang mengerjakan tugas yang awalnya diusulkan oleh pembicara kami yang lain - dan ini luar biasa.


Kemampuan untuk menemukan konsensus antara banyak host - untuk mengatasi, pemilihan pemimpin, pemblokiran, atau koordinasi - adalah masalah mendasar dalam sistem terdistribusi modern. Paxos sekarang merupakan cara utama untuk memecahkan masalah menemukan konsensus, dan banyak penelitian sedang dilakukan di sekitarnya untuk memperluas dan mengoptimalkan algoritma untuk berbagai kebutuhan praktis.


Dalam laporan ini, kami akan merevisi dasar teoritis Paxos, melemahkan persyaratan awal dan menggeneralisasikan algoritma. Kita akan melihat bahwa Paxos, pada kenyataannya, hanya satu opsi di antara sejumlah besar pendekatan konsensus, dan bahwa titik-titik lain dalam spektrum juga sangat berguna untuk membangun sistem terdistribusi yang baik.


Alex Petrov - Kurangi biaya penyimpanan Anda dengan Replikasi Sementara dan Kuorum Murah


Alex adalah spesialis dalam basis data dan sistem penyimpanan, dan yang lebih penting bagi kami, adalah pengendara di Cassandra . Bersama dengan O'Reilly, dia saat ini sedang mengerjakan buku Database Internal.


Untuk sistem dengan konsistensi akhirnya (dalam terminologi Rusia - "konsistensi dalam jangka panjang"), setelah sebuah node dijatuhkan atau jaringan terbelah, dilema berikut ini harus diselesaikan: baik terus memenuhi permintaan, mengorbankan konsistensi, atau menolak untuk memenuhinya dan mengorbankan ketersediaan. Dalam sistem seperti itu, kuorum yang tumpang tindih dengan himpunan bagian dari node dan menjamin bahwa setidaknya satu node akan mengandung nilai terbaru dapat menjadi solusi batas yang baik. Anda bisa selamat dari kegagalan dan kehilangan koneksi ke beberapa node, terus merespons dengan nilai terbaru.


Namun, semuanya ada harganya. Skema replikasi kuorum berarti peningkatan biaya penyimpanan: Anda perlu menyimpan data yang berlebihan pada beberapa node sekaligus untuk menjamin jumlah salinan yang tersedia cukup pada saat masalah terjadi. Ternyata Anda tidak dapat menyimpan semua data di semua replika. Anda dapat mengurangi beban pada penyimpanan dengan menyimpan data hanya pada sebagian node, dan menggunakan node khusus (Transient Replica) untuk skenario pemrosesan yang gagal.


Dalam perjalanan laporan, kita akan melihat Witness Replicas , skema replikasi yang digunakan oleh Spanner dan Megastore , dan implementasi konsep ini di Apache Cassandra dengan nama Transient Replication & Cheap Quorum .


Dmitry Vyukov - Goroutine terbuka


Dmitry adalah pengembang Google yang bekerja pada pengujian dinamis C / C ++ dan Go - Address / Memory / ThreadSanitizer, dan pada alat serupa untuk kernel Linux. Go memiliki penjadwal goroutine scalable, poller jaringan, dan pengumpul sampah paralel. Dia adalah ahli dalam multithreading, penulis selusin algoritma non-blocking baru dan adalah pemilik Intel Black Belt .


Sekarang sedikit tentang laporan itu sendiri. Go memiliki dukungan asli untuk multithreading dalam bentuk goroutine (utas ringan) dan saluran (antrian FIFO). Berkat mekanisme ini, sangat mudah dan menyenangkan bagi pengguna untuk menulis aplikasi multithreaded modern, dan itu terlihat seperti sulap. Seperti yang kita pahami, tidak ada keajaiban di sini. Dalam laporan ini, Dmitry akan menyelidiki seluk-beluk pekerjaan penjadwal Go dan menunjukkan rahasia implementasi "sihir" ini. Pertama, ia akan memberikan gambaran umum tentang komponen-komponen utama dari penjadwal, memberi tahu Anda cara kerjanya. Selanjutnya, kita akan melihat lebih dekat pada aspek-aspek tertentu, seperti strategi parkir / membongkar dan pemrosesan panggilan sistem pemblokiran. Akhirnya, Dmitry akan berbicara sedikit tentang kemungkinan perbaikan dalam penjadwal.


Dmitry Bugaychenko - Mempercepat analisis grafik terdistribusi menggunakan sketsa probabilitas dan banyak lagi


Dmitry bekerja di bidang outsourcing selama hampir 9 tahun, tanpa kehilangan kontak dengan universitas dan komunitas ilmiah. Analisis data besar di Odnoklassniki adalah kesempatan unik baginya untuk menggabungkan pelatihan teoretis dan landasan ilmiah dengan pengembangan produk nyata yang dicari.


Analisis grafik terdistribusi adalah dan tetap menjadi tugas yang sulit: ketika menjadi perlu untuk mendapatkan informasi tentang koneksi dari simpul tetangga, data sering harus disaring antara mesin, yang mengarah pada peningkatan waktu eksekusi dan beban pada infrastruktur jaringan. Dalam laporan ini, kita akan melihat bagaimana Anda bisa mendapatkan kecepatan pemrosesan yang signifikan menggunakan struktur data atau fakta probabilistik seperti simetri grafik pertemanan di jejaring sosial. Semua ini diilustrasikan oleh contoh kode Apache Spark.


Denis Rystsov - Kurangi biaya penyimpanan Anda dengan Replikasi Sementara dan Kuorum Murah


Denis adalah pengembang DB Cosmos , seorang ahli di bidang memeriksa model konsistensi, dalam algoritma konsensus dan dalam transaksi terdistribusi. Sekarang dia bekerja di Microsoft, dan sebelum itu dia terlibat dalam sistem terdistribusi di Amazon dan Yandex.


Dalam laporan ini, kami akan berkenalan dengan protokol transaksi terdistribusi yang ditemukan selama beberapa tahun terakhir, yang dapat diimplementasikan pada sisi klien di atas setiap penyimpanan data yang mendukung pembaruan bersyarat (bandingkan dan atur). Intinya adalah bahwa kehidupan tidak berakhir dengan komitmen dua fase, transaksi dapat ditambahkan di atas semua basis data - pada tingkat aplikasi, tetapi protokol yang berbeda (2PC, Percolator, RAMP) memiliki tradeoff yang berbeda dan tidak diberikan kepada kami secara gratis.


Alexey Zinoviev - Tidak Semua Algoritma ML Pergi ke Surga Terdistribusi


Alexey ( zaleslaw ) adalah pembicara lama kami dan anggota komite program di konferensi lain. Berlatih pelatih di EPAM Systems, dan telah berteman dengan Hadoop / Spark dan bigdate lainnya sejak 2012.


Dalam laporan ini, Alexey akan berbicara tentang masalah mengadaptasi algoritma pembelajaran mesin klasik untuk eksekusi terdistribusi berdasarkan pengalamannya bekerja dengan Apache Spark ML, Apache Mahout, Apache Flink ML dan pengalaman dalam menciptakan Apache Ignite ML. Alexey juga akan berbicara tentang implementasi algoritma ML terdistribusi dalam kerangka kerja ini.


Dan akhirnya - dua laporan dari Yandex tentang Basis Data Yandex.


Vladislav Kuznetsov - Yandex Database - bagaimana kami memberikan toleransi kesalahan


Vladislav adalah pengembang Yandex dalam grup platform terdistribusi. Yandex Database adalah DBMS toleran-geografis yang dapat diskalakan secara skalabel, yang dapat menahan kegagalan disk, server, rak, dan pusat data tanpa mengurangi konsistensi. Untuk memastikan toleransi kesalahan, algoritma konsensus terdistribusi eksklusif digunakan, serta sejumlah solusi teknis yang dibahas secara rinci dalam laporan. Laporan ini mungkin menarik bagi pengembang DBMS dan pengembang solusi aplikasi berdasarkan DBMS.


Semyon Checherinda - Transaksi Terdistribusi dalam YDB


Semyon - pengembang dalam grup platform terdistribusi di Yandex, sedang mengerjakan kemungkinan penggunaan multi-tenant untuk instalasi YDB.


Basis Data Yandex dirancang untuk permintaan OLTP dan memenuhi persyaratan ACID untuk sistem transaksi. Dalam laporan tersebut, kami akan mempertimbangkan algoritma perencanaan transaksi yang mendasari sistem transaksi YDB. Kami akan menganalisis entitas mana yang berpartisipasi dalam transaksi, yang memberikan transaksi tatanan global, bagaimana atomicity transaksi, keandalan, dan tingkat isolasi yang ketat dicapai. Dengan menggunakan contoh masalah umum, kami mempertimbangkan implementasi transaksi menggunakan transaksi dua tahap komitmen dan deterministik. Kami membahas perbedaan mereka.


Apa selanjutnya


Program konferensi terus diisi dengan laporan baru. Secara khusus, kami mengharapkan laporan dari Nikita Koval ( ndkoval ) dari JetBrains dan Oleg Anastasiev ( m0nstermind ) dari Odnoklassniki. Nikita terlibat dalam algoritma untuk coroutine di tim Kotlin, dan Oleg sedang mengembangkan arsitektur dan solusi untuk sistem yang sangat dimuat dalam platform Odnoklassniki. Selain itu, ada satu lagi slot kosong yang bersyarat, dengan kandidat yang menjadi panitia program saat ini.


Konferensi Hydra akan diadakan 11-12 Juli di St. Petersburg. Tiket dapat dibeli di situs web resmi . Kami menarik perhatian pada ketersediaan tiket Online - jika karena alasan tertentu Anda tidak dapat langsung menuju St. Petersburg akhir-akhir ini.


Temui aku di Hydra!

Source: https://habr.com/ru/post/id453832/


All Articles