タグ

ブックマーク / www.techscore.com (10)

  • PostgreSQL VACUUM で年末大掃除 | TECHSCORE BLOG | TECHSCORE BLOG

    これは TECHSCORE Advent Calendar 2018 の18日目の記事です。 今回はPostgreSQLを運用する上で絶対に無視できない「VACUUM」について、その機能と役割を確認していきたいと思います。 VACUUMとは VACUUMは、テーブルの実体となるファイルの中から、不要領域を探索し、再利用可能な状態にしていくものです。VACUUMを全く実行しない場合、ファイルサイズが増え続け、パフォーマンスの低下、ディスクスペースの圧迫へとつながります。 AUTO VACUUM機能 PostgreSQLには「AUTO VACUUM」機能が搭載されており、自動で随時VACUUMが実行されるため、多くの場合問題となりません。しかし、AUTO VACUUMも万能ではありません。テーブルによって追加・更新・削除の頻度、規模は様々であるため、AUTO VACUUM機能によるVACUUM

    PostgreSQL VACUUM で年末大掃除 | TECHSCORE BLOG | TECHSCORE BLOG
    peketamin
    peketamin 2019/07/19
  • PostgreSQL Index Only Scan 奮闘記 その3 | TECHSCORE BLOG | TECHSCORE BLOG

    どうも。村上です。 今回で3回目のPostgreSQLです。 今はこんな感じです。 追記型アーキテクチャ バキューム Visibility Map  ← 前回ここまで プラン演算子 ← 今回ここ Index Only Scan では「プラン演算子」いってみよう!! プラン演算子??? プラン演算子ってあまり聞きなれないですけど、簡単に言うと「explain」したら出てくるアレです。 =# explain select * from users; QUERY PLAN ------------------------------------------------------------------- Seq Scan on users (cost=0.00..385179.80 rows=10010480 width=190)

    peketamin
    peketamin 2018/10/11
  • JavaScript loadイベントの実行順序 | TECHSCORE BLOG | TECHSCORE BLOG

    こんにちは。寺岡です。 この記事は TECHSCORE Advent Calendar 2014 の 8 日目の記事です。 今回はJavaScript のload関連イベントにおける実行順序について書きます。 調査するきっかけ ある日、以下の要件を満たすリダイレクタを作成する必要に迫られました。 「リダイレクト実行時に、とある外部JavaScriptを実行しアクセス解析などを行いたい」 当初、あまり深く考えずに二つ返事で頷いてしまったのですが、検討を開始してみると色々考慮事項が多くて大変でした。 そして、未だにベストな解決ができた気がしていません。 稿では三十路が迫ったおっさんエンジニアの苦悶の記録をお送りします。 リダイレクトを実行する方法のおさらい まずは、リダイレクト(的な動作)をさせる方法を一通り考えて見ます。 大きく分類すると、以下の3種類になるでしょう。 HTTPのステータス

    peketamin
    peketamin 2017/12/12
  • Rails4 の Strong Parameters でリクエストパラメータを検証する | TECHSCORE BLOG | TECHSCORE BLOG

    こんにちは、鈴木です。 Rails4 の新機能である Strong Parameters を試してみました。 ※2013/10/03 TECHSCORE 体の記事になりました!「StrongParameters | TECHSCORE(テックスコア)」 Strong Parameters は個別の Gem ライブラリでしたが、Rails4 のコア機能として取り込まれました。 Strong Parameters を使用すると、ホワイトリスト形式でリクエストパラメータを検証することができます。 Rails3 では Mass-assignment (モデルの複数属性への一括代入)を防ぐために attr_accessible を使用していましたが、Rails4 からは Strong Parameters を用いて Mass-assignment に対応することができます。 Strong Para

    peketamin
    peketamin 2017/11/10
  • Rails複数DBシステムMySQLからPostgreSQL移行物語 | TECHSCORE BLOG | TECHSCORE BLOG

    こんにちは、三苫です。 この記事はTECHSCORE Advent Calendar 2014、5日目の記事です。 近年、Rails複数DB Casual Talksが開催されるなど、Railsでも複数・異種データベース混在したシステム構成は何ら特別でなものではなく通常の開発でカジュアルに選択される構成だぞという機運が高まっています。 togetterで参加者の反応を見ても、「establish_connectionは基」「前にも見たぞこのスライド」など、おおむね知見が業界全体に広まりつつある事がわかります。 記事はRails複数DBがまだカジュアルではない時代、マルチテナントシステムのデータベースをMySQLからPostgreSQLに、各サブシステムは縮退しつつも、システム全体としては無停止で移行を行った記録を共有するためのものです。 移行したシステムの前提 マルチテナントシステム

    peketamin
    peketamin 2014/12/05
  • Rails 4.1.0 の ActionPack Variants でデバイスごとのViewを表示する | TECHSCORE BLOG | TECHSCORE BLOG

    こんにちは、鈴木です。 Rails 4.1.0 で追加される ActionPack Variants を使ってみます。 ActionPack Variants とは ActionPack Variants とは、デバイスごとに View を切り替えるために導入された仕組みで、コントローラで request.variants に適当な値(例えば :tablet)を設定しておくと、それに応じた View ファイル(例えば index.html+tablet.erb)が使用される、というものです。 これを利用することで、デバイスごとに使用する View ファイルを切り替えることが簡単に実現できます。 ActionPack Variants を使う それでは ActionPack Variants を使ってみます。 やることは簡単で、コントローラで request.variants に適当な値を設

    peketamin
    peketamin 2014/11/25
  • トップページ

    SQL データベース操作言語SQLについて、またRDBMSの持つ機能について詳しく解説します。 DB概要、SQL、テーブル操作、データ操作 ... 特集:replication PostgreSQLのレプリケーションシステムを紹介し、それらの機能を比較していきます。 特集:pgbench PostgreSQLのベンチマークテストに用いられるプログラムである pgbench について解説します。 SQL演習問題 各章に用意された演習問題を集めました。

    peketamin
    peketamin 2014/05/17
  • Railsライブラリ紹介: 論理削除をサポートする「rails3_acts_as_paranoid」 | TECHSCORE BLOG | TECHSCORE BLOG

    こんにちは、鈴木です。 Rails3 で論理削除をサポートするライブラリ rails3_acts_as_paranoid をご紹介します。 rails3_acts_as_paranoid (https://github.com/goncalossilva/rails3_acts_as_paranoid) rails3_acts_as_paranoid は Rails2 時代にあった acts_as_paranoid の Rails3 対応版です。 ※2013/07/25 追記: Rails4 対応版は rails4_acts_as_paranoid です。(see 「Rails4 ライブラリ対応状況調査」) 論理削除とは アプリケーション上でデータを削除する操作をした場合の方式に、物理削除と論理削除があります。 物理削除は、アプリケーション上で削除する操作をすると、実際にデータベースのレコ

  • デザインパターン[モデリング] -TECHSCORE-

    オブジェクト指向プログラミングにおいてデザインパターンを利用することは、開発者に様々なメリットを与えてくれます。 ここでは、「デザインパターンとは何か」というようなデザインパターンの基事項と、GoFの23個のデザインパターンをJavaを利用してわかりやすく解説します。 デザインパターン INDEX

  • 10. Strategy パターン

    2012/04/26 一部修正しました デザインパターン 10章 Strategy パターン 10.1 Strategy パターンとは 10.2 サンプルケース 10.3 Strategyパターンまとめ 10.1 Strategy パターンとは 第10章では、Strategy パターンを学びます。Strategy とは英語で「戦略」を意味する言葉です。Strategy パターンを利用することで、戦略の切り替えや追加が簡単に行えるようになります。 普通にプログラミングしていると、メソッドの中に溶け込んだ形でアルゴリズムを実装してしまうことがよくあります。if 文などで分岐させることでアルゴリズムを変更するような方法です。Strategy パターンでは、戦略の部分を意識して別クラスとして作成するようにしています。戦略x部分を別クラスとして作成しておき、戦略を変更したい場合には、利用する戦略クラ

  • 1