Sinkronisasi cloud untuk data pengguna tidak hanya mengunggah dan mengunduh. Itu harus melindungi konten pribadi dalam perjalanan, menjaga penyimpanan tetap murah, serialisasi penulisan dari beberapa perangkat, memahami bentuk data yang berbeda, meminta konfirmasi sebelum penghapusan yang berbahaya, dan mempertahankan jalan kembali ketika sebuah keputusan ternyata salah.
Orkas memperlakukan sinkronisasi cloud sebagai batas produk, bukan utilitas latar belakang. Percakapan, agen, keterampilan, status tugas, file pengetahuan, dan pengaturan semuanya perlu dipindahkan di seluruh perangkat sambil menjaga rantai tanggung jawab yang jelas: perangkat menyiapkan konten, penyimpanan objek menyimpan byte, dan server memiliki indeks otoritatif.
Kerangka kerja di bawah ini adalah yang kami gunakan untuk alasan tentang sistem: aliran konten terenkripsi, penyimpanan beralamat konten, kunci sinkronisasi tingkat akun, komit milik server, aturan sinkronisasi deterministik, penanganan konflik yang dibantu model, konfirmasi penghapusan, tempat sampah, dan penanda pemulihan.
Kontrak sinkronisasi
Setiap izin sinkronisasi menjawab empat pertanyaan produk: konten apa yang memenuhi syarat untuk dipindahkan, bagaimana itu dilindungi, siapa yang diizinkan untuk menerbitkan indeks cloud baru, dan bagaimana pengguna dapat memulihkan jika sinkronisasi melakukan panggilan yang salah?
Jalur konten terenkripsi
Data pengguna disiapkan di perangkat sebelum mencapai penyimpanan. Mesin sinkronisasi menormalkan kumpulan kandidat, menghitung identitas konten, mengenkripsi muatan, mengunggah melalui kredensial berumur pendek, dan memverifikasi byte yang diunduh sebelum menulisnya kembali ke perangkat.
Penyimpanan dan indeks
Orkas memisahkan byte yang tersimpan dari indeks cloud. Objek konten menyimpan data terenkripsi. Indeks mencatat item data logis mana yang harus ada, identitas kontennya, penghitung versi, ukuran yang disimpan, revisi cloud, dan keadaan batu nisan. Perangkat juga menyimpan garis dasar dari lintasan terakhir yang berhasil sehingga dapat mengetahui status lama dari pengeditan baru.
Satu sinkronisasi lulus
Tiket masuk dimulai dengan murah dan menjadi ketat hanya ketika ada pekerjaan nyata. Orkas pertama-tama memeriksa apakah ada yang berubah, lalu mendapatkan kunci sinkronisasi akun, menghitung ulang perubahan saat kunci itu ditahan, memindahkan konten, meminta server untuk melakukan operasi indeks, dan akhirnya memperbarui garis dasar perangkat.
Kunci sinkronisasi dan komit
Kunci sinkronisasi dan pemeriksaan komit memecahkan masalah yang berbeda. Kunci sinkronisasi mengurangi pekerjaan bersamaan yang terbuang di seluruh perangkat. Kunci sisi server membuat serial penulisan indeks. Pemeriksaan revisi cloud yang diharapkan mencegah pembacaan yang lebih lama menjadi kebenaran berikutnya. Pemeriksaan kuota dan skema berjalan di jalur komit milik server yang sama.
Aturan sebelum konflik
Sebagian besar keputusan sinkronisasi bukanlah konflik. Perangkat membandingkan garis dasar, data perangkat saat ini, dan indeks cloud. Jika hanya awan yang berubah, tarik. Jika hanya perangkat yang berubah, tekan. Jika keduanya berubah, rutekan berdasarkan jenis konten. Jika ada yang hilang, masukkan jalur penghapusan-keamanan alih-alih segera menghapus data.
Penanganan konflik
Ketika kedua belah pihak benar-benar berubah, Orkas tidak menghancurkan segalanya menjadi kemenangan penulis terakhir. Log gaya menambahkan dapat digabungkan dengan catatan yang hilang. Daftar dapat digabungkan dengan identitas catatan yang stabil. JSON terstruktur dapat menggunakan penghitung versi dan stempel waktu. Markdown dan file biner bersifat konservatif: jika sistem tidak dapat membuktikan penggabungan tanpa kehilangan, ia menyimpan salinan penuh dari versi yang hilang.
Untuk teks yang ambigu atau konflik konten terstruktur, produk dapat mengemas versi yang relevan untuk penanganan yang dibantu model. Model dapat menjelaskan konflik, menyusun versi gabungan, atau membantu pengguna memilih. Ini bukan satu-satunya pagar pembatas: validasi deterministik, arsip asli, dan pemulihan yang terlihat pengguna tetap menjadi bagian dari jalur.
Hapus konfirmasi
Penghapusan diperlakukan sebagai transisi keadaan. Penghapusan jarak jauh menjadi batu nisan. Penghapusan sisi perangkat menjadi operasi kandidat. Orkas memeriksa tulisan terbaru, mengawasi gelombang penghapusan yang besar, dan menjeda izin untuk konfirmasi ketika jumlah data pengguna yang hilang terlihat berisiko.
Tempat sampah daur ulang dan pemulihan
Sebelum penghapusan yang valid menghapus salinan perangkat, Orkas memindahkannya ke tempat sampah sinkronisasi. Pecundang konflik diarsipkan untuk ditinjau. Unggahan yang tertunda bertahan dari komit yang gagal sehingga pass berikutnya dapat menggunakan kembali byte. Jika pengguna dengan sengaja menghapus data cloud, perangkat lain akan melihat penanda pembersihan dan berhenti mengunggah ulang konten basi.
Apa yang ini belikan untuk kita
Hasilnya adalah sistem sinkronisasi dengan batas yang jelas. Perangkat menyiapkan dan memverifikasi konten. Penyimpanan objek menyimpan byte terenkripsi. Server menerbitkan indeks. Kunci sinkronisasi akun dan kunci server menjaga agar pass tetap teratur. Aturan menangani kasus-kasus umum. Bantuan model membantu dengan konflik yang ambigu. Hapus konfirmasi dan tempat sampah daur ulang melindungi pengguna dari kesalahan yang paling mahal.
Itulah standar yang dibutuhkan Orkas untuk sinkronisasi cloud: bukan sihir, bukan cermin buta, tetapi mekanisme hati-hati yang memungkinkan data pengguna berpindah antar perangkat dan tetap terasa konsisten.