Sistem pengendalian teragih DBOS yang berjalan di atas DBMS dibentangkan

Projek DBOS (DBMS-oriented Operating System) dibentangkan, membangunkan sistem pengendalian baharu untuk menjalankan aplikasi teragih berskala. Ciri khas projek ini ialah penggunaan DBMS untuk menyimpan aplikasi dan keadaan sistem, serta mengatur akses kepada keadaan hanya melalui transaksi. Projek ini sedang dibangunkan oleh penyelidik dari Institut Teknologi Massachusetts, Universiti Wisconsin dan Stanford, Universiti Carnegie Mellon dan Google dan VMware. Kerja itu diedarkan di bawah lesen MIT.

Komponen untuk berinteraksi dengan peralatan dan perkhidmatan pengurusan memori peringkat rendah diletakkan di dalam mikrokernel. Keupayaan yang disediakan oleh mikrokernel digunakan untuk melancarkan lapisan DBMS. Perkhidmatan sistem peringkat tinggi yang membolehkan pelaksanaan aplikasi hanya berinteraksi dengan DBMS yang diedarkan dan diasingkan daripada mikrokernel dan komponen khusus sistem.

Membina di atas DBMS yang diedarkan memungkinkan untuk membuat perkhidmatan sistem pada mulanya diedarkan dan tidak terikat pada nod tertentu, yang membezakan DBOS daripada sistem kluster tradisional, di mana setiap nod menjalankan instance sistem pengendaliannya sendiri, di atasnya memisahkan penjadual kluster, sistem fail teragih dan pengurus rangkaian dilancarkan.

Sistem pengendalian teragih DBOS yang berjalan di atas DBMS dibentangkan

Adalah diperhatikan bahawa menggunakan DBMS teragih moden sebagai asas untuk DBOS, menyimpan data dalam RAM dan transaksi sokongan, seperti VoltDB dan FoundationDB, boleh memberikan prestasi yang mencukupi untuk pelaksanaan yang cekap bagi banyak perkhidmatan sistem. DBMS juga boleh menyimpan penjadual, sistem fail dan data IPC. Pada masa yang sama, DBMS sangat berskala, menyediakan atomicity dan pengasingan transaksi, boleh mengurus petabait data dan menyediakan alat untuk kawalan akses dan menjejak aliran data.

Antara kelebihan seni bina yang dicadangkan ialah pengembangan keupayaan analitik yang ketara dan pengurangan dalam kerumitan kod disebabkan penggunaan pertanyaan biasa kepada DBMS dalam perkhidmatan sistem pengendalian, di mana pelaksanaan transaksi dan alat untuk memastikan tinggi. ketersediaan dijalankan (fungsi sedemikian boleh dilaksanakan pada bahagian DBMS sekali dan digunakan dalam OS dan aplikasi).

Sebagai contoh, penjadual kluster boleh menyimpan maklumat tentang tugas dan pengendali dalam jadual DBMS dan melaksanakan operasi penjadualan sebagai transaksi biasa, mencampurkan kod imperatif dan SQL. Urus niaga menjadikannya lebih mudah untuk menyelesaikan masalah seperti pengurusan konkurensi dan pemulihan kegagalan kerana urus niaga menjamin konsistensi dan menyatakan kegigihan. Dalam konteks contoh penjadual, urus niaga membenarkan akses serentak kepada data yang dikongsi dan memastikan integriti keadaan dikekalkan sekiranya berlaku kegagalan.

Mekanisme pengelogan dan analisis data yang disediakan oleh DBMS boleh digunakan untuk menjejak akses dan perubahan dalam keadaan aplikasi, memantau, menyahpepijat dan mengekalkan keselamatan. Contohnya, selepas mengesan akses tanpa kebenaran kepada sistem, anda boleh menjalankan pertanyaan SQL untuk menentukan tahap kebocoran, mengenal pasti semua operasi yang dilakukan oleh proses yang mendapat akses kepada maklumat sulit.

Projek ini telah dibangunkan selama lebih dari setahun dan berada di peringkat mencipta prototaip komponen seni bina individu. Pada masa ini, prototaip perkhidmatan sistem pengendalian yang berjalan di atas DBMS, seperti FS, IPC dan penjadual, telah disediakan, dan persekitaran perisian sedang dibangunkan yang menyediakan antara muka untuk menjalankan aplikasi berdasarkan FaaS (function-as- model a-service.

Peringkat pembangunan seterusnya merancang untuk menyediakan timbunan perisian lengkap untuk aplikasi yang diedarkan. VoltDB kini digunakan sebagai DBMS dalam eksperimen, tetapi perbincangan sedang dijalankan tentang mencipta lapisan kami sendiri untuk menyimpan data atau melaksanakan keupayaan yang hilang dalam DBMS sedia ada. Persoalan komponen mana yang harus dilaksanakan di peringkat kernel dan yang boleh dilaksanakan di atas DBMS juga sedang dibincangkan.

Sumber: opennet.ru

Tambah komen