Bagaimana cara Dropbox menentukan kapan harus menimpa file lokal vs menimpa file cloud?

10

Ketika Dropbox menemukan file di komputer seseorang yang berbeda dari versi cloud dari file yang diketahuinya, bagaimana cara memutuskan apakah harus menyinkronkannya dengan menimpa file lokal dengan file cloud atau menyinkronkannya dengan menimpa file cloud dengan file lokal?

Untuk mengulangi:

  • Jika salinan server dan salinan lokal file berbeda,

  • dan jika program dropbox diluncurkan dan selesai disinkronkan,

  • maka kedua file ini akan sama.

Kedua file ini juga akan identik dengan salah satu file lama. Pertanyaan saya adalah mana --- salinan server lama atau salinan lokal lama? Bagaimana keputusannya?

Ein
sumber
Mmmm, tidak yakin apakah ulang kata-kata Anda membuatnya lebih jelas. Tapi saya pikir Dropbox menggunakan (versi) file-checksum (dan mungkin mengubah tanggal) untuk melihat apakah file perlu diunggah. (Memiliki yang lama di database lokalnya). Jika checksum berbeda maka berlaku untuk unggahan. Jika online ada versi dengan tanggal yang lebih baru dan checksum yang berbeda dari yang lama di database lokalnya, orang lain pasti telah mengubah file dan file tersebut akan diganti namanya dengan menambahkan "salinan yang bertentangan". (tentu saja ini spekulasi dan saya belum menemukan konfirmasi online ini)
Rik

Jawaban:

5

Saya tidak tahu teknis dari ini, tetapi saya memiliki situasi di mana saya dan asisten saya mengoperasikan dropbox umum dengan dua komputer berbeda yang hidup dan mati pada waktu yang berbeda.

Jawaban atas pertanyaan Anda adalah ketika Anda terhubung dengan Cloud, Dropbox tahu (entah bagaimana) bahwa versi yang saat ini di Cloud awalnya disinkronkan dari komputer Anda. Jadi, jika versi komputer Anda berbeda, itu adalah versi yang akan disinkronkan ke Cloud.

Jika dua komputer (katakanlah A dan B) menggunakan dropbox yang sama, dan masing-masing membuat perubahan offline, maka komputer pertama menyala (katakanlah itu komputer A) akan menghasilkan sinkronisasi pembaruannya ke cloud. Jadi sekarang akan ada versi yang sama (berisi pembaruan A) di A dan Cloud.

Ketika komputer B dinyalakan, Dropbox akan menyadari bahwa versi file B dari komputer tidak hanya berbeda dari versi cloud saat ini (yang normal) tetapi berbeda dari terakhir kali Dropbox disinkronkan dari itu. Jadi jika ingin menyinkronkan file B ke versi A, perubahan B akan hilang. Jadi yang dilakukan Dropbox adalah membuat salinan versi B dan menambahkan "file yang bertentangan B" ke nama file. File asli B kemudian disinkronkan ke pembaruan A. File yang bentrok, yang berisi pembaruan B, kemudian disinkronkan ke cloud dan kembali ke A.

Penghapusan, dan konflik yang timbul dari sinkronisasi selektif, ditangani dengan cara yang sama

Konflik juga muncul jika salah satu komputer tidak menutup file sebelum mematikannya. Penyinkronan tidak terjadi pada file terbuka, jadi dalam hal ini pembaruan B akan menjadi yang disinkronkan, dan file terbuka A akan berakhir sebagai konflik. Ini bisa menjadi rasa sakit yang sangat besar untuk diselaraskan, tetapi ini adalah kesalahan kami, bukan kesalahan Dropbox.

Semoga ini membantu.

Margie
sumber
1

Saya memiliki informasi parsial yang mulai menjawab pertanyaan ini. Saya tidak yakin seberapa bermanfaat hal ini bagi pengguna berpengalaman, tetapi saya tahu pengguna yang lebih baru seperti saya akan menganggap laporan ini bermanfaat.

Sebagai tambahan, menyelesaikan masalah ini membuat saya semakin bingung bagaimana pertanyaan yang sangat mendasar tidak memiliki jawaban resmi atau otoritatif. Kurangnya dokumentasi atau diskusi yang tersedia memberi tahu saya bahwa pengguna Dropbox baik-baik saja dengan mengambil apa pun yang sebenarnya dilakukan Dropbox seperti apa yang mereka harapkan untuk dilakukan dalam keadaan seperti itu. (yaitu, saya bahkan tidak akan mengatakan bahwa pengguna memiliki harapan konkret bahwa mereka menyimpan dropbox)

Contoh bagaimana perilaku Dropbox:

Dalam contoh saya, komputer A dan komputer B tidak pernah dinyalakan secara bersamaan. Bayangkan seorang pengguna yang bekerja secara non-kolaboratif di rumah dan bekerja, dengan masing-masing komputer dimatikan sebelum kembali ke yang lain.

Apa yang terjadi ketika folder dropbox satu komputer tidak identik dengan folder cloud dropbox? Untuk kejelasan maksimum, saya lebih suka membayangkan bagaimana dropbox.exebereaksi ketika satu komputer memiliki folder dropbox kosong . Akan dropbox.exemenganggap file-file yang hilang itu sebagai "penghapusan" (yang berarti akan menghapusnya dari folder cloud dropbox) atau "kedaluwarsa" (yang berarti akan membuat salinan baru dari mereka di dalam folder dropbox lokal).

  1. Mulailah dengan situasi di mana perilakunya jelas terlihat: Komputer A menyala dan komputer B mati. Jika dropbox.exesedang berjalan dan perubahan dilakukan ke A, maka ini disebarkan ke folder cloud dan bukan sebaliknya. Jadi pada saat ini, jika folder A dikosongkan, maka file / folder yang hilang ini dianggap "penghapusan" dan folder cloud dikosongkan.

  2. Misalkan B memiliki folder dropbox kosong, dan A membuat file dan menyinkronkannya ke folder cloud dropbox. Jika kita beralih ke komputer B, situasinya dropbox.exeakan menafsirkan folder dropbox kosong B sebagai "ketinggalan zaman", dan salinan baru dari folder cloud dibuat pada B.

  3. Sekarang untuk yang kurang jelas: Misalkan kita membuat beberapa perubahan dalam B dan menyinkronkan perubahan ini ke folder cloud dropbox. Jika kita beralih ke komputer A dan --- tanpa menjalankan pertama kali dropbox.exe--- kami menghapus hal-hal di dalam folder dropbox A, apa yang akan berjalan dropbox.exesetelahnya? Dalam situasi ini dropbox.exeakan menafsirkan file / folder yang hilang sebagai penghapusan baru yang harus disebarkan ke folder cloud dropbox.

Saya merasa membingungkan bahwa dalam situasi 2 dan 3 Anda telah dropbox.exedihidupkan dan mengalami kondisi "segar" yang sama pada komputer baru yang berbeda dari folder cloud, tetapi itu akan bertindak berbeda.

Jika Anda ingin membuat aturan yang menjelaskan cara kerjanya dropbox.exe, Anda jelas tidak dapat menganggap itu adalah fungsi dari tiga variabel: (1) apa yang dilihatnya di komputer saat ini, (2) apa yang dilihatnya di folder cloud, dan (3) ) komputer mana yang terakhir disinkronkan dengan folder cloud. (!!!)

Mungkin variabel tambahannya adalah Dropbox mengingat apa yang setiap komputer terakhir sinkronkan ke folder cloud. Dalam situasi 2, kita dapat mengasumsikan komputer B terakhir kali disinkronkan, itu menyinkronkan folder kosong. Dalam situasi 3, Dropbox ingat bahwa terakhir kali komputer A disinkronkan, itu menyinkronkan folder yang berbeda dari apa yang saat ini ditemukan di dalam folder.

Ein
sumber
1
Bukannya dropbox.exehanya memeriksa direktori offline dan online. Seperti yang Anda nyatakan di paragraf terakhir, dropbox menyimpan catatan setiap file yang disimpan secara lokal dan online sehingga tahu persis kapan / apa (dan kapan / apa tidak) untuk disinkronkan. Lihatlah dropbox-dir saya di C:\Users\<name>\AppData\Roaming\Dropbox. Anda melihat banyak .dbxfile di mana dropbox akan menyimpan informasi itu (bukan hanya tanggal tetapi juga checksum dll ...). (Hapus file-file itu dan dropbox akan secara serius mengacaukan Anda direktori dropbox online dan offline;)
Rik
Saya tidak tahu bagaimana Anda mengharapkan Dropbox untuk melacak perubahan saat itu tidak berjalan sama sekali. Dalam Skenario 2, Anda menambahkan file ke Dropbox, S3 menghapus file dari Dropbox. Mereka adalah dua skenario yang berbeda dan harus berperilaku berbeda. Tidak yakin dari mana asal muasal kebingungan Anda. Dropbox akan melakukan upaya terbaik berdasarkan apa yang ada di cloud dan pada hard drive Anda pada saat Anda menghidupkan Dropbox. Cara terbaik untuk menggunakan Dropbox adalah dengan terus menggunakannya. Jika Anda harus mematikan komputer, berhati-hatilah dengan penghapusan. Setidaknya DropBox memberi Anda pengembalian 30 hari. Anda pikir Dropbox buruk, coba OneDrive.
Minggu
"Saya tidak tahu bagaimana Anda mengharapkan Dropbox melacak ketika tidak aktif" <- bisa dibilang Anda mengharapkannya, jika Anda mengharapkan S3 bertindak berbeda dari S2. "Jika Anda mematikan komputer, berhati-hatilah dengan penghapusan" <- Sebagai pengguna dropbox, ini adalah peringatan yang ingin saya lihat di dokumentasi. Sangat mudah bagi Anda untuk mengatakan "itu harus berperilaku berbeda" karena Anda tidak menyatakan apa yang harus dilakukan. Apa yang mengganggu saya adalah saya tidak dapat menemukan dokumentasi yang sebenarnya TIDAK menyatakan apa yang harus dilakukan. Inilah mengapa saya bingung: dipaksa untuk menebak variabel apa dan salah!
Ein
Ini sebenarnya adalah pertanyaan yang sangat relevan dan saya datang ke sini dari googling pertanyaan itu. Laptop saya belum sepenuhnya disinkronkan dengan Dropbox setidaknya selama satu tahun karena saya kehabisan ruang. Jadi saya menggunakan sinkronisasi selektif. Sekarang saya telah memutakhirkan HD saya ke SSD yang lebih besar dan saya ingin menyinkronkan semuanya lagi. Di banyak file hilang di beberapa folder di laptop saya dan saya khawatir Dropbox akan salah menafsirkan apa yang harus dilakukan ketika saya menyinkronkan. Apakah ini akan menambahkan file dari cloud ke folder lokal - atau malah akan menghapus file yang hilang dari cloud? Saya tidak begitu yakin!
marlar
-2

Dari FAQ Dropbox :

Tidak seperti aplikasi desktop Dropbox, yang secara konstan memeriksa file Anda untuk perubahan, aplikasi seluler biasanya disinkronkan hanya berdasarkan permintaan. Ini mencegah Dropbox dari menghabiskan semua bandwidth dan ruang Anda.

Bagaimana cara kerjanya?

Itu juga disebutkan di situs mereka :

Sebelum mentransfer file, kami membandingkan file baru dengan versi sebelumnya dan hanya mengirim potongan file yang berubah. Ini disebut "binary diff" dan berfungsi pada semua jenis file. Dropbox mengkompres file (tanpa kehilangan data atau kualitas) sebelum mentransfernya juga. Dengan cara ini, Anda juga tidak perlu khawatir tentang Dropbox mengunggah ulang file atau membuang-buang bandwidth.

Karan Raj Baruah
sumber
1
Saya bertanya tentang pertanyaan yang lebih mendasar yang tidak terkait dengan kompresi / diff ... bagaimana cara mengetahui kapan file lokal harus menjadi "versi terbaru" dibandingkan dengan apakah file lokal "kedaluwarsa".
Ein
Ini tidak berhubungan dengan diff. Dropbox API tahu membandingkan perbedaan ini ketika file tertentu menjadi "ketinggalan jaman" dan memutuskan untuk menyinkronkan file tertentu. Selain itu saya tidak dapat menemukan informasi lebih lanjut. Dropbox sendiri sebagai sumber tertutup belum membuat lebih banyak informasi publik.
Karan Raj Baruah
Saya telah mengedit pertanyaan untuk mengulangi apa yang saya tanyakan, karena mungkin ada beberapa kebingungan yang terjadi. Juga, saya tidak dapat menguraikan kalimat kedua Anda.
Ein