2016-01-01から1年間の記事一覧
はてなフォトライフの RSS をスクレイピングして、画像の URI を取得してダウンロードするする Python スクリプト。 RSS(yohei-a's fotolife) ... <item rdf:about="http://f.hatena.ne.jp/yohei-a/20161211091424"> ... <dc:date>2016-12-11T09:14:24+09:00</dc:date> <hatena:imageurl> http://cdn-ak.f.st-hatena.com/images/fotolife/y/yohei-a/20161211/20161</hatena:imageurl></item>…
スペースや改行コードなどに要注意
実行計画絡みの性能トラブルシューティングでよく使うので書いておきます。 エクスポート 共有プールに共有カーソルのキャッシュが残っている場合 データベースにログオンする sqlplus / as sysdba 共有プールに共有カーソルがキャッシュされているか確認す…
統計情報 ユーザー統計表を作成する exec dbms_stats.create_stat_table(ownname=>'SCOTT', stattab=>'STAT_TAB_20160223'); ユーザー統計表に表の統計をエクスポートする。 exec dbms_stats.export_table_stats(ownname=>'SCOTT', tabname=>'EMP', stattab=…
SQL*Plus にヒアドキュメントで SQL を渡し、全体をバッククオート(`)で囲めばよい。"$"などはエスケープする必要がある。 $ TRACE_DIR=`sqlplus -s <
CHR関数を使う方法もある。 SQL> select 'select '||chr(39)||'X'||chr(39)||' from dual;' from dual 'SELECT'||CHR(39)||'X --------------------- select 'X' from dual; ちょっと聞かれたのでメモ。
環境 Windows 7 Professional SP1 Cygwin $ uname -a CYGWIN_NT-6.1 ********-** 2.6.0(0.304/5/3) 2016-08-31 14:32 x86_64 Cygwin setuptools をインストールする Cygwin Installation の setup-x86_64.exe をダウンロードする。 setup-x86_64.exe を実行…
2016/10/27(木)に開催された Oracle DBA & Developer Day 2016 で、 「オラクル・コンサルが語る! SQL性能を最大限に引き出すDB 12cクエリー・オプティマイザ 新機能活用と統計情報運用の戦略」 というお題で柴田歩さんと発表しました。 スライド Oracle DB…
JPOUG Advent Calendar 2016 の5日目のエントリーです。 昨日は id:knopp さんの Oracle RAC on Docker - KNOPP’s blog でした。 2012年から始った JPOUG Advent Calendar も今年で 6 年目になりました。 今年は私が AWRレポート*1と OS Watcher を使って Or…
だいぶ前にブログに書いたつもりで書いてなかったのでメモ。 SQL_ID から REPORT_ID を調べる column key1 format a30; SELECT REPORT_ID, KEY1 FROM DBA_HIST_REPORTSWHERE KEY1 = 'gxsc2sdj0xz39' ORDER BY KEY1, REPORT_ID; -- SQL_ID を指定 REPORT_ID K…
iPhone 6 Plus について 片手で操作するには大きすぎた 角が丸く割れやすいので保護ケース必須 5sまでは保護ケースなしでも画面を割ったことがないが、6 Plus は保護ケースが傷んだので一時的に外しているときに落として、見事にバキバキ*1 背面の iSight カ…
find . -regex '.*2016102[0-6].*' -print0|xargs -I{} -0 cp -pi {} ~/tmp/
find . -name '*.tar.gz' -print0|xargs -0 -I{} tar xf {} './sar_-u*'
Perl ワンライナーでシェル変数を渡すには -s オプションを使えばよい。 書式 perl -se '...' -- -Perlで使う変数名=シェル変数名 実行例 $ FOO=bar; perl -sle 'print $var' -- -var=$FOO bar 参考 sオプションを使います echo -e "hogehoge\nfugafuga" > m…
tar で解凍するときに標準出力したい場合は -O オプションをつければよい。 書式 全て解凍して標準出力 tar xfvz sqlcl.tar.gz -O 特定のファイルのみ解凍して標準出力 tar xfvz sqlcl.tar.gz -O sqlcl/bin/sql 実行例 $ tar cfz sqlcl.tar.gz sqlcl $ tar t…
sar、vmstat、iostat、top などが日別に一つの tar.gz にアーカイブ・圧縮されているファイルを解凍せずに、top の中身を検索するのに使ったコマンド。 find ./ -type f -name '*.tar.gz'|sort -n|while read LINE do tar tfz ${LINE}|egrep '^./top_'|xargs…
Weblogic は接続プールの接続プロパティに defaultRowPrefetch=XX を設定するとアプリのコードを変えずに(プリ)フェッチサイズを変更できる。 詳しくは以下の通り。 フェッチサイズを設定する方法は以下の3つ java.sql.Statement#setFetchSize Row Prefetch …
Oracle Real-World Performance チームの Toon Koppelaars の Flame Graph を使った Java-on-JDBC vs. PLSQL の分析面白い。The Helsinki Declaration (IT-version): NoPlsql vs ThickDB: which one requires a bigger database server?
"Partial page writes is when page write request submited to OS completes only partially. " MySQL のストレージエンジン InnoDB は partial page writes を防ぐ為に double write という機能がある。page は Oracle Database でいう block。Partial pag…
Oracle Database の Wait Time と CPU Time が1つの Flame Graph に、素晴らしい! I/Oシステムコール発行時に実はカーネルコードが ON CPU で時間を使っていたというようなケースも腕ひしぎ十字固めで一本。それくらいならAWRレポートだけでも Awr1page 的…
赤井さん、伊藤さん、長谷川さんに教えてもらった、NVDIMMの検証結果。 SSDの限界を超えるアプリケーション高速化、「NVDIMM」の導入効果は?/日本ヒューレット・パッカード株式会社 [SSD/半導体ストレージ/フラッシュストレージ] 事例・サービス資料等 |…
AWR Ambiguity: Performance reasoning when the numbers don't add up DB Time カーネルが ON CPU で使う時間が含まれ、DB CPU(Linuxなら getrusageで取得)にも含まれるのでダブルカウントされるからという話。しかし、1回のI/Oシステコールあたり 1ms もCP…
$ cat /proc/1741/status Name: bash State: S (sleeping) Tgid: 1741 Pid: 1741 PPid: 1740 TracerPid: 0 Uid: 1200 1200 1200 1200 Gid: 54321 54321 54321 54321 FDSize: 256 Groups: 54321 54322 54323 54324 54325 54326 54327 VmPeak: 108516 kB VmSiz…
zone_reclaim_mode=1 だと、NUMA ノードのゾーンごとに wmark_{min|low|high} が計算され、各ゾーンで空きメモリが wmark_low を下回るとページ回収が始まると理解している。 zone_reclaim_mode=1 の場合、ページ回収が追いつかないとリモートノードのゾーン…
ソース入手場所 3.4 Oracle Software Delivery Cloud 2.1〜3.3 Oracle | oss.oracle.com - Home 関連 Oracle VM で使われている Xen のソースを読む - ablog
別件でいろいろ試した時に接続時のターミナル種別を kterm にしていたからだった。vt100 や xterm にするとバックスペースが効いた。
.bashrc でシェル変数 PS1 を設定する。 .bashrc 設定例 PS1='\d \t \W\ $' 実行結果 Wed Jun 29 15:46:40 Poderosa\ $ 参考 bash の場合 PS1 という名前のシェル変数です。なぜ PS1 なのかは、マニュアルによると "The primary prompt string"=プライマリ…
NFS で iostat の await と svctm のような情報を取れるツールが欲しいと思っていたら nfsiostat という素敵なツールを見つけた。await にあたるのが avg exe (ms)、svctm にあたるのが avg RTT (ms) だと思う。 iostat の await と svctm の意味は Linux の…
strace を使う場合、プロセスが起動している間に lsof や /proc/[pid]/fd でファイルディスクリプタ(FD)番号とファイルパスの対応を確認しておかないと、read(17, ... などと出力されている場合に、17 のファイルパスがわからなくなりますが*1、 strace 4.…
Linux で strace を使ってシステムコールのトレースを調べる時によく使うオプションをメモ。 特にお気に入りのオプションは -T、-c、-ff & -o です。 書式 システムコールを詳細に追う tt: 行頭にタイムスタンプを出力(マイクロ秒) T: 行末にシステムコール…