タグ

dbに関するcvyanのブックマーク (235)

  • MHA for MySQL の概要 - Gosuke Miyashita

    MHA for MySQL の導入を検討していて、まずは社内の技術者向けに、MHA for MySQL の概要を伝えようと、主に オフィシャルなドキュメント からポイントを抜粋して社内向けの Wiki に書いてみた。当なら、オフィシャルドキュメント全体に目を通してもらうのがいいんだけど、英語なので、はじめの一歩としては敷居が高く感じる人もいるだろう、ということで。 特に外に出してまずい情報があるわけでもないので、このブログでも曝しておきます。 MHA の概要 MySQL エキスパートとして世界的にも著名な松信嘉範氏による、MySQL マスターの HA 化を行うためのツール。Perl 製。 最小限のダウンタイムで、データの不整合を防ぎつつ、マスターのフェイルオーバーを行う、というのが主な機能。 また、既に動作している MySQL に影響を与えることなく導入できる。 機能は大きくわけると以下

  • RDS for MySQL5.7 から Aurora(MySQL 5.6 互換)へ移行しました - Feedforce Developer Blog

    ソーシャルPLUS 開発チーム id:mizukmb です。ISUCON7 予選は惨敗でした。来年また頑張ります。 先日、ソーシャルPLUS の LINE メッセージ配信を提供するバックエンドの DB を RDS for MySQL5.7 から Amazon Aurora に移行しました。 今回は、RDS for MySQL 5.7 から MySQL 5.6 の Fork である Amazon Aurora への移行を行う際の注意点や実際の移行手順について説明します。 なぜ Aurora に移行したのか 移行手順 前提 前日までにできること 1. MySQL5.7 特有の機能を把握する 2. Aurora を作成する 3. DMS タスクの作成 4. 移行元 DB からテーブル定義をダンプし、 Aurora へインポートする 5. mysql-devel 5.6 をインストールしたアプリケ

    RDS for MySQL5.7 から Aurora(MySQL 5.6 互換)へ移行しました - Feedforce Developer Blog
  • プリザンター|OSSのノーコード・ローコード開発ツール

    ITreviewに登録された約1万製品の中でも特に注目を浴びているソフトウェアとして、 Best Software in Japan 2024にて44位にランクイン。同ITreviewでのノーコードWebデータベース部門、ローコード開発ツール部門で最高位「LEADER」を7期連続で受賞。数多くのユーザ様にご活用いただいております。 Special NEWS 2025/01/23 イベント 2月10日(月)「入門プリザンター」出版記念パーティー@中野を開催します! 2025/01/15 お知らせ 1月25日(土)秀和システム様より「入門プリザンター」が発売されました! Pickup NEWS 2025/01/28 イベント 2月7日(金)ノーコード推進協会共催イベント「ノーコードシンポジウム2025」に出展します。 2025/01/23 イベント 2月10日(月)「入門プリザンター」出版記念

    プリザンター|OSSのノーコード・ローコード開発ツール
    cvyan
    cvyan 2017/10/25
  • SQLトランザクション分離 実践ガイド | POSTD

    (注:2017/10/16、いただいたフィードバックを元に翻訳を修正いたしました。) (注:2017/10/11、いただいたフィードバックを元に翻訳を修正いたしました。) データベースのドキュメントで分離レベルを目にして、軽く不安を感じつつ、あまり考えないようにしたことはないでしょうか。トランザクションの日常の使用例できちんと分離について言及しているものはほとんどありません。多くはデータベースの初期設定の分離レベルを利用しており、後は運頼みです。しかし、来、理解しておくべき基的なトピックであり、いくらか時間を投入してこのガイドの内容を学習すれば、もっと快適に作業できるようになるでしょう。 私はこの記事の情報を学術論文、PostgreSQLドキュメンテーションから集めました。分離レベルの 何たる かだけでなく、適用の正確さを保持しつつ最大速度で使うにはいつ使うべきか、という疑問に答えるべ

    SQLトランザクション分離 実践ガイド | POSTD
    cvyan
    cvyan 2017/10/11
  • RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ

    アプリケーションの分割のアプローチ ●4つのアプローチ - ビジネスファンクション - 動詞/ユースケース - 名詞/リソース - 境界づけられたコンテキスト ● トランザクションの分割 - パイプライン化 (VETRO) - コーディネート (Saga) - 状態更新の非同期化 ( Event History - State Materialize - Domain Specific Query )

    RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
  • RedisサーバのCPU負荷対策パターン - ゆううきブログ

    Redisは多彩なデータ構造をもつ1インメモリDBであり、昨今のWebアプリケーションのデータストアの一つとして、広く利用されている。 しかし、一方で、性能改善のための手法を体系的にまとめた資料が見当たらないと感じていた。 実際、最初にCPU負荷が問題になったときにどうしたものかと悩み、調査と試行錯誤を繰り返した。 そこで、この記事では、自分の経験を基に、RedisサーバのCPU負荷対策を「CPU負荷削減」「スケールアップ」「スケールアウト」に分類し、パターンとしてまとめる。 背景 RedisのCPU負荷対策パターン CPU負荷削減 multiコマンド Redisパイプライニング Luaスクリプティング Redisモジュール(夢) スケールアップ スケールアウト 参照用スレーブ 垂直分割 水平分割 Redis Clusterによる水平分割 その他 スライド資料 あとがき 参考資料 背景 R

    RedisサーバのCPU負荷対策パターン - ゆううきブログ
  • PostgreSQL の JSONB 型の紹介とメリット - ボクココ

    ども、@kimhom です。 今回は必要に駆られて PostgreSQL で新しく登場した JSONB 型について調べるきっかけがあったので、まとめてみる。 予め断っておくと JSONB 型はいわば PostgreSQL のリレーショナルデータベースからの脱却だ。これは一見魅力的に見えるけど、誰もが待ち望んだ機能というわけではない。導入するときは慎重に検討するようにしたいところだ。 なぜ JSONB 型が必要になったか 特に SaaS のアプリケーションを作っている方なら共感してくれると思うのだけど、保存したいデータが顧客によって異なるというケースが否応にしてある。例えば 顧客管理のサービスを扱っているなら、業界ごとに保存しなければならない項目(記事ではカスタム項目と呼ぶ)は異なってくるし、逆に不要な項目なども出てくることだろう。そんな中、最もやってはいけない妥協が、とりあえず全ての項目

    PostgreSQL の JSONB 型の紹介とメリット - ボクココ
    cvyan
    cvyan 2017/07/04
  • Oracle Exadataは分散システム? - ブログなんだよもん

    はじめに Oracle Exadataとは? Oracle RAC(Real Application Clusters)とは? ExadataとSmart Scan ExadataとRACと分散ストレージ まとめ 参考 はじめに 最近、Oracle Exadata/RACを触る機会がありました。 個人的にはOracle RAC自体まともに触るのが初めてだったので、お約束のキャッシュフィージョンを起こして性能が出なかったりとか、RAC初心者あるあるを起こしたりもしました。 その時に、ExadataやRACの公開情報をあらためて見てたのですが、Exadataは分散システムとして理解したほうがしっくりくるなぁ、という事に気付きチューニングもその観点を持ったほうが良い気がしたので、少しまとめてみました。 Oracle Exadataとは? Exadataは簡単に言えばOracleが考えた「僕が考え

    Oracle Exadataは分散システム? - ブログなんだよもん
  • 4ステップで作成する、DB論理設計の手順とチェックポイントまとめ - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに 「達人に学ぶDB設計」、「SQLアンチパターン」を読んだのでDB設計をする流れとその過程でのチェックポイントをまとめてみました。 今回はに載っているものの中でも特に重要そうな部分に絞ってみました。 さらに詳しいことを知りたい方はを購入してみてください。個人的には達人に学ぶDB設計徹底指南書のほうがおすすめです。こちらだけあれば十分だと思います。 DB設計には大きく分けて論理設計と物理設計の二つがありますが、今回はアプリケーション開発でメインとなる論理設計の部分に焦点をあてて説明をします。 一番最後にチェックポイントだけをま

    4ステップで作成する、DB論理設計の手順とチェックポイントまとめ - Qiita
  • 若手プログラマー必読!5分で理解できるER図の書き方5ステップ

    データベース設計の基中の基であるER図。ER図を書きたいけど、「記法が分からない」「どういうステップで書けば良いか分からない」という若手エンジニアも多いのではないでしょうか。 ER図は10種類近くあり、種類によって記法が異なります。このことが難しいイメージを与えていますが、実はそれほど難しいものではありません。覚えれば良いER図は2種類だけです。 しかも、この記事で解説している基礎知識を押えれば、たった5つのステップで作成することができます。 この記事では、ER図の基礎知識からER図の書き方まで、エンジニアが抑えておくべきER図の全知識をどこよりも分かりやすく解説します。 この記事を読み終えたとき、若手エンジニアもER図を書けるようになっているでしょう。 この記事を参考に最適なデータベース設計を進めて下さい。 1.ER図とは ER図とは、「データベース設計(データモデリング)で使う設計

    若手プログラマー必読!5分で理解できるER図の書き方5ステップ
    cvyan
    cvyan 2016/10/06
  • 今Googleで最も熱いサービスFirebaseで、リアルタイムWebアプリをサクッと作ってみた | PLAID engineer blog

    今回は、Firebaseというサービスを使ってWebサイト上で動作するアプリケーションをいくつか作ってみたのでご紹介します。

    今Googleで最も熱いサービスFirebaseで、リアルタイムWebアプリをサクッと作ってみた | PLAID engineer blog
  • Fluentdのバッチ版Embulk(エンバルク)のまとめ - Qiita

    Embulk(エンバルク) (2016/10/05からロゴが変わりました。変更理由) Embulkのまとめ2ndを作ってます。 Embulk v0.11 でなにが変わるのか: ユーザーの皆様へ をご一読ください。 更新時にコメントを書くようにしました。変更内容に興味のある方は編集履歴をご覧ください。 2018年1月30日リリースのembulk 0.9からgemは提供されなくなりました。gem版は0.8.39までとなっています 種類 バージョン ロゴの下のバージョンは開発版の最新バージョンを表しています。一般の方は0.9系を利用しましょう 2015年1月27日、Fluentdのメインコミッターの一人古橋さんが中心となって開発した、fluentdのバッチ版のようなツールEmbulk(エンバルク)がリリースされました。 この記事は、Embulkってなに?、どんなプラグインがあるの?、どうやって独

    Fluentdのバッチ版Embulk(エンバルク)のまとめ - Qiita
  • SQLデータベースに正しインデックスを作るのは 誰の役割?

    SQLのパフォーマンス問題は、SQLそのものと同じぐらいの歴史がある―― ある人は、SQLはそもそも遅いものだとすら言うかもしれません。これは、SQL歴史が始まった頃は正しかったかもしれませんが、今となっては全く 当てはまらないでしょう。にもかかわらず、SQLのパフォーマンス問題は今も一般的でよくあることです。どうしてそうなってしまうのでしょうか? SQL言語は、恐らく最も成功した第4世代言語(4GL)でしょう。その最大の利点は、「何を」と「どのように」 を分離できることです。SQL文は、どのようにそれを実行するかを記述せずに、単純に 何を必要としているかのみの記述になっています。以下のような例を考えてみましょう。 SELECT date_of_birth FROM employees WHERE last_name = 'WINAND'SQLのクエリは、データを要求する英語の文として読

    SQLデータベースに正しインデックスを作るのは 誰の役割?
    cvyan
    cvyan 2014/10/23
  • 集計はRDBばかりに頑張らせるのをやめると幸せになれる。 - Qiita

    はじめに 各種のDB中の集計作業を行うにあたって、以下のようなデータをどうしても扱わなければならない場合は、SQLのみで完結させないことを検討しなければ、サーバリソースを大量に消費した挙句、何時まで経っても作業が完了しないということが有ります。 SQL操作だけに頼らないことを検討したい集計例 explainすることで大体の傾向はわかりますが、おおよそ以下のような要素を含む集計が対象となります。 対象のレコード数が巨大である(数百万レコード以上) DBの余剰リソースにもともと余裕が無い indexのふられていない項目で集計/joinしなければならない join対象の項目がやけに多い not in 巨大なサブクエリ is null group by like etc... ではどうするか? 集計対象のレコードを一旦ファイルに吐き出した上で、ファイルベースの処理をしてしまいましょう。 実践例1

    集計はRDBばかりに頑張らせるのをやめると幸せになれる。 - Qiita
  • SQL Server 2005を使いこなそう − @IT

    主な内容 --Page 1-- SQL Server 2005で生まれ変わったDTS エンタープライズレベルに到達したIntegration Services 開発・管理環境の統合 --Page 2-- 新しいアーキテクチャ --Page 3-- パッケージの管理性向上 まとめ SQL Server 2000までDTS(Data Transformation Services)として提供されてきたETLツールが、SQL Server 2005より「SQL Server Integration Services」(以下、SSIS)として一新された形で提供されます。 DTSと同じく、SQL Serverに付属する形で提供されるSSISですが、単なる付属ツールという枠には収まらない非常に多くの機能拡張が行われています。一度にすべてを紹介することはできないので、今回は概要編、次回は実践編という位置

    SQL Server 2005を使いこなそう − @IT
  • LevelDB入門 (基本編) - from scratch

    さて、今回は比較的新しいデータストアであるLevelDBについてまとめてみました。 LevelDBは1年ほど前からNode.js界隈ではブームが来ていて、理由がよくわかっていなかったんですが、まとめている内に分かるかなと思ってまとめました。今回はNode.js無関係でLevelDBの基礎的なことだけ調査した結果をまとめてみました。 Node.jsで使ってみる話は後に回します。 LevelDBとは? key-value型のデータストアの一つです。 Googleの研究者である、Jeff DeanとSanjey Ghemawatが開発し、2011年に公表されました。C++で書かれており、多くのプログラミング言語でbindingsが書かれています。もちろん、JavaScript/Node.jsでも書かれています。 LevelDBGoogle のBigTableをベースにしたアーキテクチャを持

    LevelDB入門 (基本編) - from scratch
    cvyan
    cvyan 2014/05/05
  • プライマリキーを使った1:1関連でカラム数の多いテーブルを分割する - Hidden in Plain Sight

    おそらく多くのソーシャル系アプリにあてはまるRailsのプチ・デザインパターン的な話。 ぼくが今やっているEast Meet Eastには、ユーザごとに数多くのプロフィール属性があります。名前、性別、生年月日、郵便番号、職業などなど、カラム数にしてざっと25個。これを、全部ひとつのusersテーブルに詰め込むのは、コードの見通しという観点からも性能の観点からも、あまりよろしくありません。 なぜならば、ユーザ関連の情報を扱う局面としては主に メールアドレスとパスワードなどを使ってログインする(アカウント情報) プロフィール情報で条件を指定してユーザを検索・推薦する(プロフィール情報) という2つの独立性の高いユースケースにわかれるため、ログイン処理をやってるときにはプロフィール情報はいらないし、プロフィールを検索してるときにはメールアドレスやパスワードをロードするのは無駄です。また、開発やデ

    プライマリキーを使った1:1関連でカラム数の多いテーブルを分割する - Hidden in Plain Sight
    cvyan
    cvyan 2014/03/05
  • 初級〜中級者のためのSQL特訓 - 忘れないようにメモっとく

    ほぼほぼ初心者でSQLの練習がしたいっていう人、知識の再確認をしたい人にオススメのサイト。 SQLZOO ブラウザ上で動作するので、めんどくさい環境設定もなし。 データベースも、MySQLOracleSQL Server、Postgre、Ingres、DB2から選べる。 簡単なSELECT文から始まって、SUMやCOUNTみたいな基的な関数の問題や、JOINを使ったちょっと難しめの構文もある。 実行環境付きのリファレンスもあるのがよい!(超便利!)

    初級〜中級者のためのSQL特訓 - 忘れないようにメモっとく
    cvyan
    cvyan 2014/03/01
  • 長年の議論に終止符 -- MySQLとMariaDBの違い一覧 - 技術メモ置き場

    (2014.12.3追記:このblogの内容は、以下の書籍にも反映させた。) SQLレベルの差異 MariaDB5.5とMySQL5.5ではSQLレベルでの違いはほとんどなかった。autoincrementの最大値の扱いくらい。 ただし、MariaDB10.0でREGEXPがマルチバイト対応になったので、アプリ側は注意。 項目 MySQL MariaDB Autoincrement 最大値に達すると、以降は最大値を繰り返す。Warningのみ。エラーにならない。tinyintなら…,125,126,127,127,127… 最大値-1まで。以降はエラーを返す。tinyintなら…,125,126,ERROR,ERROR,… EXPLAIN文 JSON形式 バージョン5.6から 未対応 Optimizer Trace バージョン5.6から 未対応(ただし、MariaDBのほうがオプティマイザ

    長年の議論に終止符 -- MySQLとMariaDBの違い一覧 - 技術メモ置き場
  • Devsの常識、DBAは非常識

    E34 : [JPOUG Presents] Oracle Database の隠されている様々な謎を解くセッション「なーんでだ?」再び @ db tec... The document contains details of SQL execution plans and statistics for queries run against tables A and B. It includes the execution plan details showing the operations performed at each step including table access methods and indexes used. It also shows statistics on the performance of the queries such as elapsed ti

    Devsの常識、DBAは非常識
    cvyan
    cvyan 2013/09/14