業務系アプリを書いていると、csv 出力ぢゃなくて、excel データそのものを出力できたらなぁ・・・と思うことがあると思います。そこで、 perl で excel データを生成する方法と日本語を扱うときの注意点をまとめてみました。...
以前、美味しい鯛の吸い物(あら汁)の作り方(レシピ)なんていうレシピを紹介しましたが、如何せんブロガーとしてのスキル不足だったこともありレシピの紹介が納得いかない出来栄えです。本日は...
MySQLを使っている方の多くはデータベース管理ツールとしてphpMyAdminやAdminerをお使いのことでしょう。ただ極たまに文字化けに遭遇します。今回はutf8なデータベースにlatin1な文字コードで格納されている場合の文字化けの回避方法について紹介します。手抜き版なのでソースを改変しちゃう方法です。...
dba のお仕事の一つに、定期的に oracle の統計情報の取得とパフォーマンス解析を実施ってのがあります。うちのシステムは dba の監視部分を外注にだしているのですが、その定期レポートで行連鎖を頻発しているテーブルがあるんですが・・・と報告がありました。...
ネットショップ運営の方々は、お客様へ注文確認や問い合わせ対応などでお客様へメールを送信(システム自動送信含む)する機会が多いことかと思います。せっかく送信したメールが迷惑メール判定されて結果的にメールが届かない場合があります。そのようなお悩みの解決手順を解説します。...
インデックス設計において、複合索引(コンポジット索引)のキーの順序は非常に大切です。構造上、第1キーで同じデータが同一ブロック内もしくは隣接するブロック内に存在する形になります。その理解のためにBTreeのアルゴリズムについて勉強をしていきたいと思います。...
Oracle のインデックスの内容をダンプするTreeDumpを使ってBTreeの内部構造について解析してみました。TreeDumpする手順は定型なので、覚えておいて損はないかと思います。解析結果から複合索引の場合はルート、ブランチでも全てのキー情報を保持していることがわかりました。...
当ブログの各種サービスは、TokyoTyrant経由のTokyoCabinetでキャッシュDBを使って高速化しているのですが、データサイズが64GBに近づくにつれ性能が急激に劣化しました。知名度は低いですが、そもそもTokyoCabinetにはデフォルトでは64GBまでという制限があります。そんな話です。...