引き続きBitcasaを試しているのだが、妙な状況になったので一応書いておく。
実は100GB超えデータをアップロードしていたのだが…
その途中で「起動ディスクの容量がない」という警告がでたので、慌てて調べてみると確かに残り1GBを切っていて、やばい状況。もともとSSDなので容量は20GB程度しか残っておらず、それがどういうわけかなくなりつつあった。
どう考えてもキャッシュだろうと思い、まずはアップロードを中止して再起動してみた。
再起動してもキャッシュが消えないようだった。そこでライブラリ内にあるBitcasaのキャッシュをみてみると、どうやら消えた20GBの容量はここにあるようだった。
キャッシュの場所はここ。
/Users/(ユーザー名)/Library/Caches/com.bitcasa.Bitcasa
このキャッシュディレクトリ内は当然キャッシュにすぎない(と思った)ため、全部消しても問題ないと判断して消したのだが、消してからBitcasaにアップしてあるファイルが開けなくなった。もともと暗号化しているファイルだったから、復号できなくなったということ?
Bitcasaにある容量とキャッシュを比べてみると、キャッシュの方が小さいけれど、キャッシュ20GB、保存容量40GBなので半分しか違いがない。キャッシュファイルの中身はよくわからないけど、これがないと開けないとなると、この容量分を考慮した分しかBitcasaに保存できないということになる。これじゃ無制限とはとてもいえないじゃないか…。
本当のところはまだ何もわかっていない。単に起動ディスクのBitcasaキャッシュを消したら、Bitcasaに保存したファイルが開かなくなったと言うことだけ。しかしコピー中にキャッシュが貯まり、そのキャッシュが結構な容量まで膨らむとなると安心しては使えないじゃないか。
なお、暗号化かなにかで使っていただろうBitcasaのCPU大食いは全く見られなくなった。もちろんBitcasaアプリは動いているのだが。
容量無制限のカラクリってまさか起動ディスクのキャッシュなの!?
うーん、昨日の喜びが一転して悲しみに。これはどうにも使えない可能性が高いぞ。。。。
■2012/1/18追記
クラウドディスクにコピーする際に内蔵ドライブに溜まるキャッシュは、その後時間と共に減っていき、最終的にはアプリで設定したキャッシュの量まで下がるようです。
従って、手動でキャッシュを削除してファイルが開かなくなった現象も、そのままにしておけばこの問題は解決したと言えますね。まぁ僕の勇み足ではありますが、大容量のコピーにそんな制約があるとは普通わからないですよね?
ただ、コレとは別に、キャッシュを削除することによって前日にコピーしておいたものまでファイルが開けなくなるのは理由がよくわかりません。何かしらの情報がキャッシュに残ってるんでしょうね。最低のキャッシュが1GBというのに関連するのかも。
結論として、以下のことが言えそうです(まだ確実に検証できていませんが)。
- クラウドディスクにアップロード(コピー)するとその分の容量が内蔵ドライブに一度キャシュされる
- すなわち、内蔵ドライブの残容量より大きいファイル容量をコピーしてはいけない
- その後小さいチャンクへの分割と暗号化にCPUパワーを大きく使う
- そのチャンクへの分割と暗号化処理が終わればアップロード処理が終わらなくてもCPUは次第に落ち着く
- そしてアップロードが済んだキャッシュは都度消えていく(アプリで設定した容量以下には減らない)
そもそも大きなファイルをアップしなければ、あまり気にしなくていいことかもしれません。その場合はCPUパワーを使ったり、内蔵ディスクを圧迫することもなく、暗号化も含めて最終的なアップがすぐに完了するからです。
Bitcasa、まだまだ謎が多いサービスですが仕組みがわかればうまく活用できそうな気がしてきました。
[qa]
直接Finderでキャッシュフォルダを消したんですか?
単なる推測になってしまうのですが、設定画面にはちゃんとキャッシュを消すためのボタンが用意されているので、クライアント側の意図していない方法でキャッシュが消されてしまったのが原因ではないかと思っているのですが。
[…] Bitcasaの増え続けるキャッシュの謎 日曜日, 1月 15th, 2012 つい最近一時期無限ストレージで話題になったBitcasaのβテスター招待状がついに到着し、今日から実際に運用してみています。まあ使い勝手なんかに関してはまた別の機会に書くとして、とある方がこんな記事を書いていらっしゃいました。どうやら、Bitcasaを使っているうちにローカルの空き容量をほとんど持っていかれたというのがだいたいの内容です。「大変だなー」とか思いながら見てたら自分のローカルも残り1GB切ってました。先ほど挙げた記事によると、空き容量が食われている原因は[/Users/(ユーザー名)/Library/Caches/com.bitcasa.Bitcasa/Data/bks]にあるようでして、消去したらBitcasa上のファイルにアクセスすることができなくなったようです。ここから30分程度観察した上で推測したことを書いていきます。あくまで推測ですので、これから検証していく必要があると思われます。 […]
はい、その通りのようです。キャッシュをむやみに消してはいけなかったですね。でも内蔵ドライブに猶予がない状況ではそれをやる以外に考えが浮かばなかったです。
ということで本日、その旨追記しました。Bitcasaは僕が思うようなそんな安っぽいシステムではありませんでした。。
おそらくファイルを暗号化するために、その自分自身のファイルを使用しているためかと思われます。
おそらく次のような動作をしていると思います
(1)自ファイルをキャッシュにコピー
(2)コピーしたファイルで暗号化したファイル作成、このファイルをアップロード(コピーしたファイルから暗号化のための鍵ファイルを生成する2段階方式にしている可能性もあるかと思います、どちらにしても鍵ファイルもキャッシュとして扱われていると思われます)
(3)コピーしたファイルと元ファイルを比較し、同一なら削除
このためキャッシュを(2)の前段階で消してしまうと、アップロードしたデータは復号できなくなると思われます
(備考)自らのファイルで暗号化することによって、他の方とファイルが一致している場合にサーバ側では重複保存されない仕組みになっていると聞いたことがあります。