Spannerの知見メモ
2024年3月3日概要 Cloud Spannerの知見を漁ったのでメモ。走り書きなのでカテゴライズしていない。 メモ 計画メンテナンスやスキーマ変更のためのダウンタイムなし、最大99.999%の可用性を保証 Cloud SQLはダウンタイムありの計画のメンテナンス Cloud Spannerのアーキテクチャ構成 クライアント R/Wするコードが実行されているサーバーやコンテナ クライアントライブラリを使うと...
概要 Cloud Spannerの知見を漁ったのでメモ。走り書きなのでカテゴライズしていない。 メモ 計画メンテナンスやスキーマ変更のためのダウンタイムなし、最大99.999%の可用性を保証 Cloud SQLはダウンタイムありの計画のメンテナンス Cloud Spannerのアーキテクチャ構成 クライアント R/Wするコードが実行されているサーバーやコンテナ クライアントライブラリを使うと...
概要 Ubuntu 20.04.2 LTSでmysqlコンテナを起動しようとと以下のようなエラーが出てコンテナ起動に失敗する。 Could not open file '/var/log/mysql/mysql-error.log' for error logging: Permission denied” dockerfile 問題が発生したdockerfile。 dock...
M1 Macに買い替えたので手元の開発環境のためにmysqlコンテナを動かそうとしたら動かなかった。 エラーはこんな感じ。 runtime: failed to create new OS thread (have 2 already; errno=22) goのエラーだったので、アーキテクチャの何かしらの問題で動いていないのだろうと推測。 とりあえずdocker hubを見て8.0.17より最...
概要DBドキュメントを自動生成できるツールの有名所でいうと、MySQL Workbenchが筆頭に上がると思うが、それ以外にも良いOSSがないか漁ってみてちょっと触ってみたので感想を残す。 Schemaspy schemaspy.org github.com - schemaspy/schemaspy DBに接続してhtmlでDBドキュメントを生成してくれるJava製のツール。 Dockerhu...
概要 トランザクションについてまとめる。 トランザクション データを正しく保つための手法。DB固有の概念ではなく、一つの理論として独立している。 多数のクライアントからDBサーバーに対して同時アクセスが発生するような状況や、DBサーバーまたはアプリケーションが更新処理途中にクラッシュするという状況などからデータの整合性を守りたい時に必要とされる。 トランザクションが提供する機能は2点ある。 同時...
概要MySQLだけでテストデータを生成するSQLについてメモしておく。テストデータをスクリプトで生成する方法は柔軟性が高く、上等手段な気がするが、数万件のレコードを用いてパフォーマンステストをしたい時などはSQLだけでも十分かもしれない。 SQLクエリはこんな感じ。 DROP TABLE IF EXISTS `tests`; CREATE TABLE `tests` ( `id` int(...
概要複数のテーブルに対し、多対1でテーブルが関係付くときのテーブル設計のパターンについてまとめる。 データ設計以下のようなケースのデータ設計を例とする。 issues id title pullrequests id title comments id content commentsがissues、pullrequestsのどちらに対しても多対一で関係付くようなケース。 ...
概要ER図のリレーションシップの種類についてまとめる。 ER図のリレーションシップの種類ER図のリレーションシップには3つの種類がある。 リレーションシップの種類 テーブル関係 線の種類 依存リレーションシップ 子テーブルが親テーブルに依存(テーブル間に親子関係がある) 実線(親→子) 非依存リレーションシップ 子テーブルが親テーブルに依存していない(テーブル間に親子関係がない)...
概要MySQLのJOINの種類とUNIONについてまとめる INNER JOIN指定カラムの値が一致するレコード同士を結合する。指定したカラムの値が一致しない場合は結合しない。(両方のテーブルに一致するデータだけ結合される。) users+------+--------+------+| id | sex | name |+------+--------+------+| 0 | ...