Rustが再評価される:エコシステムの現状と落とし穴 In this article, we share findings and insights about the Rust community and ecosystem and elaborate on the peculiarities and pitfalls of starting new projects with Rust or migrating to Rust from othe...
インデックスが分かってない人が非常に多い。 現実にあった例で、60カラムあるテーブルに、前から3つずつの複合インデックスを20個作るとか、30カラムを1つの複合インデックスにするとか、意味が分かっていない人が非常に多くいます。 ※ 詳しい人へ。ここでは、インデックス = B-Treeインデックスと考えてください。 インデックスとは インデックスとは、そのままズバリ「索引」のことです。 身近な例ではカラオケがあります。いわゆるカラオケ本がインデックス。リモコンで押す番号が主キー、流れる音楽・映像が実レコードと考えてみてください。 カラオケ本は「歌手名順」と「曲名順」の2つは最低限あると思います。 これらは、 歌手名順は、「歌手名・曲名」の組み合わせの複合インデックス。 曲名順は、「曲名・歌手名」の組み合わせの複合インデックス。 と考えることができます。 想像してみてください。小学生でも「アン
PostgreSQLのC言語用ライブラリはlibpqで、C++用のライブラリはPostgreSQL7.3からlibpqxx、それ以前はlibpq++という名前だったようです。libpqは割とドキュメントやサンプルが豊富ですが、libpqxxはPostgreSQLのドキュメントからは分離しておりサンプルが少なかったので使ったときのメモ。 ダウンロードはlibpqxxのサイトから。インストールは解凍して./configure, make, make installで問題なし。PostgreSQLは8.1.4、libpqxxは2.6.8。 libpqxxのチュートリアルには動くコードが見当たらず、ソースの中のtest/test000.cxxなどがサンプルになる。 コンパイルがそのままでは通らなかったので以下のコマンドを打つことになりました。 $ export PKG_CONFIG_PATH=/u
トリガの使い方 トリガ(TRIGGER)は、データベースに更新(insert/update/delete)があった時、あらかじめ指定した関数を呼び出す機能です。 一つのレコードに対する更新によって、他のテーブルに対する更新や同じテーブルの別のレコードに対する更新が必要になる場合等に、それを自動的に行なうために使われます。 PostgreSQLでは、C言語またはPL/pgSQLで定義したユーザ定義関数を、トリガで指定することができます。 PL/pgSQLで定義したトリガ用の関数のcreate文と、トリガのcreate文を、下に示します。 reate function set_koushin_datetime() returns opaque as ' begin new.koushin_datetime := ''now''; return new; end; ' language 'plp
SQLパズル 第2版 プログラミングが変わる書き方/考え方の翻訳をされたミックさんのCodeZineでの連載をベースにした一冊。データベースをストレージとしてしか扱っていないWebプログラマは一度読んでおくべき。 (Feb 20, 2007 18:11追記) SQLの本によくある「効率的な」SQLの書き方の他に、「メンテナンスしやすい」SQLの書き方について言及している項目があります。SQLのコーディングスタイルって、あまり他の人のものを知る機会がないので興味深いです。 例えば、カラムを複数記述する際に、 SELECT id ,name ,email みたいな書き方をしたほうが後からのSQLの変更に強いという話や(これは私も実践しています)、複雑なクエリを書くときは「SELECTではなくFROMから書き始めたほうが思考しやすい」といったTipsはなかなか文書化されているものを見かけないので
We build transformative solutions for the world’s most ambitious companies. By providing user-focused consultancy, high tech capabilities and connection to diverse communities. We’re the world-leading experts at building massively scalable distributed systems. We have over 20 years of experience building critical digital infrastructure that scales to billions of users without error. We create a re
デブサミ2008初日の最後のセッションで、CodeZineのSQL連載でもお馴染みのミック氏が、「みんなまとめて面倒見よう~真のDBエンジニアになるために必要なこと~」と題した、CodeZineスペシャルセッションを講演。今月刊行した「達人に学ぶ SQL徹底指南書」の狙いや、SQLの原理の理解、データベースエンジニアとはどんな仕事か、またどんな仕事であるべきかについて語った。 中間層が欠けている日本のDB界 ミック氏は、現在の日本のデータベースエンジニア(以下、DBエンジニア)の構造を、中間層のえぐれた花瓶型と例え(正常であればピラミッド型)、初級者とベテランをつなぐ人材の不足を投げかけた。このままでは近い将来、団塊世代の退職に引き起こされる現象と同様に、ベテランの層がほとんどいなくなってしまうと危惧する。 これは、書籍やWebにおける技術資料についても同様のことが言え、「達人に学ぶ
ネイルで使う材料で、DIY時の木割れやネジ跡を派手にしたらかわいい OSB合板でちょっとしたボックスをつくりました。 ビス止め下手すぎて木を割ったり穴あけすぎたりした場所に、好きな派手色の樹脂を詰めてパテ代わりにしてみました。 ちょっと某HAYっぽみ出て可愛かったので、自分用にメモです。 手順 塗装 派手色グミジェルで失敗部分…
日本のオラクル・コミュニティが一堂に会するプレミア・イベントにぜひご参加ください。新しいスキルを身に付け、業界エキスパートと交流し、複雑なビジネス課題を解決するためのソリューションを発見しましょう。
2007年12月28日02:45 カテゴリ書評/画評/品評Lightweight Languages この発想はなかった - 書評 - 逆算式SQL教科書 技術評論社書籍編集部池本様より献本御礼。 ぐんぐん実力がつく! 逆算式SQL教科書 小野哲 やられた! この発想はなかったよ。 本書「ぐんぐん実力がつく!逆算式SQL教科書」は、一言で言うと「それってどう書く」のSQL版。文法や命令を説明するのではなく、「こうしたい時にはどうするの」という実例集。他の言語だと、いわゆるCookbookというのがすでにかなりあるのだけど、SQLはまだなかった。 目次 - 書籍案内:ぐんぐん実力がつく! 逆算式SQL教科書|gihyo.jp … 技術評論社 第1章 逆算してみませんか? 第2章 最も基本的なSELECT文 第3章 次に重要なSELECT文 第4章 1ランク上のSELECT文 第5章 覚えてお
当エンジニアブログを私物化していると専らの評判のmikioです。ブログを書かないと死んでしまう病に冒されているのでしかたないですね。個人ブログ時代よりもわかりやすくする努力はしているんですけどね。さて、今回はソースコードの最適化による高速化について述べます。 ベンチマークテスト TCはQDBMや他のDBMより高速であるという主張をしたいのですが、その根拠としてベンチマークテストの結果が必要となります。そこで、データベースに100万レコードを格納する処理と、そうして作ったデータベースから全てのレコードを探索する処理の時間を、各DBMで計測してみました(TCのパッケージのbrosというディレクトリにテストコードが入っています)。実行環境は、Thinkpad T60(Intel(R) Core2 CPU T7200 @ 2.00GHz)上のLinux version 2.6.16です。 ハッシュ
やや旧聞に属するが@ITの記事によると、オープンソースのデータベースサーバとしてずっとMySQLの後塵を拝しつづけてきたPostgreSQLが、最近になって急速に勢力を伸ばしていると言う。2006年のIOUG調査ではPostgreSQLを使っている割合はわずかに9%だったが、2007年10月に発表された最新の調査結果では(依然74%はMySQLユーザであるものの)PostgreSQLの利用は20%にまで拡大したそうだ。 これは、高速化などPostgreSQLそのものの改良が急ピッチで進められていることに加え、SonyやAppleがPostgreSQLベースのソリューションを使用していることが知られるようになり(日本だとR25.jpも)、知名度が上がったのが一因だと言う。サードパーティアプリケーションや教育用書籍を充実させていくのが今後の課題と考えられるとのこと。
Original Document revision: 1.02 Original Last update: 2003-05-27 翻訳バージョン: 0.9.5 目次 はじめに 前準備 インストール 単純なDBIスクリプト 問合せ処理 結果セットを返さない問合せ処理 結果セットを返す問合せ処理 クオート、プレースホルダー、パラメータ束縛 メタデータの問い合わせ コードブロックつきのメソッド サーバ接続の補足 エラー処理とデバッグ トランザクションサポート ドライバに特化した機能 その他の便利な機能 参考情報 はじめに Ruby DBI を使うと、いろんな種類のデータベースを同じAPIでもってrubyから アクセスすることができます。これは、Perl DBI と perl の関係と同じです。 この記事では Ruby DBI を使用したRubyスクリプトの書き方を説明します。こ の文書は DB
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 from threading import Thread from Queue import Queue import apsw class SingleThreadOnly(object): def __init__(self, db): self.cnx = apsw.Connection(db) self.cursor = self.cnx.cursor() def execute(self, req, arg=None):
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く