タグ

DBとSQLに関するnminoruのブックマーク (5)

  • JDBC setFetchSize() ではまった話 | TECHSCORE BLOG | TECHSCORE BLOG

    JDBCのsetFetchSizeメソッドはご存知でしょうか? 通常、クエリの結果はResultSetにすべてロードされます。このため、大量のレコードを取得するようなクエリではOutOfMemoryErrorが発生してしまいます。 このような場合に有効なのがsetFetchSizeです。 たとえば、クエリ発行の前にsetFetchSize(1000)とすると、1000件ずつResultSetにとりこまれるようになり、OutOfMemoryErrorを回避することが可能です。 (もちろん、搭載メモリ量、1レコードあたりのサイズによります!) しかし、ここに罠がありました。。。 setFetchSizeを使用しているにもかかわらず、全件がResultSetにロードされてしまう場合があるのです。 JDBCドライバごとにsetFetchSizeの挙動がかなり違っているので、はまりどころです。 今回

    JDBC setFetchSize() ではまった話 | TECHSCORE BLOG | TECHSCORE BLOG
  • Modern SQL in PostgreSQL

    SQL has gone out of fashion lately—partly due to the NoSQL movement, but mostly because SQL is often still used like 20 years ago. As a matter of fact, the SQL standard continued to evolve during the past decades resulting in the current release of 2016. In this session, we will go through the most important additions since the widely known SQL-92. We will cover common table expressions and window

    Modern SQL in PostgreSQL
    nminoru
    nminoru 2015/02/15
    ずっと探していた FILTER 句が P.62 に載っていた。
  • 第10回 結合大全 (1)クロス結合 | gihyo.jp

    はじめに SQLを使っていて、結合(join)という演算を使わないことはありません。リレーショナルデータベースでは、設計のセオリーとして正規化というプロセスを踏む場合が多いため、必然的にテーブルの数は複数になります。そうすると、複数のテーブルに散在するデータを統―いわば「逆正規化」―したり、あるいは結果として得たいデータのフォーマットを作るために、私たちはさまざまな種類の結合を利用します。 結合演算は、SQLの演算の中では比較的イメージをつかみやすいものです(少なくとも、相関サブクエリとかCASE式に比べれば⁠)⁠。しかし他方、結合は種類のバリエーションがかなり多く、どういう場合にどういう結合を使うのが適切なのか、迷うことも少なくありません。稿では、SQLで利用される結合について、どのような種類の結合がどういう動作を行うか、理論的な整理を行いたいと思います[1]⁠。そして、結合という演算

    第10回 結合大全 (1)クロス結合 | gihyo.jp
    nminoru
    nminoru 2013/11/29
  • Big Data Benchmark

    Click Here for the previous version of the benchmark Introduction Several analytic frameworks have been announced in the last year. Among them are inexpensive data-warehousing solutions based on traditional Massively Parallel Processor (MPP) architectures (Redshift), systems which impose MPP-like execution engines on top of Hadoop (Impala, HAWQ), and systems which optimize MapReduce to improve per

    nminoru
    nminoru 2013/06/26
    Redshift、Hive、Shark、Impalaのベンチマーク
  • 最終回 OLAP関数で強力な統計処理を実現!―手続き型から理解するSQL (1)OLAP関数とは何か | gihyo.jp

    SQLアタマアカデミー 最終回 OLAP関数で強力な統計処理を実現!―手続き型から理解するSQL (1)OLAP関数とは何か はじめに この連載では、SQLの独特な考え方に慣れてもらうため、その集合指向的な側面を強調して取り上げてきました。これはほかの言語が持たない特性のため、慣れないうちはそのパラダイムが奇妙に感じられます。その違和感を軽減することが、連載の目的の一つでした。 一方最近では、SQLの側でも時代のニーズに対応するため、さまざまな機能を追加しています。その一端で、実はかなり手続き型言語の考え方を取り入れるようになっています。そのため、むしろ新機能のほうが一般的なプログラマにとっては「とっつきやすい」と思えるところがあります。 今回取り上げるのは、そうした新機能の一つで、OLAP関数と呼ばれるものです(分析関数とかウィンドウ関数という名前でも呼ばれます⁠)⁠。標準SQLでは2

    最終回 OLAP関数で強力な統計処理を実現!―手続き型から理解するSQL (1)OLAP関数とは何か | gihyo.jp
  • 1