たたかいのきろく。

2022-08-11

【DBスペシャリスト】関係従属、候補キー

関係従属

データを特定できる値の関係のこと。
ある属性Xを決めると、他の属性Yの値が一意に決まる場合、「YはXに関数従属している」といい、「X→Y」と表現する。

候補キー

主キーの候補となるキー。データを一意に識別することができるキーのうちの極小の組み合わせ。
たとえば、データに重複のないIDが割り当てられている場合は、あるデータを一意に識別するための候補キーはIDといえる。

タプル(tuple)

データ構造の概念で、複数の要素で構成されているものの組。一対。
たとえば、要素に対して添え字を持つ配列は、要素と添え字の組(タプル)で構成されている。

参考リンク

【DBスペシャリスト】BASE特性、NoSQL、2相コミット

event_note8月 11, 2022

BASE特性

CAP定理では、「一貫性 (Consistency)」または「可用性 (Availability)」のいずれかを捨てるが、障害時も「可用性 (Availability)」を完全に捨てずにサービスを持続させるための特性モデル。厳密さを問わないことで、システム全体の動作を継続させる考え方。
「BASE」は次の文字を取っている。

  • Basically Acailable(※「BASE」の「BA」)
    障害によりシステムの一部が停止しても、システムそのものは継続して動作する。
  • Soft-State
    厳密なデータの整合性は問わない。
  • Eventual Consistency
    一定時間を要するが、最終的には一貫性を成立させることができる。

NoSQL(Not only SQL)

リレーショナルデータベース(RDB)ではないデータベースの総称。その名の通りSQL以外の方法でデータベースを操作できる。RDBと比較してシンプルで高速なため、膨大になりすいデータを扱うケースで有用とされている。

リレーショナルデータベース

データを表形式で管理する従来のデータベース。

2相コミット

1つの処理を実行するにあたり複数のデータベースでそれぞれ処理を行う必要がある場合で、データの一貫性および整合性を保てるように処理を確定する方法。すべての処理が完了した場合は正常終了、処理のうちの1つでも失敗した場合はすべての処理を白紙に戻して異常終了とする( All or Nothing )。

参考リンク

2022-08-09

【DBスペシャリスト】CAP定理(CAP theorem),分散システム(distributed computing system)

冗長構成

サーバのパーティショニング。サーバを複数に分けて管理する手法のこと。障害の影響範囲を小さくしたり、サーバ1台あたりの負荷を軽くすることができる。分散システム(distributed computing system)。

★障害:サーバの分断。ネットワーク上のサーバが分断されても、冗長構成により、他のすべてのサーバまでもが分断・停止する事態を防ぐことができる。

★この特性を活かせていない場合は、冗長構成になっていないと言える。

パーティショニング

データを複数に分けて格納すること。故障の影響範囲を狭めることができる。

ノード

サーバにおける「ノード」は、サーバ1台分の単位を表している場合がある。複数に分けたデータのうちの1つ。

CAP定理(CAP theorem)

冗長構成において、次の3つの状態を同時に満たすことはできないという定理。

  • 一貫性 (Consistency)
    矛盾がないこと。すべてのノードサーバにおいて、あるデータのアクセス結果が同じである。
  • 可用性 (Availability)
    使用できること。データの読み込みと書き込みが常に可能である。
  • 分断耐性 (Partition-tolerance)
    パーティショニング。ノードサーバの分断(=障害)が発生しても、他のノードサーバは継続して動作する。
What is the CAP Theorem?

★CAP定理は、冗長構成における障害時の特性を説明する。「一貫性 (Consistency)」または「可用性 (Availability)」のどちらを重視したパーティショニングであるのかによって、その冗長構成の特性を説明する。

Availability + Partition-tolerance

障害時はデータの不整合が発生する。データの読み書きが可能なため一定時間内であれば一貫性を成立させることができる。

Consistency + Partition-tolerance

障害時においてはデータの読み書きが制限される。データの読み書きのために応答待ちの一時停止状態になる。

Consistency + Availability ※補足

障害が発生すると、システムが動作しなくなる。単一サーバで操作する場合など、冗長構成ではないケース、非分散型システムで当てはまる。

todo: ユースケースについて考える。

参考リンク

DBスペシャリスト午前Ⅱ:令和2年度#1【過去問回答】

正答 12 問 / 全 25 問

1.イ
2.ア→イ
3.イ→ウ
4.エ
5.ウ
6.イ→ア
7.エ→ア
8.イ→ウ
9.エ
10.イ→ウ
11.エ
12.エ→イ
13.イ→エ
14.イ
15.エ
16.ア
17.ア
18.エ→イ
19.ア
20.イ
21.イ→ア
22.ア→イ
23.ア→ウ
24.ア→イ
25.エ

2022-06-20

【携帯】ソフトバンク→ワイモバイル→日本通信SIM、乗り換え記

序章 GooglePixel がほしい!

2021年某日、GooglePixel5a が発売。
人生初の格安スマホに嫌気がさしていたのもあり、次こそは高性能な Android スマートフォン端末を使いたいと思っていたため、さっそく店舗に赴いた。

ちなみに、以前、携わっていた Android アプリの開発現場では、GooglePixel 端末が少ないことが話題になっていたのもあり、個人的に GooglePixel という端末が気になっていた。

もう1つ蛇足すると、格安スマホも Android アプリの開発のために持っておきたかったので購入した経緯がある。あまりにも快適ではなかったので、デベロッパーとしては買ってみて良かったとは思っている。ちなみに端末は AndroidOne で、ワイモバイル店舗で購入した。

第一章 ソフトバンクからワイモバイルへ乗り換え

ソフトバンク店舗へ向かい、GooglePixel5a 端末の購入と契約した。

ソフトバンクよりもワイモバイルの方が料金が安いし、使っているエリアでは特に気になる点もなかったので、はじめからワイモバイルへ乗り換えることは決めていた。

ソフトバンクの店員さんによると、ソフトバンク契約から3か月は乗り換えできないとのことだったので、きっちり3か月が経った後にワイモバイルへ乗り換えた。

手続きはすべてオンライン上で。eSIM にしたため、郵送物を受け取るようなこともなく、自宅で手元の操作だけで、意外と簡単に済んだ。強いて言えば、GooglePixel5a の SIM ロック解除で少しつまづいたくらい。

ワイモバイルで契約申請をし、その後に受け取ったメールから手続きをすすめ、SIM ロック解除の段階のとき。MySoftBank の「SIMロック解除手続き」で、「製造番号(IMEI番号)の入力」を行い、「次へ」ボタンを押すと、「入力された番号の製品はSIMロック解除対象外です。」と表示され、これが解除されているのかされていないのかがどうもよくわからなかった。
どうしたものかと、ソフトバンクの Web サイトにあるチャット問い合わせで確認すると、すぐに、端末は解除された状態で渡されており、SIM ロック解除の手続きは必要ないとの回答を得た。そういうことだったらしい。

そんなこんなで、自宅で乗り換えはすべて完結した。料金もちゃんと安くなった。よかったよかった。

第二章 ワイモバイルから日本通信SIMへ乗り換え

ワイモバイルで満足した生活を送っていたところ、2022年某日、楽天モバイルの料金改定が大話題になった。0円プラン的なものが廃止された例のやつだ。

楽天モバイルはむかし同じ生活圏の知人が使っており、LINE のメッセージ送受信にタイムラグがあったり、いつも通話の音声がおかしかったりするのを目の前で確認していたので、まったく縁を持たなかった。ので、自分には関係のない話ではあったけれど、そこでもう1つ話題になったのが乗り換え先で、目に留まったのが日本通信SIMだった。

当時はすっかり在宅ワークで、外で携帯を使う機会が本当になくなっていた。
とはいえ、滅多に機会がないにしても、たとえば旅先や緊急時など、外で携帯を使うときは繋がっていないと困る状況が自分には多かったので、ワイモバイルの安定供給を手放してよいのか、緊急時のインフラとして必要出費じゃないかともちょっと思った。思ったけど、好奇心に勝てず。

さっそく日本通信SIM の Web サイトから乗り換えを申請。ソフトバンク→ワイモバイル時もそうだったが、乗り換え先にだけ連絡をすれば、あとは勝手に元のキャリアの解約も済んでしまうのは気がラクだ。

GooglePixel5a 端末では eSIM の使用可否が不明だったので、おとなしく SIM カードを利用した乗り換えを選択。そのため、申し込み後は SIM カードが送付されるのを待つ必要があった。

数日後、SIM カードを受取り、もう1度オンライン上で簡単な手続きをすすめ、GooglePixel5a 端末の電源を落とした後、端末内の SIM カードを交換する作業をした。これもすんなりうまくいった。