タグ

sqlに関するmoccos_infoのブックマーク (21)

  • TechCrunch

    Ford is buying and burying Auto Motive Power, or “AMP” for short. The secretive energy management startup once claimed to power “most of the world’s top electric OEMs,” thoug

    TechCrunch
    moccos_info
    moccos_info 2017/09/04
    ORMでも性能面では泣くことが多いのに、果たしてその上をいけるのだろうか
  • SQLパフォーマンス詳解: 開発者のためのデータベースチューニング解説書

    前書き インデックスの 内部構造 インデックス リーフノード 検索 ツリー(Bツリー) 遅いインデックス パートI where 句 等価 演算子 プライマリキー 複合インデックス 遅いインデックス パートII 関数 - where 大文字・小文字を区別する 検索 ユーザ定義 関数 インデックスの作り過ぎ パラメータ化 クエリ 範囲 検索 大なり、小なり、 BETWEEN LIKEフィルタに 対するインデックス インデックスの結合 部分インデックス OracleにおけるNULL NULLに対する インデックス NOT NULL 制約 部分インデックスを エミュレートする 処理しにくい条件 日付型 数値文字列 列の連結 スマートなロジック 数式 パフォーマンスと スケーラビリティ データ 量 システム 負荷 レスポンス タイムとスループット 結合 処理 入れ子 ループ ハッシュ 結合 ソートマ

    SQLパフォーマンス詳解: 開発者のためのデータベースチューニング解説書
    moccos_info
    moccos_info 2017/07/18
    Safari booksに無かった
  • 【SQLインジェクション対策】徳丸先生に怒られない、動的SQLの安全な組み立て方

    SQLインジェクションを・・・駆逐してやる!! この世から・・・一匹残らず!! (PHPカンファレンス2015) Read less

    【SQLインジェクション対策】徳丸先生に怒られない、動的SQLの安全な組み立て方
  • 情報処理推進機構:情報セキュリティ:脆弱性対策:安全なウェブサイトの作り方

    「安全なウェブサイトの作り方」は、IPAが届出(*1)を受けた脆弱性関連情報を基に、届出件数の多かった脆弱性や攻撃による影響度が大きい脆弱性を取り上げ、ウェブサイト開発者や運営者が適切なセキュリティを考慮したウェブサイトを作成するための資料です。 「安全なウェブサイトの作り方」改訂第7版の内容 第1章では、「ウェブアプリケーションのセキュリティ実装」として、SQLインジェクション 、OSコマンド・インジェクション やクロスサイト・スクリプティング 等11種類の脆弱性を取り上げ、それぞれの脆弱性で発生しうる脅威や特に注意が必要なウェブサイトの特徴等を解説し、脆弱性の原因そのものをなくす根的な解決策、攻撃による影響の低減を期待できる対策を示しています。 第2章では、「ウェブサイトの安全性向上のための取り組み」として、ウェブサーバの運用に関する対策やウェブサイトにおけるパスワードの取扱いに関す

    情報処理推進機構:情報セキュリティ:脆弱性対策:安全なウェブサイトの作り方
  • NEC、SQLでFPGAを直接設計できる技術を開発--停止せずに処理内容も変更

    印刷する メールで送る テキスト HTML 電子書籍 PDF ダウンロード テキスト 電子書籍 PDF クリップした記事をMyページから読むことができます NECは8月31日、ビッグデータのリアルタイム分析処理を高速化するハードウェアを専門知識がなくても簡単、高速に設計できる技術を開発したと発表した。2014年度までに製品化して提供することを目指す。 今回開発した技術は、リレーショナルデータベース管理システム(RDBMS)で標準的に使われるデータアクセス言語「SQL」で設計したソフトウェアを、同社が保有する書き換え可能なLSI(Field Programmable Gate Array:FPGA)の回路合成技術「CyberWorkBench」を利用して、専用ハードウェアに自動変換するというもの。データ分析担当者は、使い慣れたSQLFPGAを直接設計できるといい、技術者による回路設計作業が

    NEC、SQLでFPGAを直接設計できる技術を開発--停止せずに処理内容も変更
  • MySQL 5.0のストアドプロシージャをチェック

    MySQL 5.0のストアドプロシージャをチェック:エンタープライズ市場に向かうMySQL 5.0(後編)(1/3 ページ) MySQL 5.0最大の目玉はストアドプロシージャである。インストールした5.0を使って、ストアドプロシージャの動作を試してみよう。(編集局) # mysql -u root mysql> use test Database changed mysql> desc REGION; +-------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------+-------------+------+-----+---------+----------------+ | NO | int(11) | | P

    MySQL 5.0のストアドプロシージャをチェック
  • Learn SQL the Hard Way

    Learn the SQL basics fast. Learn SQL The Hard Way is a crash course in the basics of SQL to store, structure, and analyze data. With this book you can understand what is going on in your database, whether you use an ORM or direct access. It covers all the introductory commands and includes videos demonstrating every exercise. If you need to learn SQL quick, this is the book for you. Get the course

  • Acroquest

    Javaの障害でお悩みの方。問題解析に取り組んでいる方。文字化けやSocket通信、JDBCなどこちらをご参照下さい。 コラムの対象: JDBCを使用して、データベースプログラムを作成したことがある方。 1.はじめに データベースの操作はその手法によってパフォーマンスに大きく影響をあたえます。特に、今日のシステム開発はデータベースなしに語れないほどであり、重要であると言えます。 ここでは、JDBCを使用したデータベース操作のトピックから、PreparedStatement を使用した高速化について説明します。このコラムで使用したサンプルでは、PreparedStatementの利用で最大3.8倍高速になりました。 2.Statementとは Javaプログラムがデータベースに接続すると、対応するConnectionオブジェクトを一つ取得します。Statementは、「Connection

  • 第1回 サブクエリ・パラノイア~副問い合わせ乱用による性能劣化を治療せよ! | gihyo.jp

    図1 テーブルのレイアウト 図2 リスト1の実行結果 cust_id | seq | price --------+-----+------- A | 1 | 500 B | 5 | 100 C | 10 | 600 D | 3 | 2000 リスト1 サブクエリ・パラノイア 患者1号 SELECT R1.cust_id, R1.seq, R1.price FROMReceiptsR1 (※) INNER JOIN (SELECT cust_id, MIN(seq) AS min_seq FROMReceipts ※ GROUP BY cust_id) R2 ON R1.cust_id = R2.cust_id AND R1.seq = R2.min_seq; ※ 同一テーブルを結合する自己結合 さてワイリー、お前ならどうする。 ええっ、ちょっと待ってください。整理します。このReceip

    第1回 サブクエリ・パラノイア~副問い合わせ乱用による性能劣化を治療せよ! | gihyo.jp
  • 第2回 冗長性症候群~条件分岐をUNIONで表現するなかれ | gihyo.jp

    ここはとある街の総合病院。 ここには通常の診療科のほかに、一風変わった診療科が存在する。 何軒もの病院をたらいまわしにされた、手の施しようのないSQLや、今すぐに改善が必要なSQLが担ぎ込まれる救命室である。 それがSQL緊急救命室、略してSER(SQL Emergency Room⁠)⁠。 そう、ここは国内でも唯一のプログラミング専門外来である。 ロバート救命室部長。腕の立つエンジニアだが、口が悪く性格はもっと悪い四十オヤジ。 (AM10:00 休憩室。ワイリーが机に向かって一人で何かしている) どってぃろーんどってぃろーん、ぽぽぽんぽーん、どってぃろーん…

    第2回 冗長性症候群~条件分岐をUNIONで表現するなかれ | gihyo.jp
  • HandlerSocket plugin for MySQL

    1. handlersocket plugin for mysql 2010/06/29 Tech セミナー @ 代々木 株式会社 DeNA システム統括IT 基盤部 樋口 証 <higuchi dot akira at dena dot jp> 2. Who am I? DeNA IT 基盤部 システムのパフォーマンス最適化 障害の分析 ミドルウェア開発 IPA 未踏 スーパークリエータ (2005 年 ) 1993 年ころから GNU/Linux 利用 Fedora: yum install KoboDeluxe Debian: apt-get install kobodeluxe サーバソフトウェアを多数開発

    HandlerSocket plugin for MySQL
  • “NoSQLがあればMySQLはいらない”という流れに一石を投じた

    “NoSQLがあればMySQLはいらない”という流れに一石を投じた ディー・エヌ・エー システム統括IT基盤部インフラ担当プリンシパルアーキテクトMySQLエバンジェリスト 松信嘉範氏 システム統括IT基盤部 樋口証氏 今年4月に米サンタクララで開催された「MySQL Conference & Expo 2011」において、ディー・エヌ・エー(DeNA)が「Corporate Contributor of the Year 2011」を受賞した。同社が開発したMySQLのプラグイン「HandlerSocket」が評価されたためだ。HandlerSocketは、MySQLフロントエンドを置き換え、SQLを介さずに素早い処理を可能にする技術MySQL Conferenceの位置付けや、HandlerSocketの開発の経緯などについて、DeNAシステム統括IT基盤部インフラ担当

    “NoSQLがあればMySQLはいらない”という流れに一石を投じた
  • 第一の大罪(1) ~ データベースアプリケーションのパフォーマンスにおける七つの大罪

    第一の大罪は''データベースの物理設計''に関するもので、たとえばスキーマ設計の問題、テーブルの列の順序、インデックス付け、データベースページサイズの選択など、パフォーマンスに悪影響を及ぼしかねない重要な要因はいくつも考えられます。今回の記事では、SQL Anywhereのデータベース設計にまつわる具体的な問題と、ドメイン(定義域)の概念に関する内容を取り上げていきます。 ドメイン(定義域)とは ドメインの概念は、E. F. Coddが発案した最初のリレーショナルデータモデルに含まれています。Chris Dateは、彼の重要な著書 [1, pp. 81] の中でドメインを次のように定義しています。 次に、ドメインという言葉を、すべて同じ型の、スカラー値の名前付きの集合と定めることにする。たとえば、サプライヤー番号のドメインは、サプライヤー番号として取り得るすべての番号の集合になり、出荷数量

    第一の大罪(1) ~ データベースアプリケーションのパフォーマンスにおける七つの大罪
  • データベースアプリケーションのパフォーマンスにおける7つの大罪

    パフォーマンス分析は一筋縄ではいかないことが多いのですが、それは可変要素が非常に多く、ハードウェアの特性、ワークロード、物理的データベース設計、およびアプリケーション設計など、あらゆる要素を検討する必要があり、またこれらの要素の間にトレードオフや副作用が存在するからです。これが正解、と言えるものが見つからないのが普通です。 少し前、SQL AnywhereのコンサルタントであるBreck Carterが、「How to Make SQL Anywhere Slow(SQL Anywhereを遅くする方法)」という記事を書きました。これは今までに読んだ記事のなかでも最大のお気に入りの1つです。Breckはこの記事の中で、パフォーマンスの低下につながる38の異なるデータベース設計、アプリケーション設計、およびサーバ構成設定を列挙しています。この記事を受けて、今後しばらくは「データベースアプリケ

    データベースアプリケーションのパフォーマンスにおける7つの大罪
  • How To Make SQL Anywhere Slow

    moccos_info
    moccos_info 2011/07/15
    アンチパターン
  • ORMがアンチパターンである11の理由

    サンフランシスコのプログラマLaurie Voss氏が書いた見逃せない記事が賑わっています。近年のフレームワークやライブラリの定番中の定番ORマッパーが既にアンチパターンなのではというのが彼の主張です。この記事を書くきっかけになったのはこのツイートだそうです。 I cannot overstate the degree to which ORM is a dangerous antipattern. — Laurie Voss (@seldo) June 9, 2011 ORM が危険なアンチパターンだっていうのはどれだけ言っても言い過ぎることはない このツイートに対して各方面(ActiveRecord, Doctrine, Hibernate)から多くの(激しい)返信が寄せられて書かれたのが問題のエントリです。まずはアンチパターンとは何かの定義として下記の2つを挙げています。 当初は有益

    ORMがアンチパターンである11の理由
  • ORM is an anti-pattern | Seldo.com

    I tweeted about ORM last week, and since then several people have asked me to clarify what I meant. I have actually previously written about ORM, but it was in the context of a larger discussion about SQL and I shouldn't have confused the two issues. So here I'm going to focus on ORM itself. I'm also going to try to be very brief, since it became very apparent from my SQL article that people tend

  • JavaとSQLiteデータベース - 愚鈍人

    AndroidではデータベースとしてSQLiteが標準でサポートされています。 Androidでデータベースを使う前に、WindowsJavaからSQLiteを使う方法について、調べてみました。 SQLiteのインストール インストールと言っても、特別な事をする必要はありません。 データベースサーバ用の特別のプログラムをインストールする必要は無く、 コマンドラインから使うだけであればSQLite Download Pageより 「Precompiled Binaries For Windows」の下の 「sqlite-3_6_23_1.zip」をダウンロードしてきて、適当なデレクトリに解凍してパスを通すだけです。 「Microsoft Access」 のMDBファイルをコマンドラインツールを使ってアクセスするようなイメージになります。 必要無いが、後で何かの時に使うかもと思って、いちおう

    JavaとSQLiteデータベース - 愚鈍人
  • ソーシャルゲーム開発者なら知っておきたい MySQL INDEX + EXPLAIN入門|技術ブログ|北海道札幌市・宮城県仙台市のVR・ゲーム・システム開発 インフィニットループ

    ソーシャルゲーム開発者なら知っておきたい MySQL INDEX + EXPLAIN入門 広く浅くを担当してます、ota です。 技術ブログ第一回から早速流用スライドで申し訳ありませんが、社内勉強会資料として作成した「MySQL INDEX + EXPLAIN入門」です。 当社でもソーシャルゲームの開発を行っていますが、このような大量のデータを使用する・クエリの速度が求められる場合にインデックスは大変重要です。 インデックスの有効な利用にはDB設計者だけではなくプログラマにもある程度の知識が最低限必要となりますが、インデックスについての初心者向け資料があまりないようです。 このスライドではプログラマに知っておいて欲しい以下の基的な点をまとめました。 INDEXを使用する時に気をつけること WHERE句 !=、<>はインデックスが使用できない WHERE句の全てのANDにかかっていないイン

    ソーシャルゲーム開発者なら知っておきたい MySQL INDEX + EXPLAIN入門|技術ブログ|北海道札幌市・宮城県仙台市のVR・ゲーム・システム開発 インフィニットループ
    moccos_info
    moccos_info 2011/03/30
    インデックス最適化手法と、Explainによる確認
  • ソーシャルゲームのためのMySQL入門その2 | BLOG - DeNA Engineering

    こんにちはこんにちは。11インチMacBook Airが欲しくてたまらないiwanagaです。 前回の記事 が幸いにもご好評を頂けた様で非常にうれしいです。嬉しくなって、ついがんばって第2弾を書いてしまいました。引き続き、ソーシャルゲームでよく使われるテーブルタイプ毎にちょっとしたテクニックを紹介していきます。 今回はちょっとライトな感じ&読み物になってしまっていますが「ユーザID単位で1つだけ持つデータ」と「パラメータなどのマスターデータ」についてご説明したいと思います。ちなみに次回はInnoDBのデータ構造の簡単な説明と複合プライマリーキーのデータについて、その次で紹介し損ねたちょっとマニアックなテクニックや性能管理のための手法を紹介することを予定しています。 その前に。。。 先日行われた JAPAN INNOVATION LEADERS SUMMIT で弊社松信が「ソーシャルゲーム

    ソーシャルゲームのためのMySQL入門その2 | BLOG - DeNA Engineering