データベース
Prometheus で収集した GKE アプリケーションのメトリクスを GCP の Cloud Monitoring(旧Stackdriver Monitoring) にエクスポートして Cloud Monitoring のダッシュボードを作成する方法を紹介します。Prometheus といえば Grafana を使ってダッシュボードを…
こちらの記事で Prometheus の static_config を設定して Redis のメトリクスを取得する方法について紹介しました。 glassonion.hatenablog.com Prometheus で監視対象のサーバの設定をする方法は static_config の他に Service Discovery があります。stati…
PrometheusからRedisの状態を取得する 私は普段 Redis を GKE 上に構築して使用していますが、GCP コンソール画面から得られる情報が Pod の CPU 使用率、メモリ使用率、ディスク使用率くらいしかなくもう少し細かい情報を得たいと考えていました。そこで Pr…
GCP環境でRedisを使う GCP には Cloud Memorystore という Redis 互換のマネージドサービスがあるのですが、対応している Redis のバージョンが古い(4系)ので自前で GKE 上に Redis を立てることにしました。どうせ立てるなら master/slave 構成のほうが良い…
SRID=4612(JGD2000測地系+地理座標系)のgeometry型フィールドだとgeography型に変換できる postgres=> SELECT ST_SetSRID(geom, 4612)::geography FROM map WHERE id=1; st_setsrid ---------------------------------------------------- 01010000200412000…
内容を全面的に見直して以下の記事に集約しました。 iOS データ設計入門
実験環境で使うデータベースにH2を採用しました。 これが軽くて非常に使いやすい。 少し前までHSQL DBを使ってましたがH2の方がはるかに使い勝手がいいです。 Oracleもいいけどスタンドアロンで手軽にやりたいならH2とか今流行の軽量データベースがお薦めで…
データベース実践講義―エンジニアのためのリレーショナル理論オライリージャパンこのアイテムの詳細を見る リレーショナル理論の本です。 商用のリレーショナルデータベース、OracleやSQL Serverなどは本当の意味でリレーショナルデータベースとは呼べない、…
システムで一番大切なものはデータだと思っている。 データの重複をなくし欲しいデータをいつでも簡単に取り出せる。 これが重要だと。 従ってデータベース設計がホントに大事な作業になってくるはず。 しかしデータベース設計に重点を置いているプロジェク…
RDBMS解剖学 よくわかるリレーショナルデータベースの仕組み翔泳社このアイテムの詳細を見る 情報処理試験の勉強にもなりそうなので買った本です。 日ごろからデータベースを頻繁に使っているにもかかわらず、その仕組みとか構造って知らないことが多いです…
JAVAでSQLを実行する時、PreparedStatementを使ってます。 これを使ってると文字列連結してSQL文を組み立てるよりもセキュリティー的に安心だしエスケープ文字(シングルクォーテーション、パーセント...etc)も心配しなくていいし普通は問題ないのです。 JDBC…
SQL*Plusで SQL>clear scrと打つと画面がクリアされます。 結構前からあったらいいのにな〜って思ってたのでちょっとうれしかった。 #大阪は粉雪が舞ってます。 #週末、東京ではコートいらないぐらい暖かかったのに...さむっ 参考 テクノドア〜のBlog
OracleではマルチテーブルINSERTという機能があって複数テーブルを一気に更新できます。 insert all into sample_table (id, name, value) values (1, 'TKISHIMO', 0) into sample_table2 (id, name, value) values (2, 'MHAYASHI', 0) select * from dual; …
この前、テーブル全削除のPL/SQLを作成しました。 しかし毎回テキストを開いて貼り付けて実行って手順が面倒になってきたのでプロシージャとして作成することにしました。 基本構文は create or replace procedure なんですが久々だったので結構忘れちゃって…
昨日、間違えて古い定義のテーブルをインポートしちゃいました。 それでカラム名が何個か古くなってしまったのでカラム名だけ変更したいなと。。。 SQL ServerではSP_RENAMEを使えば簡単に変更できたんでOracleでもなんかあるだろうということで調べました。…
Oracleで順序を作成するときは CREATE SEQUENCE TEST_SEQ START WITH 1 INCREMENT BY 1 MAXVALUE 9999999999 MINVALUE 1 CYCLE NOCACHE; と書けばOK。 参考 Oracle SQL 順序
SQL*Plusで検索結果を表示するとき、数値項目はデフォルトでは10桁までしか表示されません。 SQL> select -4444444444 from dual; -4444444444 ----------- -4.444E+09ちゃんと表示してくれませんね。 こういうときはset num 桁数で表示桁数の設定ができます…
OracleのPL/SQLでSQL文を動的に生成して実行するサンプルです。 declare wk_sql varchar2(1000); usertable user_tables%rowtype; cursor cu is select * from user_tables; begin open cu; loop fetch cu into usertable; exit when cu%notfound; wk_sql :=…
テーブルにIDと親IDを持ち階層構造をあらわすテーブルがあるとき、階層で表示されると便利です。 Oracleではconnect by句を使ってデータの階層表示ができます。 select lpad(' ',2*(level)) || name name from emp start with parent_id is null connect by …
今日久しぶりにデータのインポートとエクスポートをしました。 インポート imp user/password@接続文字列 tables=(テーブル名) file=c:/hoge.dmp log=c:/implog.txt fromuser=user touser=user ignore=y commit=yエクスポート exp user/password@接続文字列 …