タグ

2013年3月3日のブックマーク (20件)

  • 第35回 DBI:生のSQLが散らばると言う前に | gihyo.jp

    Perldbm いまでは省みられることも少なくなりましたが、Perlには1989年にリリースされたバージョン3.0以降、dbmと呼ばれるシンプルなデータベースにアクセスする機構が標準で組み込まれています。このdbmは、いわゆるリレーショナルデータベースとは違ってキーと値の組み合わせをディスクに保存できるだけのものですが、ハッシュ(当時はまだ連想配列と呼んでいました)と結びつけることでタブ区切りファイルなどを読んでいくより高速に検索ができたため、ユーザ環境に永続的なデータを保存する手段のひとつとして重宝されていました。Perl 3/4の時代にはdbmopenというコマンドが使われていましたが、この機構はPerl 5になって一新され、いまではより汎用的なtieというコマンドを使うことになっています。この仲間としては古くからあるBerkeley DBやGDBMなどのほか、最近では平林幹雄氏のT

    第35回 DBI:生のSQLが散らばると言う前に | gihyo.jp
    foaran
    foaran 2013/03/03
  • UbuntuでDBD::mysql のインストールに失敗

    DBI Connection failed: install_driver(mysql) failed: Can't locate DBD/mysql.pm in @INC (@INC contains:..... 今さら、こんなメッセージが出てて、おかしいなと思った。 cpanmを使ってDBD::mysqlをインストールしてみると失敗している様子。 ~/.cpanm/build.log を見ると mysql_config が見付からないというエラーが出ていた。 とかやってファイル検索しても無いのでググったら、以下の情報があった。 mysql_config が見当たらない? – 紀子さん@へぼぷろぐらまの日常 libmysqlclient15-dev というパッケージに入っているとか! $ sudo apt-get install libmysqlclient15-dev して解決。 同じ

  • conma.me

    This domain may be for sale!

    conma.me
    foaran
    foaran 2013/03/03
  • ホンビノスガイ - Wikipedia

    ホンビノスガイ(漢: 美之主貝、英: Hard clam、学名: Mercenaria mercenaria)は、二枚貝綱マルスダレガイ科の一種。海岸に近い潮間帯の砂や泥の中に生息する。原産分布海域は北アメリカ大陸の大西洋側[1][2] である。用になるため、アメリカ合衆国西海岸やヨーロッパ、台湾中華人民共和国などに移入されている[3]。日の東京湾などにも定着し、後述のとおり漁獲対象になっている。 英名は成長した大きさにより呼称の変化する「出世貝」であり、小さい順に countneck, littleneck, topneck, cherrystone と変化し、最も大きいものが quahogs または chowder clam と呼ばれる。 名前を漢字で記すと美之主貝となる。これはローマ神話の美の女神であるウェヌス女神からのエポニムで命名されたビーナス属 Venus に当て字さ

    ホンビノスガイ - Wikipedia
  • 実践ソフトウェアテスト考現学(15) 新しいアプローチは既存の枠組みを見直すための手段

    連載では、Wモデルなど、テストの新しいアプローチをいくつか紹介しました。これらの特徴は「既存の枠組みを見直そうとしていること」です。今回は、各アプローチにおいて、具体的にどのような点で既存の枠組みを見直そうとしているのかを解説します。 以前、「Wモデル」や「リスクベースドテスト」「グレーボックステスト」など、テストの新しいアプローチについて紹介しましたが、これらには共通の特徴があります。それは、開発で明確に役割分担していたこれまでの枠組みを見直そうとしていることです。 「テストレベルの再構築」では、テストする順番を見直すことを提案しています。これは、教科書通りのテストだと不具合を見つけた時には手遅れで、ソフトウェアを修正するのが極めて困難になってしまっていることがあるからです。 以前、システムパフォーマンスの例を挙げましたが、例えば、「あるシステムの性能が低い」という時、ハードの増強やS

    実践ソフトウェアテスト考現学(15) 新しいアプローチは既存の枠組みを見直すための手段
    foaran
    foaran 2013/03/03
  • はてなブログ | 無料ブログを作成しよう

    来年も作りたい!ふきのとう料理を満喫した 2024年春の記録 春は自炊が楽しい季節 1年の中で最も自炊が楽しい季節は春だと思う。スーパーの棚にやわらかな色合いの野菜が並ぶと自然とこころが弾む。 中でもときめくのは山菜だ。早いと2月下旬ごろから並び始めるそれは、タラの芽、ふきのとうと続き、桜の頃にはうるい、ウド、こ…

    はてなブログ | 無料ブログを作成しよう
    foaran
    foaran 2013/03/03
  • bayashi.jp

    This domain may be for sale!

  • perl でテストを始めよう!! - Articles Advent Calendar 2011 Test

    はじめに こんにちはこんにちは!最近会社のモニターが二枚になって持て余している xaicron です。 さて、Test Track と称して始まったトラック。全部よめばあなたもテストを書かずには生きていけない、そんな身体に大変身していること間違いなしです。 とりあえず今日は初日なので、perl でテストを書くときに必ずと言っていいほど利用する Test::More を使ったテストの書き方を書こうと思ます。 また、「テスト」とざっくりといってもいろいろなものがありますが、その辺の細かい話はきっと ikasam_a さんが書いてくれるのでスルーします。 Test::More チートシート まず、More というだけあって、結構機能がいっぱいあるので、チートシートを先にあげておきます。perldoc Test::More のほぼコピペですが、きっと皆さんは perldoc Test::More

    perl でテストを始めよう!! - Articles Advent Calendar 2011 Test
  • PerlとOracleDatabaseでの性能試験(データ増幅) - Articles Advent Calendar 2011 Test

    はじめに はじめまして! dukkiedukkie と申します。 知人にこちらを教えて頂きまして登録させていただきましたが、予備知識なく&&不慣れでご迷惑おかけすると思いますが、よろしくお願いいたします!! IT業界を16年ほどさまよっており現在はPerlで色々書いてます。が、ゴリゴリのプログラマというわけでもなく 前職は某ポータルサイトにて広告システム全般のシステム基盤設計とシステム運用、前々職は某金融システムにてDBA(Oracle中心)、その前は某ブログシステムのDBA(Oracle中心)、さらにその前は、某IT情報配信サイトのエンジニアとして、働いてきた90年代CGIプログラミングを原点とする”オッサンPerler”です。 ですが、どんどん新しいことを学びたいので、なかよくしてくださいね!! データベースの性能試験とPerl さて、ほとんど準備もしておりませんため(次回はがんばりま

    PerlとOracleDatabaseでの性能試験(データ増幅) - Articles Advent Calendar 2011 Test
  • データの偏りを考慮したデータ増幅:【続】PerlとOracleDatabaseでの性能試験 - Articles Advent Calendar 2011 Test

    単純な増幅ではテストで見抜けない性能ボトルネック こんにちは。dukkiedukkieです。クリスマスが近づいてきてますね。 さて、先日[/articles/advent-calendar/2011/test/6]を書かせていただきましたが、今日はその話の続きで。 エンティティのカーディナリティを考慮しつつデータ増幅を行ったとしても、先日のやり方では、全ての増幅データのデータ量が均一になってしまいます。ですが、現実のデータストア運用現場で発生する問題には、 「WHERE条件句で絞込みを行なっているのだけど、この条件指定に対してマッチする行数が多すぎて、結果の返却スピードが遅い」 「実行計画的には変わらないのだけど、当該IDのみconsistent gets量がメガバイト単位になってしまって、どうしてもクエリがスローダウンしてしまう」 「AWRとかRDBMSの統計情報を見ると、バッファイン、

    データの偏りを考慮したデータ増幅:【続】PerlとOracleDatabaseでの性能試験 - Articles Advent Calendar 2011 Test
  • テストダブルについて - Articles Advent Calendar 2011 Test

    はじめに ikasam_a です。クリスマスイブいかがお過ごしでしょうか。私は寿司べたりしてました。 16日のエントリでテストダブル、特にフェイクやスタブについて触れましたが、今日はそもそもテストダブルって何ぞや、という話をします。またまた Perl の話はあまり出てこない予定です。 テストダブルとは http://xunitpatterns.com/Test Double.html:title=xUnit Test Patterns] で登場した言葉で、システムのある部分をテストするために特定箇所を置き換えることがあるが、その置き換え手段の総称として「テストダブル(代役)」という名前を当てたということです。 置き換え手段としては、以下の5つが挙げられています。 ダミー スタブ スパイ モック フェイク ダミー メソッド呼び出しの数合わせに使うことを目的とした、ダミーオブジェクトのことで

    テストダブルについて - Articles Advent Calendar 2011 Test
  • 全ては時の中に… : 【Linux】シェルで進捗を表示する

    2012/12/180:14 【Linux】シェルで進捗を表示する シェルで同じ行に進捗状態を更新して表示する方法について説明します。 同じ行の情報を更新するには、以下の手順を踏みます。 1.echoで表示する時、"\c"を指定する。 →改行を抑止する。 2.改行しない状態でecho "\r\c"を行う。 →行の先頭にフォーカスを移動する。 これを行えば、同じ行に新たな情報を記述することができます。 前回表示した文字列より短い文字列を表示する場合、ゴミデータが表示されてしまうことがあります。 あらかじめ、スペースで前回データを上書きする等して、表示がおかしくならないよう注意しましょう。 以下、サンプル。 ■progress.sh #!/bin/sh ##################################################################### #

  • 全ては時の中に… : 【テスト技法】テストケースと確認項目の導出

    2008/8/3018:46 【テスト技法】テストケースと確認項目の導出 ソフトウェアのテストは、作成したソフトウェアがユーザの意図した通りに動作するかどうかを確認するために行います。 テストには、単体テスト、結合テスト、システムテスト、運用テストの4段階があります。 テストの粒度が変わるため、確認の対象が若干変わりますが、基的には先述の内容を保障するものです。 用語の意味です。 テストケース 確認項目を確認するためのユーザの操作内容やデータの状態のパターンです。 このパターンによって、確認できる確認項目が変わります。 確認項目 画面、帳票、データの項目等、実際に確認する内容です。 データの状態等による条件分岐がある場合には、条件毎に設定します。 (期待する結果が異なる場合、別の確認項目として導出します) テストケースと確認項目は、以下のように決定します。 《テストケース》 以下の点に注

    foaran
    foaran 2013/03/03
  • ベンチどうしますか? - Articles Advent Calendar 2011 Dbix

    どうもnekokakです。 みなさんDBIを使っているコードのベンチマークってどうしてますか? SQLのチューニングであればいいのですが、ロジックのベンチマークを取りたい時に 実際にdatabaseにクエリなげてしまうと、ネットワーク通信等が発生し、細かいロジックのチューニングの邪魔になることがあります。 たとえば私はTengのチューニングをするときに、バックエンドのdatabase性能なんてどうでもよくて、 プログラムの性能をみたいわけです。 そんなときに便利なのがTest::Mock::Guardです。(え Testというnamespaceにありますが、やっていることはコードをさしかえることなので これをつかって実際にデータベースにクエリなげるところとかをフガフガします。 例えばTengのベンチマークを取る時に試したコードは以下のようなものです。 #! /usr/bin/perl us

    ベンチどうしますか? - Articles Advent Calendar 2011 Dbix
  • 異常検知(変化点検出)のパッケージを作ってみた - yokkunsの日記

    時系列的な振る舞いの変化点を検出するためのパッケージを作ってみました。 CRAN: http://cran.r-project.org/web/packages/ChangeAnomalyDetection/ github: https://github.com/yokkuns/r-AnomalyDetection Usage changeAnomalyDetection(x, term = 30, smooth.n = 7, order = c(1, 0, 0), ...) x 時系列の数値ベクトル term 学習期間 smooth.n 移動平均の期間 order arima関数に渡すorder ... arima関数に渡すその他パラメータ 実行例 パッケージ読み込み library(ChangeAnomalyDetection) library(RFinanceYJ) library(

    異常検知(変化点検出)のパッケージを作ってみた - yokkunsの日記
  • MySQL::Sandbox - 日向夏特殊応援部隊

    MySQL::Sandbox はお手軽に MySQL のサーバーを立ち上げるツールで、ちょっとしたテスト環境を構築するとかに非常に便利なプロダクトです。 とりあえずインストール $ sudo cpan -i MySQL::Sandboxでインストールしてから OS ごとの実行バイナリをダウンロードします。自分の手元の VM は CentOS 5.2 なので、mysql-5.0.82-linux-i686-glibc23.tar.gz をダウンロードしました。 まずは レシピ の最初にあるように make_sandbox してみます。 $ make_sandbox /path/to/mysql-5.0.82-linux-i686-glibc23.tar.gzそうすると /home/zigorou/sandboxes 以下にサンドボックスが出来てます。ついでに mysqld も立ち上がっていま

    MySQL::Sandbox - 日向夏特殊応援部隊
  • Kazuho@Cybozu Labs: Perl のテスト用に MySQL 環境を自動で構築するモジュール Test::mysqld を書いた

    ORM やウェブアプリケーション関連のライブラリなどのテストケースを書くにあたっては、 RDBMS へのアクセスが必要になります。しかし、SQLite のようなスタンドアローンのデータベースと比較すると、サーバ型データベースである MySQL に接続してテストを書くのは、既存の MySQL の権限設定やデータベース名を気にする必要があったりと、いろいろ不便です。そこで、MySQL のインスタンスをテンポラリディレクトリに自動生成し、テストが終わったら削除してくれる Perl モジュール Test::mysqld を書きました。こんな感じで使います。 use DBI; use Test::mysqld; use Test::More; my $mysqld = Test::mysqld->new( my_cnf => { 'skip-networking' => '' }, # TCP接続を

  • Test::Fixture::DBI で覚えるデータベーステスト - Articles Advent Calendar 2010 Hacker

    さて、今年も JPerl Advent Calendar の季節がやってきましたね。こんにちわこんにちわ zigorou です。 今回は拙作 Test::Fixture::DBI でデータベースのテストをするお話をしますよ! このモジュールはモバゲーオープンプラットフォームの API 開発時に必要にかられて作り、今では DeNA の社内でも普通に使われて来ているモジュールです。 レポジトリは github です。 はじめに とりあえずはテスト用の table を用意しましょう。 USE test; DROP TABLE IF EXISTS location; CREATE TABLE location ( id int(10) unsigned not null, user_id int(10) unsigned not null, title varchar(255) not null

    Test::Fixture::DBI で覚えるデータベーステスト - Articles Advent Calendar 2010 Hacker
  • DB 処理における Fixture テストの勧め - Hokkaido.pm #1

    DB 処理における Fixture テストの勧め 自己紹介 Toru Yamaguchi <zigorou@cpan.org> id:ZIGOROu (@zigorou) 株式会社ディー・エヌ・エー ソーシャルメディア事業部プラットフォーム統括部システムグループエンジニア Japan Perl Association 理事 今回のお題 昨日は割と概念的なお話ばかりだったので、今回は具体的な話メインで行きたいと思います。 やはりプログラミングにはバグがつきもので、それを防ぐにはテストを書くしかないですよね、と言う事でテストにまつわるお話です。 とは言っても今日のこのイベントに来ている人は Test::More でのテストなどは書いた事がある人が多いと思うので、Test::More の説明は割愛します。 まずは Test::mysqld の使い方 とりあえず、手元の環境に mysql をイン

  • 不安定な環境の中でのバッチ処理~JobQueueシステムQudoを使った事例~ - YAPC::Asia Tokyo 2012 [SEPTEMBER 27,28 & 29th]

    小規模~中規模環境でのサービス運用をしているととにかく外部依存が多くなると思います。あるいは、自分以外という意味での外部依存ということもありえます。具体的には、最近の話題で言えばTwitterやFacebookのAPIを使ったプロダクトの構築や、レガシーな外部レンタルサーバーへアクセスし定期的にログファイルをとってくるようなケースがあったり、社内にはあるけど誰が保守しているのかもわからないサーバーやシステムに依存して何かしなければならないというケースです。 トークでは、そんな依存絡みの中で「確実に数千件~数十万件のバッチ処理をエラーなく終わらせたい」というケースを想定し、 何に注意し、どんな実装を行えばよりよい運用ができるのか 具体的にQudoを使ってどのように実装できるのか、なぜQudoか ということについて、スピーカーの経験をもとにトークすることで、以下の参考知見を得ていただくことを

    foaran
    foaran 2013/03/03