インデックス設計において、複合索引(コンポジット索引)のキーの順序は非常に大切です。構造上、第1キーで同じデータが同一ブロック内もしくは隣接するブロック内に存在する形になります。その理解のためにBTreeのアルゴリズムについて勉強をしていきたいと思います。...
Oracle のインデックスの内容をダンプするTreeDumpを使ってBTreeの内部構造について解析してみました。TreeDumpする手順は定型なので、覚えておいて損はないかと思います。解析結果から複合索引の場合はルート、ブランチでも全てのキー情報を保持していることがわかりました。...
複合索引の場合は、第一キーのみによる SELECT 文でも INDEX RANGE SCAN で効率よくアクセスが可能です。逆に第二キーのみによる SELECT 文では INDEX SKIP SCAN でリーフの双方向リストをたどってリーフを横断スキャンする必要があります。その辺を深追いしてみました。...
今面倒を見ているアプリケーションのログ管理として Log::Dispatch 系を採用しました。アラート通知にLog::Dispatch::Emailを使ってますが、実装上mod_perlのような永続環境下ではメールが遅延する可能性があります。インスタンス生成ときにbufferd=0の指定を必ず付けましょう!...
花粉症で悩む全国の皆さんのために、花粉症歴20年の僕が過去に服用してきた処方薬の効果と副作用のランキングをまとめました。薬は個人の相性によって効果が異なりますが、僕個人としてはザジテン>レミカット>セルテクト=ザイザル>アレロック>ジルテックの順に効いてます。...
まだMacOSについて無知だった頃、Linux kernel sourceを展開した直後にPCが急激に重くなったので、mds,mdworkerプロセスを強制終了しました。当然spotlightの索引(インデックス)が壊れてしまい、検索結果が正常に表示されなくなりました。いろいろ試しましたがmdutilというコマンドで索引を再構築して、正常に検索結果が出るように復旧出来ました...
既に広く使われている mysql+senna+tritonnの後継として開発されたgroongaのインストールについて解説します。コンパイル時に発生するlibmecabエラー、encoding違いによるインデックスエラーについても解説します。...
Twonky 7.0 specialでDLNAサーバ環境の構築およびプログラムを一部改編した件についての備忘録です。何故かインデックスが作成されない問題とフォルダーのアートワークが表示されない問題に遭遇し解決した方法をまとめています。特にアートワークの件はJavaScriptファイルの変更が必要で苦労しました。...