タグ

INDEXに関するsh2nm0k2のブックマーク (7)

  • アジャイル開発とデータベース設計 - 変化に対応するシンプルな実装のために必要なこと - Agile Journey

    はじめまして。そーだい(@soudai1025)です。私は普段は技術コンサルティングや受託開発を請け負う合同会社HaveFunTechの代表として、また、予防治療の自社サービスを展開する株式会社リンケージのCTOという二足の草鞋を履き、日々、さまざまなWebサービスの開発に携わっています。 これまでの開発経験のなかで、データベース設計に関わるさまざまな問題に遭遇してきましたが、稿ではとくに、アジャイル開発時に発生しやすい問題とその対処についてお伝えしたいと思います。開発の現場で目にしやすい実装におけるアンチパターンを示しつつ、アジャイルという指針を維持しながら、対処となるデータベース設計についてご紹介します。 会員登録のアンチパターンと処方箋 イージーな実装とシンプルな実装 Userと言う名の罠 拡張と破綻 データベースは変化に弱い 仕様変更とテーブル変更 Addで変化に追従する 正規化

    アジャイル開発とデータベース設計 - 変化に対応するシンプルな実装のために必要なこと - Agile Journey
  • 新人の方によく展開している有益な情報 - Qiita

    新人の方によく展開させていただいている有益な情報をまとめておきます。今後も展開することがあるかもしれないため情報をまとめております。 あらたな、有益な情報がありましたら、随時追加してまいります。 有益な記事・論文・書籍等を執筆・紹介していただいた皆様に感謝申し上げます。 ちなみに、記事に記載されている情報は、お困りごと・お悩みごとをお聞きしたとき・気づいたときに、そのお困りごとに対して参考になりそうなものだけを展開していました。この情報を一気に展開していたわけではございません。 コードリーディングについて [1]ソースコードを読むための技術 https://i.loveruby.net/ja/misc/readingcode.html [2]派生開発推進協議会 関西部会 スペックアウトチーム,「派生開発におけるスペックアウト手法の提案」,派生開発カンファレンス2015,2015 http

    新人の方によく展開している有益な情報 - Qiita
  • とあるクエリを2万倍速にした話 -データベースの気持ちになる- 後編 - dwango on GitHub

    技術コミュニケーション室 OSSグループの髙﨑です。 記事は、とあるクエリを2万倍速にした話 -データベースの気持ちになる- 前編の続きです。 前回の記事でお話しした内容がPullRequestを作ったときの過程だったわけですが、 そのような結果に至った経緯、Index Only Scanを使わなかったPostgreSQL特有の事情について、 PostgreSQLのアーキテクチャなども交えもう少し詳しくお話させていただきます。 要するに 実行計画のコストとはレコードやindexの読み込み、フィルタ処理などからその実行にどの程度の時間が必要となるかの推定値 indexを張る際にはそのindexがどのように辿られるかを意識する必要がある 範囲検索される可能性があるカラムはindexの先頭にはあまり適さない PostgreSQLにおけるIndex Only Scanは新しい/更新頻度の高いデー

    とあるクエリを2万倍速にした話 -データベースの気持ちになる- 後編 - dwango on GitHub
  • SQLのインデックスとそのチューニングについてのオンラインブック

    開発者向けのSQLインデックス解説サイト、管理についての間違いない知識を提供します。 インデックスは開発時には忘れられがちである一方で、非常に効果的なSQLのチューニング方法です。Use The Index, Lukeでは、HibernateなどのORMツールの解説にとどまらず、SQLのインデックスについて基礎から説明します。 Use The Index, LukeはSQLパフォーマンス詳解のWeb上の無料版です。サイトを気に入って頂けたら、ぜひ書籍も購入してみて下さい。また、このサイトの運営をサポートする様々なグッズも販売しています。 MySQLOracleSQL ServerなどにおけるSQLのインデックスUse The Index, Lukeでは、ベンダにとらわれないインデックスの説明を心がけています。製品特有の事柄については、以下のような表示をしています。 DB2Use The

    SQLのインデックスとそのチューニングについてのオンラインブック
  • String.Indexを使った文字列処理 - Qiita

    Stringの中のそれぞれの文字(Character型)にアクセスするにはString.Index型の値を使用する。 StringはCharacterの双方向リストで構成されており、ランダムアクセスはに時間がかかる。 Indexを取得する 文字列からそのIndexを取得する場合は、まずstartIndexもしくはendIndexプロパティで最初か最後のIndexを取得する。 n番目のIndexを文字列から直接取得することはできない let str = "ABCDEF" let startIndex = str.startIndex // 文字列の最初のIndexを取得 let endIndex = str.endIndex // 文字列中の最後のIndexを取得 Indexを進める、戻る 文字列からn番目のIndexを直接取得することはできず、startIndex/endIndexから順々

    String.Indexを使った文字列処理 - Qiita
  • 大なり、小なり、BETWEENといったSQL範囲条件に対するインデックス

    INDEX RANGE SCANにおいて、パフォーマンスへの影響が最も大きいのは、リーフノードの走査です。インデックスをスキャンする範囲をできる限り小さく保つのは、インデックスを作る上での黄金則です。インデックスのスキャンがどこから始まってどこで終わるのか、自分に問いかけて確認しましょう。 SQL文内で、始点と終点の条件が明示的に書かれているなら、答えは簡単です。 SELECT first_name, last_name, date_of_birth FROM employees WHERE date_of_birth >= TO_DATE(?, 'YYYY-MM-DD') AND date_of_birth <= TO_DATE(?, 'YYYY-MM-DD')指定された範囲内で、DATE_OF_BIRTHのインデックスがスキャンされます。スキャンは、最初の日付から始まり、2番目の日付で

    大なり、小なり、BETWEENといったSQL範囲条件に対するインデックス
  • PostgreSQLでインデックスを効率良く利用しよう | TECHSCORE BLOG | TECHSCORE BLOG

    どうも、Benoîtです。 TECHSCORE Advent Calendar 2014 の 4 日目の投稿です。 PostgreSQLではいろいろなインデックス種類が存在する。使い方も様々である。インデックス種類の概要のあとに一番使われるB-treeインデックスの使い道や保守の話しを深めていく。 インデックスとは特定の項目を素早く参照できるようにするためのもの。B-treeインデックスに関してはソートに使うこともできる。 インデックスの種類 PostgreSQLはいろいろなインデックスに対応している。 B-treeインデックス、CREATE INDEX を利用するとデフォルトで選択されるインデックスである。Bの字はバランスの意味で、イメージとしてはtree(木構造)のroot(根)からleaf(最下層のノード)までの階層数がなるべく揃うようにバランスを取る。B-treeインデックスはどの

  • 1