タグ

DBに関するsenecaのブックマーク (14)

  • 社内サーバインフラ勉強会(DB)

    ASPLOS2017: Building Durable Transactions with Decoupling for Persistent MemoryAtsushi Koshiba

    社内サーバインフラ勉強会(DB)
  • VimとExcelを組み合わせて全く新しいSQLクエリーを生成する | Webシステム開発/教育ソリューションのタイムインターメディア

    問題 ソフトウェア開発はクリエイティブでエキサイティングなものではありますが、いつもそうだとは限りません。 時には泥臭い作業が必要になることもあります。 例えばとある企業で運用されている業務用アプリケーションのメンテナンスを任されていたとしましょう。 時折 「△△部署が○○部署と☆☆部署に分割されたので関連データを移行してください。 対応関係は添付のExcelファイルを参照してください」 のような依頼が舞い込んできます。 これが5個程度なら手作業でSQLクエリーを書いても構わないのですが、 さすがに1万と2千個くらいになると手作業ではやっていられません。 となると何らかの方法で貰ったデータからSQLクエリーを生成することになります。 しかしこのSQLクエリーの生成が案外面倒だったりします。 貰ったデータがCSVの場合、これが素朴なデータならエディターにコピーして適当に置換すればいいのですが

    VimとExcelを組み合わせて全く新しいSQLクエリーを生成する | Webシステム開発/教育ソリューションのタイムインターメディア
    seneca
    seneca 2011/07/23
  • オープンソースカンファレンス2011 Kansai 講演資料&録音ファイル — Let's Postgres

    録音:永安 悟史 編集:板垣 貴裕 2011年7月15, 16日に開催された オープンソースカンファレンス2011 Kansai@Kyoto では、PostgreSQL 関連セッションがいくつか開かれました。 講演者のみなさまから、講義資料と講義の録音ファイルを頂けたので、ここで公開させていただきます。 PostgreSQL アーキテクチャ入門 講演資料 (PDF) / ♪ 録音ファイル (mp3, 25.7 MB) 講師:永安 悟史 (アップタイム・テクノロジーズ合同会社) レベル:初級~中級者向け PostgreSQL でシステムを構築して実運用をするためには、データベース管理者(DBA)として ある程度内部構造を理解しておく必要があります。講演では、開発や運用において必要とされる技術的知識について、 PostgreSQL の基的な仕組みからバックアップ&リカバリ、レプリケーション

  • ランキングのつくりかた:Kenn's Clairvoyance

    遅ればせながら、あけましておめでとうございます。 先週には、ベイエリアの友人たちがやっているEchofonがPostUpに買収されるなど、幸先のよい新年のスタートとなりました。 さて、最近ホットなマーケットといえばソーシャルゲームですが、ゲームといえばリーダーボード。ハイスコアのランキング友人や見知らぬ人たちと競うのは、ビデオゲームが誕生した1970年代から欠かせない要素でした。 ところが、インターネット経由で100万人規模のプレイヤーがつながるようになってきた現在、その全体をランキングづけするのは、技術的にも大きなチャレンジとなってきました。 今回は、そのリーダーボードのつくりかたについて、ぼくらの作っているソーシャルゲーム・プラットフォームであるPankiaの運用で得られた知見を共有したいと思います。 自分の順位を知る方法 リーダーボードの基的な考え方はシンプルで、それはつまり「ユ

    ランキングのつくりかた:Kenn's Clairvoyance
  • 開発メモ: IndexDB: 転置インデックスのためのDB

    大震災の時分に何だが、Kyoto Cabinetベースで検索エンジンの核となる転置インデックスを作るのに適したDBを実装したという話。 転置インデックスとappend操作 多くの検索エンジンの核となる転置インデックスとは、検索語に一致する表現がどこに出てきたかという位置情報のリストを保持するものであり、検索語をキーとして位置情報リストを値とする連想配列である(転置インデックスを使わない検索エンジンもあるが)。この位置情報リストをposting listとか呼んだりするらしい。転置インデックスにもいくつか流儀があり、検索語をどのように切り分けるかで単語(分かち書き)方式とか文字N-gram方式とか呼ばれるものがあったりするが、いずれにせよ、小さいキーと、非常にでかい値を保持する連想配列を作ることには変わりない。 で、素朴に転置インデックスを作ろうとすると、検索対象の文書を解析しながら、得られ

    seneca
    seneca 2011/03/13
  • DBセキュリティの第1歩、アカウント管理と認証

    なぜアカウント管理と認証が大切なのか 個人情報保護法の施行や、内部統制におけるIT統制の要求、相変わらず多く発生している情報漏えいや改ざん事件などをきっかけに、データベース(DB)に保存されている重要な情報資産を保護するための、DBセキュリティ対策が求められています。 DBセキュリティ対策の1つとして、今回は「アカウント管理と認証」について解説します。なお、当記事では、DBにログインする際に使用するIDのことを「アカウント」と表記します。 システム管理部門において、DB管理業務に使用するアカウントを共有していたとしましょう。その部署に複数の人が所属していれば、管理職や実務担当など、それぞれの役割があります。このため、おのずと「やっていい操作」と「やってはいけない操作」が存在するはずです。 しかし、全員で同じアカウントを共有していた場合、不都合が生じてしまいます。個人の役割に沿った必要な権限

    seneca
    seneca 2010/11/03
  • PostgreSQLがいきなり“9.0”に飛んだ理由 - Database Watch 2010年7月版 − @IT

    映画「アイアンマン2」はご覧になりましたか? 映画ではオラクルCEOのラリー・エリソン氏が人役で出ていて、主人公が「やあ、ラリー」とエリソン氏に声をかけるシーンがあるそうですよ。今月はPostgreSQL 9.0とオラクルのテクノロジー解説です。 PostgreSQL 9.0でNoSQLへと進むか? オープンソースの世界は動きが素早いです。商用データベース製品ですとバージョンアップは数年に1度という頻度ですが、オープンソースだとおよそ1年に1度、新バージョンを目にするということも珍しくありません。新しい技術やトレンドを素早く取り込もうとするコミュニティの熱意がそうさせるのかもしれませんね。 さて、次に新しいバージョンを出そうとしているのはPostgreSQLです。前の8.4のリリースが2009年7月なので、まだ1年しか過ぎていません。早いです。2009年11月のPostgreSQL Co

  • Song of Cloud: 送金のトランザクション処理パターン

    App Engineで現実的な送金処理について考え中です。 ドラフト版なので、怪しい点があればご指摘いただければ幸いです。 コメントで情報いただきました。 Distributed Transactions on App Engineで紹介されてる方法と基的に同じなので、おそらく問題なく動きそうです。ありがとうございました。 今回はこんな図を使います。 この図の読み方は、矢印の方向にユースケースの一連の処理(またはリクエストの処理)が流れていて、右に行くほど時間が経過しています。そして、矢印がくし刺しにしている四角形は、そのユースケース中で操作するエンティティを表しています。 また、左右の位置が同じ矢印は、基的には同じ時刻に発生したイベントを表しています。上記の図では、A, B, Cがそれぞれの口座エンティティを同時に操作している感じです。 並行性制御(おさらい) 最初の図のように、それ

    seneca
    seneca 2010/04/08
  • 第10回 ホスティングサービスでDBメンテナンスを学ぶ part.1 | gihyo.jp

    最近のホスティングサービスでは共用サービス/専用サービスとも、各種のDB(データベース)をサポートしています。そこで今回から3回にわたり、MySQL5.x 系を題材にDBメンテナンスについて解説します。第1回の今回は、ホスティングでのDB利用の状況とMySQLの基を紹介します。 ホスティングにおけるDBの位置付け Webページやイントラネットとの連携など、DBはWebシステムで広く利用されており、今やWebシステムにとってもDBは不可欠の存在といえます。ホスティングサービスもこの流れに呼応し、多くのビジネス向けサービスではDBを基メニューに含めています。 広く使われているDBMS(データベース管理システム⁠)⁠ には、Microsoft SQL Server、Oracle、IBM DB2、PostgreSQLMySQLなどがあり、ホスティングサービスの多くはこのどれか1 つまたは2

    第10回 ホスティングサービスでDBメンテナンスを学ぶ part.1 | gihyo.jp
    seneca
    seneca 2010/01/30
  • DB設計の神ツール「ERMaster」なら、ここまでできる

    DB設計の神ツール「ERMaster」なら、ここまでできる:ユカイ、ツーカイ、カイハツ環境!(11)(1/3 ページ) 無料のEclipseプラグイン「ERMaster」とは データベースのテーブル設計を行うときに皆さんは、どのようにしているでしょうか? いくつかの無料で利用できるツールが提供されているので、筆者はそれらを利用していましたが、最近「ERMaster」と呼ばれるEclipseプラグインの存在を知りました。 ERMasterは、ほかのツールに比べ、直感的で分かりやすいUI(ユーザーインターフェイス)に、カスタマイズ可能な、Excelで出力できるテーブル定義書、辞書機能など痒いところに手が届くERモデリングのツールです。稿では、このERMasterについてご紹介します。 ERMasterの主な特徴、8つ ERMasterには、主に次のような特徴があります。 【1】直感的で使いや

    DB設計の神ツール「ERMaster」なら、ここまでできる
    seneca
    seneca 2010/01/21
  • SQLインジェクションとは何か?その正体とクラッキング対策。

    世間では、今Gumblar祭りが勃発中であり、SQLインジェクションがニュースに出てくることは少なくなったが、だからと言ってSQLインジェクションの脅威がなくなったわけではない。SQLインジェクションはGumblarを仕掛ける手段としても利用されることがあり、Webアプリケーションを提供する全ての人にとって、対策を講じなければいけない驚異であることに変わりはない。SQLインジェクションという攻撃手法が認識され、大いに悪用されているにも係わらず、その質に迫って解説している記事は少ないように思う。従来のWeb屋だけでなく、今やアプリケーション開発の主戦場はWebであると言っても過言ではなく、そういう意味ではSQLインジェクションについて理解することは、全てのプログラマにとっての嗜みであると言えるだろう。 というわけで、今日は改めてSQLインジェクションについて語ってみようと思う。 SQLイン

    SQLインジェクションとは何か?その正体とクラッキング対策。
  • 第7回 性能改善の鍵、インデックスの特性を知る~B-treeとハッシュ (3)結論 | gihyo.jp

    総評 以上、B-treeとハッシュという代表的なパフォーマンスチューニングのアルゴリズムについて見てきました。どちらの技術を採用するかは、業務要件に依存するところが大きいのですが、ここで目安として一般的な結論も述べておきましょう。 結論1:とりあえずB-treeインデックスを使って大敗することはない。 B-treeはバランスのとれたオールラウンダーですので、だいたいどんな要件にもそこそこ対応します。安心して使ってください。 一方、ハッシュについての結論は、こうです。 結論2:等値条件で性能を追求したいならハッシュを使いなさい。ただし大敗も覚悟しなさい。 ハッシュが効果を発揮するのは、等値条件(=)のときだけです。また、ソート処理の助けにもなりません。したがって、使う局面は非常に限られてきます。PostgreSQLのように、マニュアルに「ハッシュインデックスの使用は推奨しない」とはっきり書い

    第7回 性能改善の鍵、インデックスの特性を知る~B-treeとハッシュ (3)結論 | gihyo.jp
    seneca
    seneca 2009/12/17
  • MySQL:老プログラマーの備忘録:So-netブログ

    MySQLのログファイル MySQLのログファイルは、実行エラーログ、クエリログ、スロークエリログ及びトランザクションログの4種類のログがあります。 実行エラーログ 実行エラーログは、起動、停止及び実行時のエラーがMySQLディレクトリに"ホスト名.err"というファイル名で保管されます。 MySQLで障害発生時に障害特定の情報を得ることが出来ます。 ・設定方法 1.コマンド UNIX、Linuxの場合 $ mysqld_safe --log-error=myerror.log --log-warnings=1 Windowsの場合 C\> mysqld-nt --log-error=myerror.log --log-warnings=1 オプション

  • Oracleの階層問い合わせ(4) (connect by nocycle)

    はじめに Oracleの階層問い合わせについて、基事項から使用例まで、SQLのイメージを交えて解説します。稿では、connect by nocycle、connect_by_IsCycle疑似列を扱います。 対象読者 Oracleの階層問い合わせを使いたい方 OracleSQLの理解を深めたい方 connect by nocycleを使用する階層問い合わせは、有向グラフや無向グラフなどのグラフ構造の知識を必要としますので、『グラフ理論 - Wikipedia』などを読まれてからの方が理解しやすいと思います。 必要な環境 稿で扱うSQLは、Oracle 10.2.0.1.0で動作確認しました。 1. connect by nocycle cycleという英単語は名詞で、意味は「ひと巡り、一巡、周期」です。connect by nocycleを使うと、経路上で訪問済であるノードへの再訪

    Oracleの階層問い合わせ(4) (connect by nocycle)
  • 1