タグ

DBに関するsiroccoのブックマーク (34)

  • PostgreSQL 20年史|コミッター石井達夫が振り返る変遷と進化の歴史|ハイクラス転職・求人情報サイト AMBI(アンビ)

    PostgreSQL 20年史|コミッター石井達夫が振り返る変遷と進化の歴史 世界中で使用されるRDBMSであるPostgreSQLの長い歴史には、どのような変遷があったのでしょうか。長く、PostgreSQLに関わり続ける石井達夫さんに、同ソフトウェアの進化歴史の中にあるキーワードをもとに振り返ってもらいました。 オープンソースのRDBMSであるPostgreSQLは、いまや世界中の人々が利用するソフトウェアとなりました。その歴史は長く、ルーツは30年以上も前にさかのぼります。 PostgreSQLの前身は、カリフォルニア大学バークレー校で1986年に始まったPOSTGRESプロジェクトです。その後、1994年にAndrew Yu氏とJolly Chen氏がPOSTGRESにSQL言語インタプリタを追加し、翌年にPostgres95をリリース。1996年にようやくPostgreSQLとい

    PostgreSQL 20年史|コミッター石井達夫が振り返る変遷と進化の歴史|ハイクラス転職・求人情報サイト AMBI(アンビ)
    sirocco
    sirocco 2020/01/06
    石井さんの本でPHPとSQLを学びました。ありがとうございます。
  • Expired

    Expired:掲載期限切れです この記事は,産経デジタル との契約の掲載期限(6ヶ月間)を過ぎましたのでサーバから削除しました。 このページは20秒後にITmedia ニュース トップページに自動的に切り替わります。

    Expired
    sirocco
    sirocco 2014/07/28
    DBを操作したユーザ名が分かればいくらサーバを経由しても関係ないんじゃないの? 同じユーザを使いまわしはさせないだろうし・・・。
  • MySQLでトランザクションの4つの分離レベルを試す - FAT47の底辺インフラ議事録

    トランザクションとは 1つの作業単位として扱われるSQLクエリの集まりです。 複数のUPDATEやINSERTをひとつの集まりとして、 それらのクエリがすべて適用できた場合のみデータベースに反映します。 ひとつでも適用に失敗したクエリがあった場合は、そのまとまりすべてのクエリの結果は反映しません。 ACID特性 トランザクション処理に求められる4つの特性です。 原子性 (Atomicity) トランザクションに含まれる手順が「すべて実行されるか」「すべてされないか」のどちらかになる性質。 一貫性 (Consistency) どんな状況でもトランザクション前後でデータの整合性が矛盾なく保たれる性質。 分離性 (Isolation) トランザクション実行中は、処理途中のデータは外部から隠蔽されて他の処理に影響を与えない性質。 永続性 (Durability) トランザクションが完了したら、シス

    MySQLでトランザクションの4つの分離レベルを試す - FAT47の底辺インフラ議事録
    sirocco
    sirocco 2014/02/12
    トランザクションの解説。
  • SQLでエスケープなんてしたら負けかなと思ってる。 - めもおきば

    オレオレSQLセキュリティ教育は論理的に破綻している | yohgaki's blog 「プリペアードクエリが基だけど、動的に SQL を組み立てる場合もあるから、そういう場合に備えてエスケープも知っておいたほうがいいかも」 - Togetterまとめ SQLインジェクション対策で大垣靖男氏は何を勘違いしていたか | [ bROOM.LOG ! ] エスケープとプレースホルダをめぐる議論 - Togetterまとめ SQLインジェクション対策としてのプリペアドステートメントとエスケープについての議論 - Togetterまとめ IPAの「安全なSQLの呼び出し方」が安全になっていた | yohgaki's blog SQLへの安全な値の埋め込み方について、ここ数日で色々議論というか意見の投げ合いがありましたが、自分としての考えをまとめておきます。 1. SQLに値を埋め込む場合は、プリペ

    SQLでエスケープなんてしたら負けかなと思ってる。 - めもおきば
  • リレーショナルデータベース入門―データモデル・SQL・管理システム - kagamihogeの日記

    RDBMSの知識不足を感じて以来、ここのところその勉強に力を入れている。学習方針は、 達人に学ぶDB設計 徹底指南書 初級者で終わりたくないあなたへ - kagamihogeのblog等の著書のミック氏が推奨している方法で、理論と実装の両面から進めている。俺の場合、後者は、Oracleで主にパフォーマンスの観点から基的原則を確認することをやり、前者は、書のような書籍を通して行っている。 書は、コンピュータサイエンス初年度の講義の教科書を想定して作られている。そのため、コンパクトながらもトピックの網羅性、それになにより各章が独立していながらも一冊を通してみると一貫性が保たれているのが素晴らしい。また、章から章への論理展開が極めて明快なので読みやすい。もっとも、これは俺がある程度の実務経験という下地と、まがりなりにもコンピュータサイエンスの学部経験があるからこそ、の部分もあるだろうけど

    リレーショナルデータベース入門―データモデル・SQL・管理システム - kagamihogeの日記
    sirocco
    sirocco 2013/07/03
    積ん読のまま何年か過ぎてしまった・・・Orz
  • stakemura/crossdb-dump · GitHub

    Cross-DB Dump Script based on SQLAlchemy Support database : MySQL, PostgreSQL, SQLite, Oracle, Microsoft SQLServer etc. (See http://docs.sqlalchemy.org/en/rel_0_7/core/engines.html) Requirement Python 2.6 or later SQLAlchemy 0.7 or later How to use Usage: crossdb_dump.py [options] Options: --version show program's version number and exit -h, --help show this help message and exit -s driver://user[

    sirocco
    sirocco 2013/05/11
    RDBの種類を問わずダンプするPythonスクリプト。ワイルドカードによるテーブルサーチ。スキーマ指定も。
  • 日付/時刻データ型

    sirocco
    sirocco 2013/03/03
    PostgreSQL で年月日を入力するときはいろんなフォーマットが可能だ。SQL Serverでは yyyy/mm/dd 、 yyyy-mm-dd は確認した。
  • http://www.owasoku.com/archives/24435520.html

    http://www.owasoku.com/archives/24435520.html
    sirocco
    sirocco 2013/02/14
    custsndataとcustsnfdataを間違ったって・・・間違うなって言うほうが無理。どうしても、手動で消す必要があるなら tmp とか forDelete消したくてしょうがなくなるような名前にすればいいのに。
  • パフォーマンス比較 Cassandra、Mongodb、SQLite、H2、MySQL、Postgres - cypher256's blog

    下記のようなシステムでパフォーマンスが良さげな SQLite を使用予定ですが、もっと速いものが無いか確認のため他のデータベースのパフォーマンスを計測してみました。SQL 利用前提ですが、NoSQL が圧倒的な性能を出す場合は検討する必要があるので KVS も確認しました。 データ件数は 1 億件程度、JDBC SQL 利用可能 INSERT、UPDATE はバッチ SELECT は主キーアクセス性能を重視 将来スケールアウトのための分散はありえるが、スタンドアロンで遅いのはだめ データベースのパフォーマンス比較 計測したデータベース データベース名 タイプ 形態 評判 計測についての備考 SQLite RDB 組み込み ※2 おもちゃ、Android標準 JDBC操作 ※1 H2 RDB 組み込み ※2 組み込み最速 JDBC操作 ※1 Derby RDB 組み込み ※2 Java標準で

    パフォーマンス比較 Cassandra、Mongodb、SQLite、H2、MySQL、Postgres - cypher256's blog
  • Amazon.co.jp: SQL: ゼロからはじめるデータベース操作: ミック: 本

    Amazon.co.jp: SQL: ゼロからはじめるデータベース操作: ミック: 本
    sirocco
    sirocco 2012/09/07
    今までSQLを書くときはそれっぽいサンプルを探して貼り付けるということをしていて、SQLの学習をしたことがなかった。テーブルを作るときの制約がいい加減だったり、NULLの認識も甘かった・・・。
  • 外部結合の使い方

    はじめに SQLに対するよくある誤解の1つに、「SQLは帳票作成のための言語だ」というものがあります。確かに、SQLは定型・非定型を問わず、さまざまな帳票や統計表を作成するシステムで利用されています。そのこと自体に問題はありませんが、エンジニアにとってもSQLにとっても不幸なことは、SQL来の用途ではない結果のフォーマット整形までがSQLに求められることです。あくまでSQLはデータ検索を目的に作られた言語だからです。 しかし同時に、SQLは多くの人が考えているよりずっと強力な言語です。特に近年は、そうした用途にも対応すべく、OLAP関数をはじめとするレポート作成のための機能が多く取り入られるようになりました。システム全体としてソースを簡略化でき、十分なパフォーマンスを得られるなら、SQLの力を利用する価値は十分にあります。 稿では、外部結合(OUTER JOIN)を利用したフォーマッ

    外部結合の使い方
    sirocco
    sirocco 2012/09/02
    外部結合により行を列に変換する方法。社員が受講した研修コースを管理するテーブルを社員1人が何のコースを選択したか分かるように並べる。
  • データベースの内部動作を知る

    SQLのプログラミングは奥が深い。特にパフォーマンスの観点から、そう言えるだろう。 みなさんご承知の通り、同じ結果を出すプログラムでも、SQLの書き方次第で処理時間に何倍もの差が生じ得る。効率の悪いSQLを書いてしまう原因は、多くの場合、リレーショナルデータベースの内部動作やアプリケーションに関する理解不足である。両者をよく知った上で最適なSQLを書けるようになることは、システムエンジニアとしての重要なスキルの一つである。 特集『基礎から理解するデータベースのしくみ』では、リレーショナルデータベースの内部動作について、基的な部分を分かりやすく解説している。SQLプログラミングに役立つことはもちろん、SQLチューニングやデータベース設計のための基礎知識としても不可欠だ。 イントロダクション ブラックボックスのままでいいの? Part 1:SQL文はどのように実行されるのか SQL実行までの

    データベースの内部動作を知る
    sirocco
    sirocco 2011/07/02
  • 住民基本台帳ネットワークシステム - Wikipedia

    この記事は特に記述がない限り、日国内の法令について解説しています。また最新の法令改正を反映していない場合があります。 ご自身が現実に遭遇した事件については法律関連の専門家にご相談ください。免責事項もお読みください。 住民基台帳ネットワークシステム(じゅうみんきほんだいちょうネットワークシステム)、通称住基ネット(じゅうきネット)とは、日において、個々の住民情報が分かれていた全国市区町村の地方公共団体と都道府県・全国センターとを専用回線で結び、住民票の4情報(氏名・生年月日・性別・住所)、住民票コードと変更情報(出生、転居などの異動事由と異動年月日)からなる「人確認情報」により、住民の利便性の向上と国及び地方公共団体の行政の合理化に資する、居住関係を公証する住民基台帳をネットワーク化し、全国共通の人確認ができるシステム地方公共団体間共同システム[1]。 各地方自治体ごとに全く別で

    sirocco
    sirocco 2011/03/23
    住基ネットって遠隔地にバックアップしていないの? うちの会社のデータは10年くらい前から毎日夜中の3時ころに暗号化してプロバイダに転送している。
  • 高木浩光@自宅の日記 - 三菱図書館システムMELIL旧型の欠陥、アニメ化 - 岡崎図書館事件(7)

    ■ 三菱図書館システムMELIL旧型の欠陥、アニメ化 - 岡崎図書館事件(7) 21日の日記で示したMELIL/CS(旧型)の構造上の欠陥について、その仕組みをアニメーションで表現してみる。 まず、Webアクセスの仕組み。ブラウザとWebサーバはHTTPで通信するが、アクセスごとにHTTP接続は切断される*1。以下のアニメ1はその様子を表している。 このように、アクセスが終わると接続が切断されて、次のアクセスで再び接続するのであるが、ブラウザごとに毎回同じ「セッションオブジェクト」に繋がるよう、「セッションID」と呼ばれる受付番号を用いて制御されている。 なお、赤い線は、その接続が使用中であることを表している。 次に、「3層アーキテクチャ」と呼ばれる、データベースと連携したWebアプリケーションの実現方式について。3層アーキテクチャでは、Webアプリケーションが、Webサーバからデータベー

    sirocco
    sirocco 2010/08/30
    絵で解説してあるので分りやすい。Like検索を使っているからという話もあったけれど、もっと分り易い話。
  • Not Only NoSQL!! 驚異的なまでにWRITE性能をスケールさせるSPIDERストレージエンジン

    Webサービスでは、世界中からのトラフィックを捌く必要があるため、いくらチューニングしようとも一台のRDBMSでは捌ききることが出来ないのが常だ。MySQLは最初からマスター・スレーブ型のレプリケーション機能が搭載されており、スレーブをたくさんぶら下げることによって参照の負荷をスレーブに割り振るというスケールアウトによってその問題に対処してきた。スレーブによるスケールアウトは、参照(=PV)が多いWebサイトと非常に相性が良く、幾多のWebサイトにおいて実績を作ってきているし、まだまだ利用されている。 しかしながら、サイトのトラフィックが劇的に増加してくるようになると、レプリケーションによる負荷分散では追いつかなくなってきた。そこで人々がとった選択肢は、memcachedを利用することである。memcachedはインメモリ型の高速なKVSであり、参照・更新性能はMySQLより格段に高い。M

    Not Only NoSQL!! 驚異的なまでにWRITE性能をスケールさせるSPIDERストレージエンジン
  • SQLアタマアカデミー 記事一覧 | gihyo.jp

    最終回 OLAP関数で強力な統計処理を実現!―手続き型から理解するSQL (5)集合指向と手続き型 ミック 2010-05-28 最終回 OLAP関数で強力な統計処理を実現!―手続き型から理解するSQL (4)OLAP関数と集約関数を組み合わせる ミック 2010-05-27

    SQLアタマアカデミー 記事一覧 | gihyo.jp
    sirocco
    sirocco 2010/01/28
  • MySQL InnoDBだけで全文検索 - SH2の日記

    実験エントリです。 予習してみる 「転置インデックス」というキーワードで検索して、しばらく勉強してみます。 転置インデックス - Wikipedia mixi Engineers’ Blog » 転置インデックスを実装しよう ASCII.jp:悟空、秘剣「転置インデックス」を手に入れる |Googleはなぜ的確に探せるのか? [を] 転置インデックスによる検索システムを作ってみよう! 転置インデックスで学ぶ検索エンジンの中身アプリ - 睡眠不足?! うーんなるほど。分かったような分からないような。 作ってみる とりあえず、Twitter4Jを使ってこんなデータを用意しました。ちなみに人選は漢(オトコ)のコンピュータ道: MySQLerのTwitterアカウントまとめ。を参考にさせていただきました。 5707049458,2009-11-14 20:28:34,sakaik,@hbstudy

    MySQL InnoDBだけで全文検索 - SH2の日記
  • データベースが遅くなった原因を自動的にスキャンして分析するフリーソフト「Trace Analyzer for SQL Server」

    Windows XP SP1/VistaとWindows Server 2003/2008の32ビットおよび64ビット版で動作し、SQL Server 2005/2008のデータベースを分析することで速度が遅くなってしまった原因を見つけてくれるのがこのフリーソフト「Trace Analyzer for SQL Server」です。インストールして起動させるには他に「.Net Framework 3.5 SP1」と「Microsoft SQL Server Compact 3.5 SP1」も必要です。 数百あるいは数千もあるファイルイベントをトレースしたり、サーバに過負荷をかけているバッチがどれが特定したりするわずらわしさから解放してくれるはずです。 ダウンロードは以下から。 DBSophic | Trace Analyzer for SQL Server http://www.dbsoph

    データベースが遅くなった原因を自動的にスキャンして分析するフリーソフト「Trace Analyzer for SQL Server」
  • もう1つの、DBのかたち、分散Key-Valueストアとは

    もう1つの、DBのかたち、分散Key-Valueストアとは:分散Key-Valueストアの命「Bigtable」(1)(1/3 ページ) RDBとは別の、クラウド時代のデータベースとして注目を浴びている「分散Key-Valueストア」。その命ともいえる、Googleの数々のサービスの基盤技術「Bigtable」について徹底解説 クラウド時代のデータベース「分散Key-Valueストア」 グーグルがインターネットの世界をここまで席けんできた最大の理由は何でしょうか。実は、それは同社の優れた検索技術ではありません。グーグルが成し遂げた最も大きなブレークスルーの1つは、同社が生み出した巨大な分散データストア、「Bigtable」にあります。 Bigtableは、Google検索をはじめ、YouTubeやGoogle MapGoogle Earth、Google Analytics、Goog

    もう1つの、DBのかたち、分散Key-Valueストアとは
    sirocco
    sirocco 2009/07/03
  • もしもデータベースサーバがクラッシュしたら

    人の作ったものは完璧ではない。完璧でないものはクラッシュする。故にデータベースはクラッシュする。サーバハードウェアの故障、OSのクラッシュ、データベースそのもののバグなど原因は様々であるが、永遠に停止することなく動き続けるRDBMSというものは存在しない。もちろん数年間無停止で問題が出ない場合もあるが、クラッシュするときはするので対策が必要である。もしもの時に備えて抜かりないのがスマートなオトコのスタイルである。データベースのご利用は計画的に。 と思ったそこのアナタ!!人生そんなに楽ではありません。 もちろんRDBMSはトランザクションのDurabilityを保証しているので99%の場合はそれでOKだけど、それはCOMMITが成功した場合の話。COMMITは大抵の場合高速な処理であるが、それでも処理にかかる時間はゼロではない。アプリケーションがデータベースサーバにCOMMITを送信してから

    もしもデータベースサーバがクラッシュしたら