Toma(とま)のゲーム日記

MHNOW、MHWIB、ELDEN RING、WILD HEARTSなどの役立ち情報をアップしていきます。ツイッターでの懸賞応募、自炊、家庭菜園といろいろ始めました。

記事内に商品プロモーションを含む場合があります。

雑記_お名前ドットコムでデータベースを作ってみる、その1(新規データベースとユーザーの追加)

目次_お名前ドットコムでデータベースを作ってみる

モンハンNOWでデータ解析をするにあたり、Excelだとかなりやってられないのでデータベースを使用することにした。

今回はデータベースの作成方法になります。

 

データベースで何が出来る?

簡単に言えば、下記のようなことができます。

・データをルールに沿って整理して管理する
・多くの人が同時にデータを共有する
・欲しいデータを効率的に検索する
・保存されたデータの分析や加工を行う
・他のシステムと連携させ、マーケティングなどのサポートに活用できる

NTT東日本のクラソルより引用

引用元:データベースとは?効果的な活用に役立つ基礎知識をわかりやすく解説|コラム|クラウドソリューション|サービス|法人のお客さま|NTT東日本

 

使用例

ちょっとわかりにくいので、例を出しましょう。

例えば、ある鉄道の1日乗降客数がデータして収集されているとします。

・その中から一番乗降客数の多い駅、少ない駅のトップ5を抜き出す

・1年のうち利用者が多い時期、少ない時期を抜き出す

こんなことができるようになります。

 

溜めておいたデータから必要と思われる部分だけ抜き出す…そして加工することによりさらに有益なデータとなる…これがデータベースの活用法の一つです。

 

データベースサーバーの種類

よく知られている4種類について解説します。

 

階層型

 データのことをノードと呼び、あるノードから別のノードを派生させて、ツリー上に展開してデータを保存しているデータベースのことです。階層型データベースでは、派生前のデータを親ノード、派生後のデータを子ノードと呼び、親ノードは複数個のノードを持つことができ、子ノードは1つだけ親ノードを持ちます。

 メリットはアクセスするための速度が速いことがあげられます。

これは、データの参照などのデータを操作する際にデータにアクセスするためのノードのルートが限定されるので、データにアクセスするための速度が速くなります。

関連性の高いデータの格納や、素早いデータの検索が必要なサービスの構築などにおすすめです。

 

 デメリットとして、複数の親ノードが必要なデータの入力の難しさや、データを管理する際の柔軟性に欠けていることなどがあります。

基本的に親ノードは子ノードに対して1つだけなので、複数の親ノードが必要な場合には重複登録が必要になります。そのため、不自然なデータになってしまいます。

また、データの追加や削除などの際に、ルートを再登録する必要があり、データを管理するための柔軟性にも欠けています。

 

関係型(リレーショナルデータベース)

リレーショナルデータベースは、レコードという行とフィールドという列で構成され、テーブルと呼ばれる表形式のデータベースです。表形式のデータを互いに関連付けて、データ同士の関連性から新しい表を作成したりでき、エクセルを扱うように使用できるのが特徴です。

 メリットは柔軟なデータの取り扱いができることや、複雑なデータの関連性を扱えること、データ処理の一貫性を保てることなどです。

特定のデータを操作したり、条件を付けてデータを検索することができ、また複数の表と組み合わせて、より複雑なデータの取り扱いも可能です。

 

 デメリットはプログラムが複雑化しやすく、処理速度が遅くなる傾向にあるというデメリットがあります。複雑な関係性を持つデータの格納ができるがゆえに、大規模なデータを扱ったりする際に、プログラムが複雑になってしまいがちです。

 

ネットワーク型

 階層型データベースと同じようにデータをノードで表し、あるノードから別のノードを派生させて、ノードのつながりが網目状になるように展開されるデータベースのことです。階層型データベースとは異なり、1つの子ノードが複数の親ノードを持てるような構造で、1つの親ノードも複数の子ノードを持てます。

 メリットは階層型データベースで問題になっていたデータの重複を避けられるという点。

ネットワーク型データベースは、子ノードが複数の親ノードを持てるようになっており、複数の要素を持つ子ノードを1つのノードだけで表現でき、データの重複登録を防止できます。

そのため、階層型データベースよりも自然な形でデータを格納が可能です。

 

 デメリットは階層型データベースと同じく、データの柔軟な取り扱いが難しいことなどです。

プログラムがデータ構造に依存していて、データ構造を理解していないとデータへのアクセスが難しく、ネットワーク型データベースの使用には、高度な知識が必要です。

 

NoSQL

 データベースを操作するための言語であるSQLを使用せず、リレーショナルデータベースで扱うのが難しい大規模なデータに対応するためのデータベースです。

NoSQLにはさまざまな種類のものがあり、キーバリュー型やカラム指向型、ドキュメント指向型、グラフ型などの種類があります。

SQL:構造化照会言語 (SQL) は、リレーショナルデータベースに情報を格納および処理するためのプログラミング言語のこと

 メリットはリレーショナルデータベースよりも大規模なデータを扱えることや、リアルタイムに近い応答性能があることなどのメリットなどです。

リレーショナルデータベースよりも大規模なデータを扱えるため、ビッグデータの処理などに使用されています。

また、高度なデータベースチューニングの技術がなくてもデータの高速な処理が可能で、高い技術を持つエンジニアがいなくても使用可能です。

 

 デメリットはデータの整合性が保てないことや、データの加工が難しいことなどが挙げられます。

NoSQLは、同時実行制御のための機能が緩く、大量のデータに素早く対処するために、データの整合性を保つのが難しくなっています。

また、NoSQLはSQL言語を使用しないので、複雑な条件を指定した検索などができず、データの加工が難しくなっています。

 

お名前ドットコムのデータベースは?

MySQL

SQLは先ほどの関係性(リレーショナルデータベース)がたくさんあると思っていたければ分かりやすいです。

そして、MySQLがインストールされており、利用可能です。

MySQLOracleが開発してサポートするオープンソースSQLリレーショナルデータベース管理システムのこと

 

データ操作ツールもインストール済み

MySQL操作ツール「phpMyAdmin」が使用可能となっており、簡単にデータを扱うことができます。

www.kagoya.jp

 

実際にデータベースを作ってみよう

データベース作成画面へ移動

画面左側にあるメニューから、【データベース】をクリック

 

続けて【データベース追加】をクリックする

 

データベースの名称とメモを入力し、【確認する】をクリック


内容を確認し、問題が無ければ【完了する】をクリックする

これで、データベースの作成は完了しました。

 

続けてユーザー登録

データベースを使用するためにはアクセス可能なユーザーが必要です。

左側のメニューから【データベース】をクリックして、一覧表示後に作ったデータベースの詳細をクリックします。

こんな画面が表示されるので、下にスクロールします。

 

表示された画面で【ユーザーを追加】をクリックします

必要項目を入力し、

入力したら、IDとパスワードを控えてから…【確認する】をクリック

 

表示された画面の内容を確認して、【完了する】をクリックする



 

完了画面が出れば、終了!

念のため、ユーザー登録状態を確認

左のメニュー、データベースをクリックして、ユーザー一覧から該当データーベースの【詳細】をクリックする

 

表示された画面に追加したユーザーなどの情報が表示されます。先ほどの登録内容と一致していればOKです。

 

今回はここまで

 

目次_お名前ドットコムでデータベースを作ってみる