モダンSQL
書籍情報
発売日 : 2023年11月29日
著者/編集 : 石川 博/土田 正士/遠藤 雅樹/山本 幸生
出版社 : 共立出版
発行形態 : 単行本
ページ数 : 496p
書籍説明
内容紹介
本書は、SQLによるデータ管理の基本機能とデータ分析等の拡張機能、およびビッグデータ時代における仮説解釈の基本概念とそのための基本技術を解説する。 現代の情報システム、特にビッグデータを用いる情報システムは、データ管理とデータ分析という異なるサブシステム(デジタルエコシステム)からできている。この事実を前提に、データ管理を超えるSQLの新しい側面(機能と応用)、すなわちモダンSQLを紹介し、進化するSQLの姿、あるいはSQLの真の姿を伝える。また、ビッグデータ時代における仮説生成と仮説解釈の基本概念とそのために必要となる基本技術についても具体的に解説し、前著『仮説のつくりかた』(2021年・共立出版)を補完する。 具体的には、仮説の生成・解釈の基本概念を導入したあと、SQLによるデータ管理(操作)の基本機能と、データ分析やNoSQL機能といった拡張機能について解説する。さらに、実践的なSQLの分析機能の解説や、月惑星科学を題材に、科学データがSQLで管理されている実例を紹介する。そのほか、SQLが仮説の生成だけでなく、仮説の解釈説明にも有用であることを示すと同時に、SQL以外の方法による仮説説明の技術についてその概要を説明し、またSQLを支えるデータベースの設計、実装、運用についても説明する。 SQLとそれを利用したデータ処理・データ分析を学びたい学生や、製造・販売や研究開発現場の分野専門家、SQLを通してデータ分析を学びたいデータエンジニア、SQLを通してデータ処理を学びたいデータサイエンティストに読んでいただきたい一書である。
目次
第1章 ビッグデータと仮説
1.1 ビッグデータ
1.2 イシカワ・コンセプトに基づくデータ分析
1.3 ビッグデータの課題と統合的アプローチ
1.4 仮説
1.5 デザイン原理とデザインパターン
1.6 仮説の生成と解釈の道具としてのSQL
1.7 ビッグデータ応用の利用者
1.8 クラウドに関する注意
1.9 本書を読んでいただくにあたり
第2章 データベースの基本概念とデータモデル
2.1 データベースの役割と応用
2.2 データベースのアーキテクチャとデータ独立性
2.3 データベースの利用者
2.4 データモデル
2.5 ネットワーク型モデル
2.6 階層型モデル
2.7 関係データモデル
2.8 オブジェクト指向モデル
2.9 オブジェクト関係モデル
2.10 XML
2.11 関係データベース
第3章 SQLの機能Ⅰ
3.1 SQLの概要
3.2 データ定義
3.3 基本的問合せ
3.4 データ処理
3.5 基本データ型
3.6 新しいデータ型
3.7 データ理解(実践編)
3.8 オブジェクト指向
第4章 SQLの機能Ⅱ
4.1 複雑な問合せ
4.2 タプルの挿入,削除,更新
4.3 GRANTとREVOKE
4.4 完全性制約とトリガ
4.5 SQLの各種インタフェース
4.6 ローレンツ曲線とGini係数
4.7 推論
4.8 教師あり学習と教師なし学習
4.9 回帰と最小二乗法
4.10 クラスタリング
4.11 k-nn:怠惰学習
4.12 k-分割交差検定
4.13 仮説差分法
4.14 時間差分
4.15 空間差分
4.16 仮説差分
4.17 確率的推論:ナイーブベイジアンフィルタ
4.18 テキストマイニング自然言語処理(文書検索)
4.19 有用なデザインパターン
第5章 多次元データの分析
5.1 概要
5.2 OLAP操作
5.3 ウィンドウ操作
5.4 ウィンドウ関数
5.5 拡張集約関数
第6章 関係性を探る
6.1 概要
6.2 WITH句による再帰問合せ
6.3 探索履歴の蓄積と巡回の抑止
第7章 系列データの分析
7.1 概要
7.2 行パターン認識の基本構文
7.3 MEASURES句とDEFINE句の式
第8章 惑星探査データとSQL
8.1 背景
8.2 月の座標系
8.3 PostGISのセットアップと空間参照系の確認
8.4 Apollo着陸地点の登録
8.5 かぐや搭載ハイビジョンカメラの実例
8.6 クォータニオンによる姿勢検索
8.7 Apollo月震計データベース
第9章 クラウドコンピューティングの利用
9.1 クラウドコンピューティングとは
9.2 クラウドの概要
9.3 クラウドにおけるデータベース
9.4 クラウドを用いたリレーショナルデータベース環境
9.5 リレーショナルデータベース環境の構築
第10章 データベースの設計と実現
10.1 データベースの設計
10.2 データベースの構成法(その1)
10.3 データベースの構成法(その2)
10.4 問合せの最適化(その1)
10.5 問合せの最適化(その2)
10.6 実行計画
第11章 データベースの運用
11.1 トランザクションの概念
11.2 同時実行制御
11.3 ロック方式による同時実行制御
11.4 楽観的な同時実行制御
11.5 リカバリ管理
11.6 セキュリティ管理
第12章 解釈説明
12.1 仮説の解釈と説明の必要性
12.2 背景としてのEBPM
12.3 科学哲学における解釈説明
12.4 解釈説明の構造
12.5 解釈説明の対象
12.6 解釈説明に用いる技術
12.7 モデルから独立した解釈説明方法
12.8 説明のためのアーキテクチャ
12.9 モデル生成の説明(how_h)
12.10 モデルに依存しない解釈説明方法(what_h)
12.11 モデルに依存する解釈説明方法(what_h)
12.12 モデルに依存する解釈説明方法(why_h)
12.13 階層的凝集クラスタリング
12.14 可視化
12.15 モデル生成の実行計画(how_e)
1.1 ビッグデータ
1.2 イシカワ・コンセプトに基づくデータ分析
1.3 ビッグデータの課題と統合的アプローチ
1.4 仮説
1.5 デザイン原理とデザインパターン
1.6 仮説の生成と解釈の道具としてのSQL
1.7 ビッグデータ応用の利用者
1.8 クラウドに関する注意
1.9 本書を読んでいただくにあたり
第2章 データベースの基本概念とデータモデル
2.1 データベースの役割と応用
2.2 データベースのアーキテクチャとデータ独立性
2.3 データベースの利用者
2.4 データモデル
2.5 ネットワーク型モデル
2.6 階層型モデル
2.7 関係データモデル
2.8 オブジェクト指向モデル
2.9 オブジェクト関係モデル
2.10 XML
2.11 関係データベース
第3章 SQLの機能Ⅰ
3.1 SQLの概要
3.2 データ定義
3.3 基本的問合せ
3.4 データ処理
3.5 基本データ型
3.6 新しいデータ型
3.7 データ理解(実践編)
3.8 オブジェクト指向
第4章 SQLの機能Ⅱ
4.1 複雑な問合せ
4.2 タプルの挿入,削除,更新
4.3 GRANTとREVOKE
4.4 完全性制約とトリガ
4.5 SQLの各種インタフェース
4.6 ローレンツ曲線とGini係数
4.7 推論
4.8 教師あり学習と教師なし学習
4.9 回帰と最小二乗法
4.10 クラスタリング
4.11 k-nn:怠惰学習
4.12 k-分割交差検定
4.13 仮説差分法
4.14 時間差分
4.15 空間差分
4.16 仮説差分
4.17 確率的推論:ナイーブベイジアンフィルタ
4.18 テキストマイニング自然言語処理(文書検索)
4.19 有用なデザインパターン
第5章 多次元データの分析
5.1 概要
5.2 OLAP操作
5.3 ウィンドウ操作
5.4 ウィンドウ関数
5.5 拡張集約関数
第6章 関係性を探る
6.1 概要
6.2 WITH句による再帰問合せ
6.3 探索履歴の蓄積と巡回の抑止
第7章 系列データの分析
7.1 概要
7.2 行パターン認識の基本構文
7.3 MEASURES句とDEFINE句の式
第8章 惑星探査データとSQL
8.1 背景
8.2 月の座標系
8.3 PostGISのセットアップと空間参照系の確認
8.4 Apollo着陸地点の登録
8.5 かぐや搭載ハイビジョンカメラの実例
8.6 クォータニオンによる姿勢検索
8.7 Apollo月震計データベース
第9章 クラウドコンピューティングの利用
9.1 クラウドコンピューティングとは
9.2 クラウドの概要
9.3 クラウドにおけるデータベース
9.4 クラウドを用いたリレーショナルデータベース環境
9.5 リレーショナルデータベース環境の構築
第10章 データベースの設計と実現
10.1 データベースの設計
10.2 データベースの構成法(その1)
10.3 データベースの構成法(その2)
10.4 問合せの最適化(その1)
10.5 問合せの最適化(その2)
10.6 実行計画
第11章 データベースの運用
11.1 トランザクションの概念
11.2 同時実行制御
11.3 ロック方式による同時実行制御
11.4 楽観的な同時実行制御
11.5 リカバリ管理
11.6 セキュリティ管理
第12章 解釈説明
12.1 仮説の解釈と説明の必要性
12.2 背景としてのEBPM
12.3 科学哲学における解釈説明
12.4 解釈説明の構造
12.5 解釈説明の対象
12.6 解釈説明に用いる技術
12.7 モデルから独立した解釈説明方法
12.8 説明のためのアーキテクチャ
12.9 モデル生成の説明(how_h)
12.10 モデルに依存しない解釈説明方法(what_h)
12.11 モデルに依存する解釈説明方法(what_h)
12.12 モデルに依存する解釈説明方法(why_h)
12.13 階層的凝集クラスタリング
12.14 可視化
12.15 モデル生成の実行計画(how_e)
著者情報
石川 博
土田 正士
遠藤 雅樹
山本 幸生