投稿日September 3, 2022最終更新September 4, 2022カテゴリーtechタグデータベースデータベースとはデータベースの種類リレーショナルデータベースとNoSQLスキーマロールバックロールフォワードデータベース基本知識・用語まとめ|サクッと始めるデータベース構築【SQL / NoSQL / newSQL】データベースと聞くと、皆さんはどんな印象を持ちますか? 難しそう。 バックエンドエンジニアの人だけが扱うもの。 設計の修正が大変そう。 色々な印象を持たれるかもしれませんが、この世のシステムにおいてデータベースの知識は必要不可欠な存在となってきました。バックエンドエンジニアやデータサイエンティストだけでなく、フロントエンドエンジニア・マーケター・経営者などの幅広い職種の方々も知っておく必要があります。 この記事では、データベースに関わるコミュニケーションを取るために必要なデータベース用語を解説していきます。 データベース。 データの「追加、読込、更新、削除、検索、分析」などの処理を目的として蓄積された情報そのもの。 Relational Database リレーショナルデータベース、関係データベース。 複数の表形式によって管理されたデータベース。 Database Management System データベース管理システム。 データベースのデータを管理するためのシステム。届いた命令に従って、データの「追加、読込、更新、削除、検索、分析」などの処理を実施。 Relational Database Management System 関係データベース管理システム。 RDBを扱うことができるDBMS。Oracle Database, IBM Db2, Microsoft SQL Server, MySQL, PostgreSQL, H2 Database, MariaDB, SQLiteなどがある。 Database Administrator データベース管理者。 管理者権限を持ち、DBMSの導入や運用などを行い、データの管理を行う人。 一般的には「問い合わせる」という意味。 IT業界では「データの処理要求(データの検索や更新など)をDBMSへ送信する」という意味。 【銀行振込のトランザクションの例】 銀行の振り込みを行うとき、「振り込み元の口座における残高の減算処理」と「振り込み先の口座における残高の加算処理」は分割することができません。 なぜなら、減算処理した直後に停電が起きて、加算処理が中断されるとデータの整合性が取れなくなってしまうからです。 そのため、トランザクションという分割できない一連の流れに乗せて処理を実行します。 一般的には「図式、図解、概要」という意味。 IT業界では「どのような種類のデータをどのような構造でデータベースに格納するかを定義した情報」という意味。 ドイツ語読みで、シェーマと表現されることもある 「データが存在しない」という表現の一種。 Javascriptなどの言語で用いるundefinedは未定義を表し、これとは異なる概念。 Pythonなどの言語で用いるNoneとして表現されることもあるが、こちらは未定義という概念も包括することがあり、微妙にスコープに違いがある。 データベースのトランザクション処理において、実行した処理を取り消して、元の状態に戻す行為。 DBMSが自動的に行ってくれることがほとんどで、人が人力で実施することは少ない。 「後退復帰」とも言う。 停電などの障害が起きた時に、データベースのバックアップ地点まで戻し、それ以降の処理をログファイルから順番に実行していき、障害発生直前の状態まで復旧する行為。 「前進復帰」とも言う。 新しい学びはあったでしょうか? もしもたくさん学びがありましたら、幸いです。 次の章では、「SQL / NoSQL / NewSQLの違い」を解説したいと思います。zenn.devはじめてでもわかるデータベース完全ガイドブック - Qiitaこの記事は Nuco アドベントカレンダー の16日目の記事です。 はじめまして、 higasun です。 今回の内容は、 データベースについてです。 種類や歴史に始まり、 実際に作ってみる ところまでやってみることで理解を深めていきます。 データベース初心者でも 「データベースの基本を理解して、簡単なSQLなら書ける!」 くらいの状態になれる仕上がりだと思っていますので、最後までお付き合いください。 ※もし間違いなどありましたらコメントで教えていただけると幸いです。 データベースとは、 構造を持ったデータの集合のことです。 平たく言うと、 あるルールに従って格納・取り出されるデータの集まりです。 データベースには複数の種類があり、それぞれにデータの扱い方のルールがあります。 最も最初に登場したデータベースは50年以上も前に遡ります。 ここでは、様々なデータベースを登場した時系列順に紹介していきます。 大きく分けると、 ナビゲーショナル、 リレーショナル、 ポストリレーショナル という3つの時代に分類できます。 歴史上最初に登場したのは、 ナビゲーショナルデータベースと呼ばれるものです。 データを検索する際に、 データからデータへと誘導(navigate)を行う という特徴があります。 階層型データベースは、データを 樹形図のように階層に分けて管理するデータベースです。 上から下に向かってデータ間で 親子 という関係があり、下の例では、弦楽器という親ノードがギターとベースという子ノードを持っています。 また、子ノードは1つの親ノードを持つことしかできないため、 ノードに対する経路が1つに定まりアクセス速度が速くなるという特徴があります。 ただ、 データの登録・削除が起こるたびにノードへの経路が変わる ため、データ管理が柔軟に行えないというデメリットがあります。 ネットワーク型データベースは、下のように データとデータがグラフ状に繋がっているものです。 (競プロをやったことがある人には馴染み深いかもしれません。) 階層型データベースとは異なり、 ノード間を自由に接続することができます。 ただ、、階層型と同様に データの登録・削除が起こるたびにノードへの経路が変わるqiita.com