Skip to content

Instantly share code, notes, and snippets.

@kawa-
kawa- / gen_upt01.php
Created July 26, 2014 02:50
generate unique pairs for table "t01"
<?php
# usage: $ php gen_upt01.php 10000 > upt01.txt
define('NUM_PAIRS', $argv[1]);
define('MAX_USERS', 5000 * 10000);
$dbname = 'db01';
$host = 'localhost';
$user = 'root';
@kawa-
kawa- / ibt01.pl
Created July 26, 2014 02:49
my benchmark script for inserts.
#!/usr/bin/perl -w
# description:
# inserting benchmark
# usage:
# $ php gen_upt01.php 10 > upt01.txt
# $ ./ibt01.pl -n 1 -r 10 -d db01 -t t01 -f upt01.txt
use strict;
use MyBench;
@kawa-
kawa- / gen_upt11.php
Last active August 29, 2015 14:04
先のibt11.plの前に使うスクリプトで、指定された分だけユニークなキーのペアを作る。
<?php
# generate unique pairs
# usage: $ php gen_upt11.php 10 > upt11.txt
define('NUM_PAIRS', $argv[1]);
define('MAX_USERS', 5000 * 10000);
$dbname = 'db01';
$host = 'localhost';
@kawa-
kawa- / ibt11.pl
Last active August 29, 2015 14:04
insertするベンチマークスクリプト。-nでクライアント数、-rでクライアントあたりのレコード数を指定。
#!/usr/bin/perl -w
# description:
# inserting benchmark
# usage:
# $ php gen_upt11.php 1000 > upt.txt
# $ ./ibt11.pl -n 1 -r 1000 -d db01 -t t11 -f upt11.txt
use strict;
use MyBench;
@kawa-
kawa- / ibench_a.pl
Created July 25, 2014 18:00
【改善版、メモリ削減】insertのベンチマークを取る。mybenchと組み合わせて使う。このgistの前のgenerate_unique_pair.phpでファイルを生成し、それを読み込んで実行。Redisの立ち上げが必須。
#!/usr/bin/perl -w
# usage:
# $ php generate_unique_pair.php 1000 > unique_pairs.txt
# $ ./ibench_a.pl -n 100 -d db01 -t t01 -f unique_pairs.txt
use strict;
use MyBench;
use Getopt::Std;
use Time::HiRes qw(gettimeofday tv_interval);
@kawa-
kawa- / bench_insert.sh
Created July 25, 2014 08:50
My benchmark shell script for my custom MySQL benchmarks.
echo "This is a benchmark script for insert."
echo "Now, going to have a bench."
num=100000
CLI=1
QPC=`expr ${num} / ${CLI}`
echo "=== C:${CLI}, Q/C: ${QPC} ==="
php generate_unique_pair.php ${num} > unique_pairs.txt
php generate_unique_pair_t11.php ${num} > unique_pairs_t11.txt
@kawa-
kawa- / bench_select.sh
Created July 25, 2014 07:37
My benchmark shell script for my custom MySQL benchmarks.
echo "This is a benchmark script."
echo "Now prepare for the bench."
echo "Making sampled valid users...."
perl -ne 'print if (rand() < .05)' valid_users.txt > sampled_valid_users.txt
echo "-> Done. now you can see the number of the users."
wc -l sampled_valid_users.txt
echo "-> OK. Above you can see the number of the users."
echo "Now, going to have a bench."
echo "=== C:1, Q/C: 100000 ==="
@kawa-
kawa- / insert_bench_t11.pl
Created July 24, 2014 15:09
insertのベンチマークを取る。mybenchと組み合わせて使う。このgistの前のgenerate_unique_pair_t11.phpでファイルを生成し、それを読み込んで実行。
#!/usr/bin/perl -w
# usage : $ ./insert_bench_t11.pl -n 1 -d db01 -t t11 -f unique_pairs_t11.txt
use strict;
use MyBench;
use Getopt::Std;
use Time::HiRes qw(gettimeofday tv_interval);
use DBI;
use Redis;
@kawa-
kawa- / generate_unique_pair_t11.php
Created July 24, 2014 15:07
とあるテーブルで新規のpairを発見して表示
<?php
# usage: $ php generate_unique_pair_t11.php 10 > unique_pairs_t11.txt
define('NUM_PAIRS', $argv[1]);
define('MAX_USERS', 5000 * 10000);
$dbname = 'db01';
$host = 'localhost';
$user = 'root';
@kawa-
kawa- / select_t11_verbose.pl
Created July 24, 2014 14:30
有効なuseridの群のファイルを読み込んで、selectのベンチマークをする。verbose版。
#!/usr/bin/perl -w
# usage : $ ./select_t11_verbose.pl -n 100 -r 1000 -d tw -t t1 -f users.txt
use strict;
use MyBench;
use Getopt::Std;
use Time::HiRes qw(gettimeofday tv_interval);
use DBI;