キムラデービーブログ

オープンソースデータベースを加速する「キムラデービー」のブログです。カレー日記を兼ねてます。なお著者は2010-06-01より日本オラクルに在籍していますが、本サイト(ブログ、またはウェブサイト)において示されている見解は、私自身の見解であって、オラクルの見解を必ずしも反映したものではありません。
[#ouchidbボツ原稿シリーズ]データベースファイルからの差分バックアップ生成
0
    ミックさんとの共著「おうちで学べるデータベースのきほん」はおかげさまで好評です。

    ただ執筆時には原稿を盛り込みすぎてボツになったものもあり、本シリーズ(?) では、そのうちのいくつかをひろって供養したいと思います。

    今回は「関西DB第3回」で話があがった、バックアップ・リカバリについて。

     MySQLの例だけみると「フルバックアップとバイナリログがあればリカバリできるじゃん」と思われた方も多いと思います。それはそのとおりですが、バイナリログを時系列に適用していくと、その適用に時間がかかり、想定した時間内にリカバリが終わらない、といった事態も起こりえます。またこのようなバイナリログの適用は同じ行のデータを何度も更新するような場合には、最後の一度以外は無駄な作業であることが想像できます。たとえば次のようなケースです。

    (0) -- 最初の状態
    (1) UPDATE t1 SET v2 = 'AAA' WHERE i1 = 1;
    (2) UPDATE t1 SET v2 = 'BBB' WHERE i1 = 1;
    (3) UPDATE t1 SET v2 = 'CCC' WHERE i1 = 1;
    (4) UPDATE t1 SET v2 = 'DDD' WHERE i1 = 1;
    (5) UPDATE t1 SET v2 = 'EEE' WHERE i1 = 1;
    (6) UPDATE t1 SET v2 = 'FFF' WHERE i1 = 1;
    (7) -- 最新の状態

    このような場合、実は最後の(6)が実行できれば、その前の(1)〜(5)は不要な気がします。つまり「最終的な値がわかれば、その過程は不要」というものです。多くのRDBMSでは(0) 最初の状態、と(7) 最新の状態を比較して差分情報を抽出することができます。これはデータが格納されているディスクファイル(もしくはディスクファイルを構成するブロック)を比較して更新されていた場合に差分として抽出するものです。この機能があればフルバックアップを(0) 最初の状態として、任意のタイミングで差分バックアップを生成できます。差分バックアップのイメージでは現在のデータベースは以下のように表現できます。

    現在のデータベース = フルバックアップしたデータ + 現在までの差分バックアップ

    以下主要なRDBMSのバックアップ機能と名称について一覧にまとめましたので、ご参照ください。

    ----------------------------------------------------------------------------------------------------------------------------
    名称          フルバックアップ    差分バックアップ            増分バックアップ
    ----------------------------------------------------------------------------------------------------------------------------
    対象データ       すべて         前回のフルバックアップからの差分    前回の任意バックアップからの差分
    バックアップ総処理時間 大           中                   小
    リカバリの総処理時間  小           中                   大
    メリット        運用が簡単。      運用は普通。              運用が難しい。
    デメリット       RDBMSの停止が必要。  差分抽出に時間がかかることも。     リカバリ時全ての増分ファイルが必要
    各DBMSでの呼び名
    Oracle         全体バックアップ    累積増分バックアップ          差分増分バックアップ
    Microsoft SQL Server 完全バックアップ    差分バックアップ            トランザクションログバックアップ
    IBM DB2        フルバックアップ    増分バックアップ            デルタバックアップ
    PostgreSQL      ベースバックアップ    ×                   増分バックアップ(トランザクションログ使用)
    MySQL         フルバックアップ     ×*6                 増分バックアップ(バイナリログ使用)
    Firebird         フルバックアップ     差分バックアップ           増分バックアップ
    ----------------------------------------------------------------------------------------------------------------------------

    注6: Enterprise Editionに含まれるMEB(MySQL Enterprise Backup)のincremental指定により可能。

    JUGEMテーマ:コンピュータ

    | meijik | データベース | 16:46 | comments(0) | trackbacks(0) | - | - |
    [#ouchidbボツ原稿シリーズ]縦横に長い表を画面表示に収めるには?
    0
      ミックさんとの共著「おうちで学べるデータベースのきほん」はおかげさまで好評です。

      ただ執筆時には原稿を盛り込みすぎてボツになったものもあり、本シリーズ(?) では、そのうちのいくつかをひろって供養したいと思います。

      ■縦に長い表編
      クエリの結果の行数が何行になるかは、クエリを実行してみないとわかりません。また事前にcount(*)を発行して行数を知って、それが画面表示に収まらないとわかったとしても、行数を指定して取得する方法は長らくSQL標準にはありませんでした。MySQLでは古くからLIMIT句を用いてクエリの結果行から指定行数を表示することができるようになっています。たとえば先ほどのクエリの最後にLIMIT 5を追加することによってクエリの結果行の先頭から5行だけ表示することができます。

      mysql> select district, count(*) from city where countrycode = 'JPN' group by district having count(*) > 4 order by count(*) desc limit 5;
      +----------+----------+
      | district | count(*) |
      +----------+----------+
      | Osaka | 22 |
      | Saitama | 21 |
      | Chiba | 19 |
      | Tokyo-to | 18 |
      | Aichi | 15 |
      +----------+----------+
      5 rows in set (0.00 sec)

      LIMIT句は先頭行から指定行数だけではなく、先頭からn行スキップしてm行表示ということもLIMIT n,mという形で指定して実行できます。

      mysql> select district, count(*) from city where countrycode = 'JPN' group by district having count(*) > 4 order by count(*) desc limit 5,5;
      +-----------+----------+
      | district | count(*) |
      +-----------+----------+
      | Kanagawa | 15 |
      | Hyogo | 11 |
      | Hokkaido | 10 |
      | Shizuoka | 9 |
      | Yamaguchi | 6 |
      +-----------+----------+
      5 rows in set (0.01 sec)

      これを繰り返すことでページング的な動作、つまり5行ずつ表示するためのデータを、同一のクエリの最後の部分を「LIMIT 0,5」「LIMIT 5,5」「LIMIT 10,5」と変えていくだけで実現できます。LIMITはクエリによる結果セットに対して適用するものですので、順番として一番最後、つまりORDER BYの後に指定することになります。

      1.SELECT
      2.FROM
      3.WHERE
      4.GROUP BY
      5.HAVING
      6.ORDER BY
      7.LIMIT

      LIMIT句はSQL標準ではありませんが、MySQLとPostgreSQL、IBMのMySQL互換モードONにて利用できます。
      SQL標準ではSQL2008にてFETCH FIRST m ROWSの構文が定められ、同構文を元々利用していたIBM DB2と、
      DB2以外の商用RDBMSの最近のバージョン(MS SQL Server 2012, Oracle 12c)でサポートされています。
      このように主要なRDBMSではかならポピュラーな実装になってきましたが、ここで言及した以外のRDBMSや
      古いバージョンの場合には独自実装により実現していたり、代替クエリにて実現している場合があります。
      次のブログエントリに主要なRDMBSでの指定方法がまとめられていますので、ご参照ください。

      「指定した範囲の行を取得するクエリ(HHeLiBeXの日記 正道編)」

      [2015-05-26 追記] 上記のブログエントリは少し古いので、最近の主要なRDBMSについては、次のエントリもご参照ください。

      部分結果(USE THE INDEX, LUKE)

      なおDB2はFETCH FIRSTはサポートしている(というかもともとDB2の方言)のですが、SQL標準のOFFSETはサポートしていません(!) これも含めてDB2でのびっくりしたことは以下のブログエントリ(英語)をご参照ください。

      Seven Surprising Findings About DB2(USE THE INDEX, LUKE)

      ■横に長い表編
       一般的なRDBMSではMySQLにmysqlコマンドクライアントが存在するように、CUIにて対話的にサーバとやりとりするためのツールが添付されています。
      ただ、そのようなクライアントは横幅が少ないため、カラム数の多い表を表示しようとすると、一行が画面内で何度も折り返されて大変読みにくく表示されてしまいます。
      たとえば、カラム数の多いcountry(国)テーブルをLIMIT句を用いて二行表示されると以下のような表示になってしまいます。

      mysql> select * from country limit 2;
      +------+-------------+---------------+---------------------------+-------------+
      -----------+------------+----------------+---------+--------+-------------------
      ----+----------------------------------------------+---------------+---------+--
      -----+
      | Code | Name | Continent | Region | SurfaceArea |
      IndepYear | Population | LifeExpectancy | GNP | GNPOld | LocalName
      | GovernmentForm | HeadOfState | Capital | C
      ode2 |
      +------+-------------+---------------+---------------------------+-------------+
      -----------+------------+----------------+---------+--------+-------------------
      ----+----------------------------------------------+---------------+---------+--
      -----+
      | ABW | Aruba | North America | Caribbean | 193.00 |
      NULL | 103000 | 78.4 | 828.00 | 793.00 | Aruba
      | Nonmetropolitan Territory of The Netherlands | Beatrix | 129 | A
      W |
      | AFG | Afghanistan | Asia | Southern and Central Asia | 652090.00 |
      1919 | 22720000 | 45.9 | 5976.00 | NULL | Afganistan/Afqanes
      tan | Islamic Emirate | Mohammad Omar | 1 | A
      F
      +------+-------------+---------------+---------------------------+-------------+
      -----------+------------+----------------+---------+--------+-------------------
      ----+----------------------------------------------+---------------+---------+--
      -----+
      2 rows in set (0.01 sec)

      一部のコマンドクライアントツールにはSELECT文で得られる結果セット表示を行ごとに縦表示にする機能があります。
      (この機能には特に定まった呼称はないですがPostgreSQLでは展開表示(Expanded display)機能と呼んでいるようです)
      なお、先ほど説明したLIMITはSQLの一部であり、DBMSからの結果が戻ってくるときにすでにデータが削減されていますが、
      本機能は単純にCUIでの表示の機能だけでり、発行されるSQLやそれによって戻ってくるデータが変わってくるわけではありません。

      MySQLでは通常デリミタとしてつかう;の代わりに¥Gを利用することにより、行ごとに縦表示にできます。先ほどと同じ
      クエリを¥Gにすると次のような見易い形で表示できます。

      mysql> select * from country limit 2¥G
      *************************** 1. row ***************************
      Code: ABW
      Name: Aruba
      Continent: North America
      Region: Caribbean
      SurfaceArea: 193.00
      IndepYear: NULL
      Population: 103000
      LifeExpectancy: 78.4
      GNP: 828.00
      GNPOld: 793.00
      LocalName: Aruba
      GovernmentForm: Nonmetropolitan Territory of The Netherlands
      HeadOfState: Beatrix
      Capital: 129
      Code2: AW
      *************************** 2. row ***************************
      Code: AFG
      Name: Afghanistan
      Continent: Asia
      Region: Southern and Central Asia
      SurfaceArea: 652090.00
      IndepYear: 1919
      Population: 22720000
      LifeExpectancy: 45.9
      GNP: 5976.00
      GNPOld: NULL
      LocalName: Afganistan/Afqanestan
      GovernmentForm: Islamic Emirate
      HeadOfState: Mohammad Omar
      Capital: 1
      Code2: AF
      2 rows in set (0.00 sec)

      MySQL以外のRDBMSではコマンドラインツールの機能としてトグルで表示を切り替えられたり(PostgreSQLの¥xやFirebirdのset list),
      スクリプトにて同様の機能をエミュレート(たとえばOracle用にTanel Poder氏が作成したTPTスクリプト内のpr.sqlなど)していたりしますので、
      コマンドラインツールを多様する方はご自分が利用されているコマンドラインツールに同様の機能がないかチェックしてみてください。Oracle用の表示については、以下のブログエントリが詳しいです。

      SQL*Plusで展開表示 - pr.sql from Tanel Poder's TPT scripts(コーソル DatabaseエンジニアのBlog)

      ★本コラムは「やってみよう! [6-3] データを更新(更新、挿入、削除)してみよう。」に配置することを想定してかかれ、ボツになったものです。。。。

      JUGEMテーマ:コンピュータ
      | meijik | データベース | 20:57 | comments(0) | trackbacks(0) | - | - |
      「SQL実践入門」勝手に補足: Firebirdで実行計画を見る
      0
        前回MySQLで実行計画を見る、をブログに書きました。

        今回はそれのFirebird版です。

        ■「図1.8::店舗テーブルのサンプル」を作成、のcreate tableはそのまま実行できます。

        テーブルスキャンとインデックススキャンは、set planonlyを実行してから実行します。

        SQL> select * from shops;

        PLAN (SHOPS NATURAL)


        SQL> SELECT *
        CON> FROM Shops
        CON> WHERE shop_id = '00050';

        PLAN (SHOPS INDEX (PK_SHOPS))

        上記はFirebird 3.0での実行結果ですが、それ以前のFirebirdでも同じだと思います。

        ■「図1.14::予約管理テーブルのサンプル」を作成
        も、Firebirdで問題なく実行できます。

        SQL> SELECT shop_name
        CON> FROM Shops S INNER JOIN Reservations R
        CON> ON S.shop_id = R.shop_id;

        PLAN JOIN (R NATURAL, S INDEX (PK_SHOPS))

        なお、統計情報の更新は他のRDBMSがテーブル単位で指定するのに対して、
        Firebirdの場合は、インデックス単位にて行います。つまり以下のようになります。

        SQL> set statistics index pk_shops;
        SQL> set statistics index pk_reservations;

        ストアドなどを使えば、テーブル単位に更新したり、全体の更新をすることもできます。
        全体を更新する場合の例は以下のドキュメントやバグ票をご参照ください。

        Optimizing performance(IB Expert)


        以前書いた以下のエントリも参考にしてみてください。

        [勝手に補足]DBアタマアカデミー第4回クエリ評価エンジンと実行計画 + Firebird

        SET STATISTICS ALL, REBUILD INDEX INDEX_NAME and REBUILD INDEXES

        Firebirdの実行計画表示は他のRDBMSと比べると独自のフォーマットなので、いずれまとめてブログ記事にしたいと思います。

        JUGEMテーマ:コンピュータ
        | meijik | Firebird/InterBase | 21:25 | comments(0) | trackbacks(0) | - | - |
        今月(2016-05)末、東京と大阪でオープンソースRDBMSのお話させていただきます。
        0
          まず、東京ではジャストシステムが主催のJust TechTalkにて以下の内容・日程にてお話させていただきます。

          JustTechTalk#06 スマイルゼミの裏側(DB編)とRDBMS最新動向
          2016-05-27(金)19:15 - 20:40


          内容は昨年夏にCEDEC2015でお話させていただいた内容の圧縮・アップデート版にする予定です!

          オープンソースRDBMS、イマドキの機能を使おう!(CEDEC2015)


          実は私は1996年より8年弱、ジャストシステムの東京研究所に所属して働いていたことがあり、その当時の知り合いからの依頼です :)

          大阪では翌日の2016-05-29 (土) の午後、以下の内容にてお話させていただきます。

          第3回 関西DB勉強会
          2016-05-28(土)13:00 - 18:00


          こちらは各RDBMSの用語やアーキテクチャの共通認識を持つ試みで、木村からはFirebird/MySQLの観点からの参加となります。

          それぞれお近くに住まわれていて、ご興味ありましたら、ぜひご参加ください。
          それぞれ懇親会もありますので、木村の馬鹿話が聞きたいひとはそちらもぜひ :) !


          JUGEMテーマ:コンピュータ


          | meijik | クロスデータベース | 08:58 | comments(0) | trackbacks(0) | - | - |
          「SQL実践入門」勝手に補足: MySQLで実行計画を見る
          0
            現在以下の読書会を行っています。

            「SQL実践入門」読書会

            そろそろ実行計画を読むところに差し掛かるのですが、本書は具体例としては
            OracleとPostgreSQLの実行計画しか利用していません。そこで、本エントリでは
            MySQLでの実行計画の表示の仕方と簡単な意味(を確認するリンク)を補足します。

            まず、「SQL実践入門」のサポートページから、データをダウンロードします。

            サポートページ

            解凍するとcodeディレクトリ以下にcode*.txtが展開されますので、まずCode1.txtを参照します。

            ■「図1.8::店舗テーブルのサンプル」を作成、のcreate tableはそのまま実行できます。

            テーブルスキャンとインデックススキャンは、それぞれ頭にEXPLAINをつけて実行します。


            mysql> explain SELECT * FROM Shops;
            +----+-------------+-------+------------+------+---------------+------+---------+------+------+----------+-------+
            | id | select_type | table | partitions | type | possible_keys | key | key_len | ref | rows | filtered | Extra |
            +----+-------------+-------+------------+------+---------------+------+---------+------+------+----------+-------+
            | 1 | SIMPLE | Shops | NULL | ALL | NULL | NULL | NULL | NULL | 60 | 100.00 | NULL |
            +----+-------------+-------+------------+------+---------------+------+---------+------+------+----------+-------+
            1 row in set, 1 warning (0.00 sec)

            mysql> explain SELECT *
            -> FROM Shops
            -> WHERE shop_id = '00050';
            +----+-------------+-------+------------+-------+---------------+---------+---------+-------+------+----------+-------+
            | id | select_type | table | partitions | type | possible_keys | key | key_len | ref | rows | filtered | Extra |
            +----+-------------+-------+------------+-------+---------------+---------+---------+-------+------+----------+-------+
            | 1 | SIMPLE | Shops | NULL | const | PRIMARY | PRIMARY | 15 | const | 1 | 100.00 | NULL |
            +----+-------------+-------+------------+-------+---------------+---------+---------+-------+------+----------+-------+
            1 row in set, 1 warning (0.00 sec)


            上記はMySQL 5.7で実行した結果ですが、filtered以外は、おくのさんの以下のエントリを見ると意味がわかります。

            MySQLのEXPLAINを徹底解説!!(漢のコンピュータ道)

            ■「図1.14::予約管理テーブルのサンプル」を作成
            も、MySQLで問題なく実行できます。

            mysql> explain SELECT shop_name
            -> FROM Shops S INNER JOIN Reservations R
            -> ON S.shop_id = R.shop_id;
            +----+-------------+-------+------------+--------+---------------+---------+---------+----------------+------+----------+-------------+
            | id | select_type | table | partitions | type | possible_keys | key | key_len | ref | rows | filtered | Extra |
            +----+-------------+-------+------------+--------+---------------+---------+---------+----------------+------+----------+-------------+
            | 1 | SIMPLE | R | NULL | ALL | NULL | NULL | NULL | NULL | 10 | 100.00 | Using where |
            | 1 | SIMPLE | S | NULL | eq_ref | PRIMARY | PRIMARY | 15 | test.R.shop_id | 1 | 100.00 | NULL |
            +----+-------------+-------+------------+--------+---------------+---------+---------+----------------+------+----------+-------------+
            2 rows in set, 1 warning (0.00 sec)

            統計情報は

            ANALYZE Shops;
            ANALYZE Reservations;

            ではなく

            ANALYZE table Shops;
            ANALYZE table Reservations;

            で実行します。私の場合testスキーマ(データベース)に作成しているので、以下のようになります。

            mysql> ANALYZE table Shops;
            +------------+---------+----------+----------+
            | Table | Op | Msg_type | Msg_text |
            +------------+---------+----------+----------+
            | test.shops | analyze | status | OK |
            +------------+---------+----------+----------+
            1 row in set (0.02 sec)

            mysql> ANALYZE table Reservations;
            +-------------------+---------+----------+----------+
            | Table | Op | Msg_type | Msg_text |
            +-------------------+---------+----------+----------+
            | test.reservations | analyze | status | OK |
            +-------------------+---------+----------+----------+
            1 row in set (0.01 sec)

            とりあえずこれで第1章は大丈夫かな。

            もっと細かくオプティマイザの動作を見るには、以下のおくのさんのエントリを参照してみてください。

            オプティマイザトレースによるちょっとディープな快適チューニング生活(漢のコンピュータ道)

            GUIで確認したい場合はVisual Explainを使うといいでしょう。

            MySQLでVisual Explain(漢のコンピュータ道)

            では、隔週水曜日ねこじゃらし様の会場でお会いしましょう!

            JUGEMテーマ:コンピュータ
            | meijik | データベース | 18:01 | comments(0) | trackbacks(0) | - | - |
            Firebird 3.0 がリリースされました!
            0
              Firebird 2.5のリリースから、なかなか時間がかかりましたが、Firebird 3.0がようやく2016-04-19にリリースされました。いろいろなサイトで紹介されています!

              SQLデータベース「Firebird 3.0」リリース、多くの新機能が追加される(OSDN Magazine)
              Firebird 3.0登場(マイナビニュース)
              リレーショナルデータベース「Firebird 3.0」リリース(ThinkIT)

              今回のリリースではnakagamiさんのコードも含まれています!

              Firebird 3.0 リリース [Firebird](あるnakagamiの日記)

              気になるFirebird 3.0 の詳細は、去年と一昨年のAdvent Calendarが日本語としては詳しいと思いますので、参照してみてください。

              Firebird Advent Calendar 2015(Qiita)
              Firebird Advent Calendar 2014(Qiita)

              個人的にはWindow関数のサポートがうれしいですね!

              Firebird 3.0の書籍としては、ブラジルのカルロスが英語で書いた電子書籍「Migration Guide to Firebird 3」があります。(ブラジル人なので、当然ポルトガル語版(PT-BR)もあります)

              Why a Migration Guide?(Firebird News)

              既存のユーザは、ここらへんからチェックしてみるといいのではないでしょうか?

              Firebird 3.0に関するもくもく会を6〜7月くらいから月イチくらいでやりたいと思っています。
              正式に決まりましたら、Firebird日本ユーザ会のほうでお知らせしますので、チェックしてみてください。

              私とFirebirdの付き合いも長くなりましたが、まだまだ続きます。

              コラム:僕と火の鳥との出会いと、そのころの出来事(キムラデービーブログ)

              JUGEMテーマ:コンピュータ
              | meijik | Firebird/InterBase | 06:32 | comments(0) | trackbacks(0) | - | - |
              3刷出来! 「おうちで学べるデータベースのきほん」
              0
                IMG_20160418_050401.jpg

                昨年(2015年)の10月に増刷がかかった首記の本、今年(2016年)にめでたく三刷がでました。
                共著者ミックさんのこの業界への影響力の底力を感じている今日この頃です。

                これまでにわかっている正誤表のほとんどが反映済みになりました。

                ちょうどkindle本のセールがあり、いまなら半額の1188円にて購入できますので、未読の人はぜひチェックしてみてください。ちなみにkindleではほかの人がどのくらいの時間で読み終えたか、の情報がわかります。この本は大体8時間強、つまり、一章1時間弱にてさっくり読まれているようです。





                | meijik | データベース | 05:06 | comments(0) | trackbacks(0) | - | - |
                Goもくもく会(ごもくかい)#4に参加しました。
                0
                  昨日は所用がはやめに終わったので、株式会社エウレカが主催している首記のもくもく会に参加してきました。

                  Goもくもく会(ごもくかい)#4

                  nakagamiさんが、FirebirdでGoドライバを書いてくれたので、まずはそれを使うところまでいくことを目標に :)

                  なにも用意していなかったので(おかしの用意だけしていった) まずはWin7(64-bit)にGo 1.6をインストールするところから。

                  インストール先はc:¥Goではなく、c:¥ユーザ¥ユーザ名¥Goにした。
                  ドキュメントの%HOME%は%HOMEPATH%では?

                  しかしこれも相対(relative)パスになるので、結局絶対パスで指定しました。環境変数、

                  GOPATH
                  GOROOTを設定

                  とりあえずココ

                  まぁ漢字が入った下記のコードで、漢字のコードがutf8でなかったため、以下のエラーがでたところでタイムアップ。

                  C:¥Users¥mekimura¥work¥src¥github.com¥user¥stringutil>go test github.com/user/stringutil
                  # github.com/user/stringutil
                  reverse_test.go:10:12: illegal UTF-8 encoding
                  reverse_test.go:10:13: illegal UTF-8 encoding
                  reverse_test.go:10:14: illegal UTF-8 encoding
                  reverse_test.go:10:20: illegal UTF-8 encoding
                  reverse_test.go:10:22: illegal UTF-8 encoding
                  reverse_test.go:10:23: illegal UTF-8 encoding
                  FAIL github.com/user/stringutil [setup failed]

                  まぁ向いてないよなぁ。。。。cp932だし。

                  なかなか純粋に言語習得にかける時間がとれないし、できるときにもくもくしにいこうと思います。

                  JUGEMテーマ:コンピュータ
                  | meijik | プログラミング | 08:45 | comments(0) | trackbacks(0) | - | - |
                  しなまゆブレイクの予感「恋をしている目をしている」
                  0
                    IMG_20160309_185939.jpg

                    ミニアルバム「ヘンシン」のリリース記念ということで、立川のタワレコでのインストアライブにいってきた。

                    ライブの前に、このアルバムのキーとなる「恋をしている目をしている」のPVをみて、プロデューサのいしわたり 淳治(ex.SUPERCAR)の名前をみて、これはしなまゆ始まって以来の「勝負の曲」の予感がした。

                    いしわたりさんは、チャットモンチー、9mm Parabellum Bullet、ねごと
                    と、僕の好きなバンドをプロデュースしてきた人だ。素材の良さを世に問う人だ。
                    なので、この曲は、もともとの「しなまゆ」ファンには違和感がある、かもしれないけれど、
                    プロデューサーが「しなまゆ」を、そのよさを「世にとう」曲である。

                    たとえば「ねごと」の「カロン」であり、「赤い公園」の「Now On Air」であり、
                    その時々のバンドの「よいところ」を「世に問う」曲だ。

                    私はにわかのファンではあるが、このミニアルバムのM-1, M-2はとてもよいと思っている。
                    もちろん、もともとのファンはM-5, M-6のほうがしっくりくると思うし、できもよく
                    ファンはどれもすきなんだけれども、ある意味冷静に、ある意味商業的に世に問う曲として、
                    「恋をしている目をしている」は、とーーーーーーってもよい曲だと思う。

                    あいにくの雨のため、インストアライブになったしなまゆのインストアライブ。
                    私はドラマーなので、うえのはらさんのベースとコーラスに釘付けだが :) カホンのヘルプもグッドで
                    大変楽しい時間をすごせた。 アリガトウ、タワレコ、そしてしなまゆ。

                    「チャイニーカンフージェネレーション」はある意味キワ物だったけど「恋を〜」は世に問うのにふさわしく、
                    そして、そこでどれだけの人の耳に残るのかを、私も期待して応援していきます!

                    [2016-03-26 追記]
                    ちなみに「カロン」は同じいしわたりさんだけど、「Now On Air」は蔦谷さんがプロデュースです。

                    津野米咲(赤い公園)×蔦谷好位置 爆発した才能(音楽ナタリー)

                    いまあらためてwikipediaをみると「Now On Air」はシングルでもタイアップでもないんですね。。。でも、
                    知り合いの何人かが、この曲から「赤い公園」を認識した、というのことがあったので。。。
                    | meijik | Music | 23:48 | comments(0) | trackbacks(0) | - | - |
                    ヘネパタ・パタヘネを買ったり読んだりする前に知るべきいくつかのこと
                    0
                      ガルパンはいいぞ、というのは、そのまま受け止めていいけれども、
                      ヘネパタはいいぞ、
                      とか
                      パタヘネはいいぞ、
                      というのは、なかなかそのまま受け止めるべきではない、というエントリ。

                      事実そのいち: ヘネパタとパタヘネは違う本。
                       以下のブログエントリがわかりやすい。

                      パタヘネとヘネパタ(なつたん)

                      事実そのに: それぞれ第五版まででている!

                      パタヘネ本の第三版、四版については、次のブログエントリに詳しい。

                      ■ アンチ パタヘネ ■

                      ヘネパタの歴史(落とし穴)と第五版については、以下のページに詳しい。
                      (翻訳の問題もここから連絡できる)→記述にはアカウントが必要であり、研究室の人しかダメみたい。翔泳社の該当する書籍のページから問い合わせ、で知らせるしかない。

                      ヘネシー&パターソン コンピュータアーキテクチャ 第5版 翻訳版ホームページ

                      事実そのさん: パタヘネ邦訳は二分冊(上下)されている。
                       ヘネパタは原著と同じ一冊。。。まあ、これはいいんですが。。。。翻訳の質についてはパタヘネには厳しい意見が見られます。またCD-ROMが付く版で、分冊になっている場合上巻についています。

                      事実そのよん: 付録の扱いが版によってちがう。
                       付録はCD-ROMに収められたり(第四版), オンラインから参照できたり(第五版), 書籍として別に(二分冊以外の、第三冊目して)出版されたりしている(パタヘネ日本語版第三版)

                      現在、第四版も第五版のどちらも入手できるのはこれのせい? CD-ROM必要な人は四版を。
                      そうでない人は五版を買っているのか?

                      ヘネパタ本第五版の英語の付録(Appendix)はここから参照できるけど、日本語のはないのかな?→読者問い合わせで確認中。

                      パタヘネ本第五版の付録はここから参照できるもの??。英語の付録が逆に見つからない。
                      →ビンゴ「関連リンク: 本書の補足資料であるボーナスコンテンツ 」

                      ということで、これらを前提にして、いまヘネパタ本の和訳本の四版と五版を手に、
                      五版を元にした読書会に参加しようとしている私がいますので、また何かあったら本ページ、もしくはヘネパタ本読書会の覚書を更新(追記)しますね。

                      ちなみにヘネパタ本、翔泳社から出ているので、2016/2/25までの半額セールで半額になっています
                      まだ持っていない人はチェキラ!→終了しました。

                      JUGEMテーマ:コンピュータ
                      | meijik | プログラミング | 01:57 | comments(0) | trackbacks(0) | - | - |
                      1234567
                      891011121314
                      15161718192021
                      22232425262728
                      293031    
                      << May 2016 >>
                      + RECOMMEND
                      + RECOMMEND
                      IS <インフィニット・ストラトス> アンコール『恋に焦がれる六重奏』 [Blu-ray]
                      IS <インフィニット・ストラトス> アンコール『恋に焦がれる六重奏』 [Blu-ray] (JUGEMレビュー »)

                      原作第四巻の映像化(らしい)この売れ具合で二期の制作可否が決まる??
                      + RECOMMEND
                      プロのための Linuxシステム構築・運用技術 (Software Design plus)
                      プロのための Linuxシステム構築・運用技術 (Software Design plus) (JUGEMレビュー »)
                      中井 悦司
                      Linuxの構築・システム運用について非常にコンパクトにうまくまとまった本。
                      + RECOMMEND
                      + RECOMMEND
                       (JUGEMレビュー »)

                      インターネットラジオ。これ以外は全滅か。。。
                      + RECOMMEND
                      + RECOMMEND
                      MySQL 5.1 Plugin Development
                      MySQL 5.1 Plugin Development (JUGEMレビュー »)
                      Andrew Hutchings,Sergei Golubchik
                      MySQL 5.1 のプラグインを作るならこれ!
                      + RECOMMEND
                      AWKを256倍使うための本 (Ascii 256倍)
                      AWKを256倍使うための本 (Ascii 256倍) (JUGEMレビュー »)
                      志村 拓,鷲北 賢,西村 克信
                      ここにきてまさかの復刊。15〜16年前の本ですが、いまでも十分役立ちますよ!!
                      + RECOMMEND
                      実践ハイパフォーマンスMySQL 第2版
                      実践ハイパフォーマンスMySQL 第2版 (JUGEMレビュー »)
                      Baron Schwartz,Peter Zaitsev,Vadim Tkachenko,Jeremy D. Zawodny,Arjen Lentz,Derek J. Balling
                      待望の日本語版登場!英語版には日々お世話になっていますm(_ _)m
                      + RECOMMEND
                      High Availability MySQL Cookbook
                      High Availability MySQL Cookbook (JUGEMレビュー »)
                      Alex Davies
                      MySQL Clusteringを書いたAlexの新作。
                      + RECOMMEND
                      MySQL High Availability: Tools for Robust Data Centers
                      MySQL High Availability: Tools for Robust Data Centers (JUGEMレビュー »)
                      Charles Bell,Mats Kindahl,Lars Thalmann
                      Expert MySQLの著者とMySQLのエンジニアが書いたHAの本。
                      + RECOMMEND
                      Linux-DB システム構築/運用入門 (DB Magazine SELECTION)
                      Linux-DB システム構築/運用入門 (DB Magazine SELECTION) (JUGEMレビュー »)
                      松信 嘉範
                      Linux-DB システム構築の新スタンダード。DB Magazine人気連載、待望の書籍化です!!
                      + RECOMMEND
                      + RECOMMEND
                      超・極める!MySQL
                      超・極める!MySQL (JUGEMレビュー »)
                      坂井 恵,志村 和彦,ひろせ まさあき,松信 嘉範
                      内容は少々古くなりましたが、内部説明があり、いろいろ面白いです。
                      + RECOMMEND
                      The Root of .NET Framework
                      The Root of .NET Framework (JUGEMレビュー »)
                      荒井 省三
                      .NETの根っこをつかむ、か?
                      + RECOMMEND
                      + RECOMMEND
                      間違いだらけのソフトウェア・アーキテクチャ―非機能要件の開発と評価 (Software Design plus)
                      間違いだらけのソフトウェア・アーキテクチャ―非機能要件の開発と評価 (Software Design plus) (JUGEMレビュー »)
                      Tom Engelberg
                      技術評論社から献本されました。ありがとうございました。
                      + RECOMMEND
                      プログラマーのためのソースコードを読む技術
                      プログラマーのためのソースコードを読む技術 (JUGEMレビュー »)
                      高木 信尚
                      技術評論社から献本されました。ありがとうございました。
                      + RECOMMEND
                      カレーの心得 (エイムック 1979)
                      カレーの心得 (エイムック 1979) (JUGEMレビュー »)

                      カレー特集。レシピも多々ありよい感じです。
                      + RECOMMEND
                      おとなの週末 2010年 07月号 [雑誌]
                      おとなの週末 2010年 07月号 [雑誌] (JUGEMレビュー »)

                      カレー特集。新しいお店も多くはいっていてグッド!!
                      + RECOMMEND
                      SQL Antipatterns: Avoiding the Pitfalls of Database Programming (Pragmatic Programmers)
                      SQL Antipatterns: Avoiding the Pitfalls of Database Programming (Pragmatic Programmers) (JUGEMレビュー »)
                      Bill Karwin
                      俗にいう「落とし穴(Pitfalls)」本のSQL版。チト期待。
                      + RECOMMEND
                      + RECOMMEND
                      エキスパートのためのMySQL[運用+管理]トラブルシューティングガイド
                      エキスパートのためのMySQL[運用+管理]トラブルシューティングガイド (JUGEMレビュー »)
                      奥野 幹也
                      これまでにない構築、そして構築後のMySQLのための本。
                      + RECOMMEND
                      12ステップで作る組込みOS自作入門
                      12ステップで作る組込みOS自作入門 (JUGEMレビュー »)
                      坂井 弘亮
                      KOZOSプロジェクト坂井さん渾身の一冊。この一冊が組み込み開発の明日を作るといっても過言ではありません!!
                      + RECOMMEND
                      シンクロニシティーン
                      シンクロニシティーン (JUGEMレビュー »)
                      相対性理論
                      ねらわずさわがず、まさかのVocal回帰のアルバム。ここが相対性理論の分水嶺か?!
                      + RECOMMEND
                      Oh!
                      Oh! (JUGEMレビュー »)
                      少女時代
                      K-POP最前線。かわいいだけではない韓国アイドルの底力が見えます!
                      + RECOMMEND
                      「プロになるためのWeb技術入門」 ――なぜ、あなたはWebシステムを開発できないのか
                      「プロになるためのWeb技術入門」 ――なぜ、あなたはWebシステムを開発できないのか (JUGEMレビュー »)
                      小森 裕介
                      技術評論社から献本されました。ありがとうございました。
                      + RECOMMEND
                      Database Management Systems
                      Database Management Systems (JUGEMレビュー »)
                      Raghu Ramakrishnan,Johannes Gehrke
                      ミックさん連載の参考書籍です。
                      + RECOMMEND
                      WEB+DB PRESS Vol.56
                      WEB+DB PRESS Vol.56 (JUGEMレビュー »)
                      WEB+DB PRESS編集部
                      ミックさんの新連載はじまりました。
                      + RECOMMEND
                      Advanced Programming in the UNIX Environment: Paperback Edition (2nd Edition) (Addison-Wesley Professional Computing Series)
                      Advanced Programming in the UNIX Environment: Paperback Edition (2nd Edition) (Addison-Wesley Professional Computing Series) (JUGEMレビュー »)
                      W. Richard Stevens,Stephen A. Rago
                      必読! といいつつ私が読んだのは初版の日本語訳です。差分はチェックしないといけませんね。
                      + RECOMMEND
                      + RECOMMEND
                      + RECOMMEND
                      Western Digital Scorpio Blue 2.5inch 5400rpm 320GB 8MB PATA WD3200BEVE
                      Western Digital Scorpio Blue 2.5inch 5400rpm 320GB 8MB PATA WD3200BEVE (JUGEMレビュー »)

                      DELL SX260の換装用に購入。今はコチラのほうが安いですね。
                      + RECOMMEND
                      情熱プログラマー ソフトウェア開発者の幸せな生き方
                      情熱プログラマー ソフトウェア開発者の幸せな生き方 (JUGEMレビュー »)
                      Chad Fowler
                      OSC2010神戸に出展されたジュンク堂で買いました。
                      + RECOMMEND
                      Software Design 総集編 【2000~2009】(DVD付)
                      Software Design 総集編 【2000~2009】(DVD付) (JUGEMレビュー »)

                      メガトン級の過去記事。売り切れる前にお店に急げ!
                      + RECOMMEND
                      + RECOMMEND
                      玄人志向 2.5型HDDケース SATA対応USB2.0接続 GW2.5AI-SU2
                      玄人志向 2.5型HDDケース SATA対応USB2.0接続 GW2.5AI-SU2 (JUGEMレビュー »)

                      Aspire 1410 HDD換装後、昔のHDDはこれにいれます。
                      + RECOMMEND
                      + RECOMMEND
                      ゼロから学ぶ!最新データベース (日経BPパソコンベストムック)
                      ゼロから学ぶ!最新データベース (日経BPパソコンベストムック) (JUGEMレビュー »)

                      最新のデータベース勉強ムック。付録はMS SQL Server Express Edition.
                      + RECOMMEND
                      Kaspersky Internet Security 2010 1年版 鷹の爪コラボパック
                      Kaspersky Internet Security 2010 1年版 鷹の爪コラボパック (JUGEMレビュー »)

                      た〜か〜の〜つ〜め〜。
                      ファンにうれしいコラボパック。
                      + RECOMMEND
                      Software Design ( ソフトウェアデザイン ) 2010年 02月号 [雑誌]
                      Software Design ( ソフトウェアデザイン ) 2010年 02月号 [雑誌] (JUGEMレビュー »)

                      Key-valueストアのまとめ(memcached除く)と松信さんのMySQL短期連載1回目(4回予定)が掲載されています。
                      + RECOMMEND
                      日経ソフトウエア 2010年 01月号 [雑誌]
                      日経ソフトウエア 2010年 01月号 [雑誌] (JUGEMレビュー »)

                      やはりビギナーには日経ソフトウエアかな。
                      + RECOMMEND
                      Linuxで作るアドバンストシステム構築ガイド (18Network Server Construction Guide)
                      Linuxで作るアドバンストシステム構築ガイド (18Network Server Construction Guide) (JUGEMレビュー »)
                      デージーネット
                      名著といわれた「Linuxアドバンストネットワークサーバ構築ガイド〜HAサーバ構築編」の改訂版です。要チェック!
                      + RECOMMEND
                      acer Aspire Timeline AS1410 11.6型ノートPC Windows7搭載 250GB ブラック AS1410-KK22
                      acer Aspire Timeline AS1410 11.6型ノートPC Windows7搭載 250GB ブラック AS1410-KK22 (JUGEMレビュー »)

                      色違い黒(他に青と白があります): メモリは最大4GBとあるが、がんばれば8GBいけるらしい。
                      + RECOMMEND
                      WEB+DB PRESS Vol.54
                      WEB+DB PRESS Vol.54 (JUGEMレビュー »)
                      WEB+DB PRESS編集部
                      ミックさんの連載、いつも見てます。
                      + RECOMMEND
                      SoftwareDesign(ソフトウェアデザイン) 2010年 01月号 [雑誌]
                      SoftwareDesign(ソフトウェアデザイン) 2010年 01月号 [雑誌] (JUGEMレビュー »)

                      特集「LLとオープンソースに学ぶコードを読む技術」に寄稿いたしました。
                      + RECOMMEND
                      厳選!旨い焼鳥焼きとん130店 完全保存版 (Town Mook)
                      厳選!旨い焼鳥焼きとん130店 完全保存版 (Town Mook) (JUGEMレビュー »)

                      Firebirdといえばこれでしょう、というのは嘘ですが、おいしい焼き鳥、焼き豚のお店で満杯です。
                      + RECOMMEND
                      Firebird 徹底入門
                      Firebird 徹底入門 (JUGEMレビュー »)
                      木村 明治,はやし つとむ,坂井 恵
                      Firebird日本ユーザ会のはやしさん、そしてMyNAから拝借(?) してきた坂井さんとともに書きました。まだ誰も知らないFirebird 2.5や、いままでドキュメントのなかったツール類についてもソースを確認してとりあげた本です。是非ご活用ください。
                      + RECOMMEND
                      MySQLデータベース構築バイブル
                      MySQLデータベース構築バイブル (JUGEMレビュー »)
                      志村 和彦,松信 嘉範,池田 徹郎
                      志村さん、松信さん、池田さん、ととにかく濃いこの一冊。構築バイブルというよりHackに近いです。
                      + RECOMMEND
                      MySQL全機能バイブル ~現場で役立つAtoZ~
                      MySQL全機能バイブル ~現場で役立つAtoZ~ (JUGEMレビュー »)
                      鈴木 啓修
                      名著「
                      MySQL全機能リファレンス」はバージョン4.xまでの対応でしたが、今回装いも新たに5.1まで対応しての発売です。
                      + SELECTED ENTRIES
                      + RECENT COMMENTS
                      • 毎月日経SYSTEMSが届くたびに?が増え続ける: 日経SYSTEMSのコラム「ITアーキテクチャーの真髄」と「第7正規化」
                        Moriaki_ (01/05)
                      • 毎月日経SYSTEMSが届くたびに?が増え続ける: 日経SYSTEMSのコラム「ITアーキテクチャーの真髄」と「第7正規化」
                        Moriaki_ (01/05)
                      • 2015年版 InterBaseの歩み
                        nakagami (12/06)
                      • 毎月日経SYSTEMSが届くたびに?が増え続ける: 日経SYSTEMSのコラム「ITアーキテクチャーの真髄」と「第7正規化」
                        meijik (11/22)
                      • 分散DB本読書会第46回メモ「STOP AFTER 10」
                        masudahidehiko (09/01)
                      • Windows上でのMySQLビルド方法
                        kinoyasu (03/31)
                      • 気軽に新しいMySQLを試してみる: MySQL Sandboxのススメ
                        MeijiK (09/19)
                      • 伝わらない曲シリーズ: 川島恵「ミスター不思議」
                        96 (07/05)
                      • 気軽に新しいMySQLを試してみる: MySQL Sandboxのススメ
                        MeijiK (02/17)
                      • テストデータ作成時に便利なストアドファンクション
                        名無しさん (01/12)
                      + RECENT TRACKBACK
                      + CATEGORIES
                      + ARCHIVES
                      + MOBILE
                      qrcode
                      + LINKS
                      + PROFILE