filesort が回避できない場合に、MySQL の order by 〜 limit を高速化する方法というのを書いてみました。半分は効果測定が目的の実装のため、UDF になっていたりと、利用にはある程度のスキルが必要だとは思いますが、興味のある方はどうぞ。
朝晩冷えてきましたね。風邪など引いていませんでしょうか。さて、年末が近づいてくるこの時期に弊社のエンジニアが最も気になるのは、お正月。それも来年1月1日を迎えた瞬間です。
1日1日0時に何があるのでしょう?そう、mixiのサービスで最も日記が書き込まれるタイミングになるのです。個人的に「あけおめことよろアタック」と呼んでいます。今年は日記だけではなく、エコーでもメッセージが飛び交うことでしょう。この時期は携帯電話のキャリアでもさまざまな対策を行っていますが、ミクシィでも年末年始でもユーザの方に快適にサービス提供ができるように努めています
以下は昨年の年末年始の日記投稿数の推移です。青色が12/31から1/1、赤色が1/1から1/2になります
…
[さらに読む]
こんにちは。
ここのところ、ID管理系の話が続いていたので、今日はちょっと趣向を変えまして、MySQL で行きましょう。
MySQL では様々なツールもオープンソースとして公開されていたり、ダウンロードして自由に使えたりします。
- MySQL Administrator
サーバを起動したり、停止したりと言ったいわゆる管理作業をするGUIツール - MySQL Query Browser
MySQL のデータを参照したり、管理したりするツール - MySQL Migration Tool Kit
Oracle,SQL Serverなどからのデータ移行を行なうツール
の3つは、MySQL :: MySQL GUI Tools …
[さらに読む]
こんにちは。
ここのところ、ID管理系の話が続いていたので、今日はちょっと趣向を変えまして、MySQL で行きましょう。
MySQL では様々なツールもオープンソースとして公開されていたり、ダウンロードして自由に使えたりします。
- MySQL Administrator
サーバを起動したり、停止したりと言ったいわゆる管理作業をするGUIツール - MySQL Query Browser
MySQL のデータを参照したり、管理したりするツール - MySQL Migration Tool Kit
Oracle,SQL Serverなどからのデータ移行を行なうツール
の3つは、MySQL :: MySQL GUI Tools …
[さらに読む]
こんにちは。
ここのところ、ID管理系の話が続いていたので、今日はちょっと趣向を変えまして、MySQL で行きましょう。
MySQL では様々なツールもオープンソースとして公開されていたり、ダウンロードして自由に使えたりします。
- MySQL Administrator
サーバを起動したり、停止したりと言ったいわゆる管理作業をするGUIツール - MySQL Query Browser
MySQL のデータを参照したり、管理したりするツール - MySQL Migration Tool Kit
Oracle,SQL Serverなどからのデータ移行を行なうツール
の3つは、MySQL :: MySQL GUI Tools …
[さらに読む]
とりあげられているのは、Oracle/MS SQL
Server/MySQLの3データベースです。ここではMySQL版をピックアップ。
さすがに長年MySQLに関わっている松信さんだけあって、よくまとまっています。特にレプリケーションとあわせてキャッシュ戦略ではmemcachedも含めた構成に言及しています。これは、雑誌の記事としては初めてではないでしょうか?
10末に行われたMySQLユーザコンファレンス2008でも「パフォチュー」セッションの人気は高かったですねー。みなさんもご興味がありましたら、是非書店で手にとってみてください!
前回にて、OracleサンプルテーブルからMySQLへの移行は完了しました。
今回は、気になる結果をチェックしてみたいと思います。
scott.emp表の移行結果
BEFORE : ORACLE DB
SQL> select dbms_metadata.get_ddl('TABLE','EMP','SCOTT') from dual;
DBMS_METADATA.GET_DDL('TABLE','EMP','SCOTT')
--------------------------------------------------------------------------------
CREATE TABLE "SCOTT"."EMP"
( "EMPNO" NUMBER(4,0),
"ENAME" VARCHAR2(10),
"JOB" VARCHAR2(9),
"MGR" NUMBER(4,0),
"HIREDATE" DATE,
"SAL" NUMBER(7,2),
"COMM" NUMBER(7,2),
"DEPTNO" NUMBER(2,0),
CONSTRAINT "PK_EMP" PRIMARY KEY ("EMPNO")
USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
…[さらに読む]
前回にて、OracleサンプルテーブルからMySQLへの移行は完了しました。
今回は、気になる結果をチェックしてみたいと思います。
scott.emp表の移行結果
BEFORE : ORACLE DB
SQL> select dbms_metadata.get_ddl('TABLE','EMP','SCOTT') from dual;
DBMS_METADATA.GET_DDL('TABLE','EMP','SCOTT')
--------------------------------------------------------------------------------
CREATE TABLE "SCOTT"."EMP"
( "EMPNO" NUMBER(4,0),
"ENAME" VARCHAR2(10),
"JOB" VARCHAR2(9),
"MGR" NUMBER(4,0),
"HIREDATE" DATE,
"SAL" NUMBER(7,2),
"COMM" NUMBER(7,2),
"DEPTNO" NUMBER(2,0),
CONSTRAINT "PK_EMP" PRIMARY KEY ("EMPNO")
USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
…[さらに読む]