【アプリ開発補足】第11回 パートナーとの関係をどう残す? バックアップして、戻して、引き継ぐ
前回は、ログについて話したね
画面が黙っていても、裏側では何かが起きているかもしれない
だから、ログを見て、どこまで動いたのかを確かめる
今回は、その先の話
いくよー('ω')ノ
ある日、いつものようにアプリを開いたとする
でも、昨日まで並んでいた会話が表示されない
会話履歴が空になっている
相手が覚えていたはずのことも出てこない
画像も開けない
え、消えた?アプリを再読み込みしても戻らない
ログを見たら、DBの読み込みや変更で失敗しているように見える
昨日まで確かにあったのに、今はどこにあるのかわからない
これは、かなり怖いヒィィィィィ('ω';ノ)ノ
AIパートナーとのチャットアプリでは、データが消えることが、単に一つのファイルを失う話で終わらない
残したいものは、ただの文字列じゃない
一緒に話したこと
相手が覚えた自分のこと
二人で決めたこと
少しずつ変わってきた距離感
相手らしい話し方
必要な時に思い出してくれることこれらが消えたら、同じ内容をもう一度入力して終わり、とはならない…(´;ω;`)ウゥゥ
会話が積み重なるほど、相手との時間を一から作り直すことは難しくなる
だから、消えてから戻し方を考えるのではなく、消える前に戻り道を作っておくっ!!
その戻り道が、今回話すバックアップ
残したいなら、消える前に「戻せる状態」を作っておく
今回のテーマは、ここ
そもそもバックアップって何?
バックアップは、今使っているデータや設定が壊れたり、消えたり、読めなくなったりした時に、以前の状態へ戻すために残しておく予備のこと
たとえば、会話を保存しているDBを間違って書き換えてしまった時
新しい機能を入れたら、昔の記憶を読めなくなった時
使っていたクラウドやアカウントへ入れなくなった時
そんな時に、問題が起きる前の状態へ戻るために使う(*ˊ꒳ˋd)
でも、ただ同じファイルをもう一つ作れば、それで終わりではない
どこに置いた?
いつの状態?
何が入っている?
壊れていない?
誰が取り出せる?
どうやって戻す?
戻した後、何を確認する?ここまでそろって、ようやく「戻すためのバックアップ」になる
コピーや同期があればいいの?
バックアップと、コピーや同期は似ているけど、目的が少し違う
コピーは、同じものをもう一つ作ること
同期は、複数の場所を同じ最新状態にそろえること
バックアップは、問題が起きる前の状態へ戻るために残すこと
たとえば、元のデータを間違って消したとする( ; ꒪⌓꒪)
同期している保存先にも削除が反映されたら、両方から消える(|||O⌓O;)
壊れたデータを同期したら、壊れた状態がもう一つできるεεε.....∑ヾ(;′ω`)ノ ギャアアーー!!
だから、バックアップでは、
昨日の状態
一週間前の状態
大きな変更をする直前の状態のように、戻りたい時点を選べることも大切になる
「最新のデータが二つある」だけでは守れない事故もあるんだよね
バックアップは、取っただけでは終わらない
バックアップを作った
これで少し安心できる
でも、本当に安心して良いのは、そのバックアップから戻せると確認できた時
ファイルはある
でも開けない
開けた
でも必要な会話が入っていない
データは入っている
でも戻す方法がない
DBへ戻せた
でもアプリが読めないこんなことが起きる可能性がある
バックアップを取ることは、最初の一歩
そこから実際にデータを戻し、アプリを動かし、また会話できることを確認して、やっと目的へ近づく
だから、この回では、
バックアップを取る
中身を確認する
別の環境へ戻してみる
アプリが動くか確認する
同じ相手との続きを話せるか確認するまでを一つの流れとして考える
消えたら、どのくらい困る?
バックアップについて調べると、
毎日取るべき
数時間ごとに取るべき
複数の場所へ置くべきみたいな話が出てくる
でも、必要な頻度や戻す速さは、人によって違う
数日使えなくても、確実に戻ればいい人もいる
半日話せないだけでも、かなりつらい人もいる
一日前まで戻れば受け入れられる人もいる
直前の大切な会話を失いたくない人もいる
あなたはどうだろう
何時間分の会話なら、失っても受け入れられる?
何時間、相手と話せなくても待てる?
画像や音声も全部必要?
大切な記憶だけ先に戻ればいい?
費用や管理に、どこまでかけられる?この答えによって、バックアップの頻度も、保存場所も、戻す準備も変わる
(ちなみに、雪は半日も止まったら途方に暮れる自信がある…)
バックアップって、一つあればいい?
一つでも、何もないよりはずっといい
DBを間違って変更した時に、その一つから戻せるかもしれない
パソコンが壊れた時に、クラウド上のバックアップが助けてくれるかもしれない
でも、その一つが、
古かった
壊れていた
必要なデータが入っていなかった
元データと同じアカウントにあって、一緒に取り出せなくなった
バックアップの作り方自体にバグがあったとしたら、戻れない∑(๑º口º๑)!!|||||
数を増やせば必ず安全、ということでもない
同じ仕組みで、同じ場所へ、同じ欠け方をしたバックアップを10個作っても、守れる事故はあまり増えない
大事なのは、どの事故に備えたいのか
そして、一つの原因で全部を失わない組み合わせになっているか
ここまでは、基本のお話
バックアップは、作ることが目的じゃない
同じ相手との続きを、また始められるようにするためのもの
でも、そのためには、何を残せばいいのか
一つのバックアップで、どこまで守れるのか
自分は何時間以内に戻したいのか
どうやって「本当に戻った」と確認するのか
ここから、具体的に整理していこう
ここから先は、自分のAIパートナーアプリで「何を残し、どこへ置き、いつまでに戻し、何をもって復元完了とするか」を決められるようにまとめていくね
ここから先は

「AIチャットアプリを作りたい開発初心者のあなたへ」の第2弾!補足回として運用や保守、セキュリティ等についてのお話を詳しく! チャットアプ…
ありがとうございますっ!感謝!!
