概要 これまで「Hiveからデータ取得・簡単な加工→Pythonで加工・分析」 という流れで作業していたのですが、 Hive→SQLite→Pythonという流れにしたところ進捗が改善されたので、 SQLiteの簡単な使い方とPythonによるSQLユーザ定義関数の組込方法 についてメモを残しておきます。 特にユーザ定義関数の組込を自由に出来ると、 分析する際、相当楽になるということに気付きました。 SQLite挟むことで何がどう改善されたの? Hiveはデカいデータをゴリゴリ取ってくる分には SQLちょっと書くだけで済むので大変便利ですが、 初動遅いためちょこちょこ小さいデータを何度も取ろうとするとストレス溜まります。 そのため、これまではある程度のデータをまとめてHiveで落としてきて Pythonで加工してから分析するという流れを取っていました。 ただ加工するために似たようなコード何
軽量なリレーショナルデータベースとして人気のSQLite。そのWebサイトに掲載されている「How SQLite Is Tested」の内容が、海外のプログラマなどのあいだで話題になっています。 3月に公開された最新バージョンのSQLite 3.6.23。本体のソースコードは約6万7200行(67.2KSLOC、Kilo Source Lines of Code:空行やコメントを除いた行数)なのに対し、テストコードはなんと4567万8300行(45678.3KSLOC)だと紹介されているのです! これはテストコードが本体の約679倍もの大きさだということになります。 100%のブランチカバレッジ SQLiteコアのライブラリをテストするテストコードとして、以下の3つが紹介されています。 TCL Tests TCL Testsはもっとも古いテストコードで、TCL scripting lang
The LEMON Parser Generator The Lemon program is an LALR(1) parser generator. It takes a context free grammar and converts it into a subroutine that will parse a file using that grammar. Lemon is similar to the much more famous programs "YACC" and "BISON". But lemon is not compatible with either yacc or bison. There are several important differences: Lemon using a different grammar syntax which is
Lemonパーザジェネレータ チュートリアル →元記事 by Mike Chirico, in Tutorials - Sat, Aug 14th 2004 00:00 PDT translated by Shin-ya TSUBAKI - Sunday, August 29th 2004 17:00 GMT LemonはDr. Richard Hippにより書かれた, コンパクトでスレッドセー フ, 十分テストされたパーザジェネレータです. flexのようなスキャナーとあ わせてパーザジェネレータを使うことで, 書くコードの量が少なくなるのでと ても便利です. パーザ用の文法を書くだけでいいのです. 著作権に関する注意: freshmeat.netにある読者投稿記事の 著作権および責任はすべてその著者に帰属するものとします; 再掲 載については著者に直接連絡をとってください. Examp
その強力なアドオンで、とっても便利なFirefoxですが、毎日使っているとドンドン動きが重くなっていってしまいます。 うーん、どうにか軽くならないものかと色々やってみました。 起動を速くしたい まずはとにかく時間のかかる起動をなんとかしたいと思います。 Firefoxはブックマークやら履歴やらクッキーやらをSQLite DBで管理しています。 毎日使っていくうちにDBは大きくなり、起動や動作が重くなっていくとのこと。 そこでSQLite Optimizerというアドオンを使って、DBの最適化をしてしまいます。 手順は以下の通り。 1. SQLite Optimizerをインストール。 2. アドオンの管理画面でSQLite Optimizerの環境設定画面を開きます。 3. 『Firefox終了時にsqliteデータベースのREINDEXを実行する』にチェックを入れます。 以後、Firef
このページはhttp://www.sqlite.org/c_interface.htmlを翻訳したものです。 わかりにくい所があれば原文を見てください。 翻訳の最終更新日は 2004/06/07 です。 SQLiteライブラリはC/C++のプログラムから非常に使いやすいように設計されています。 このドキュメントに、C/C++プログラムインタフェースの概要を示します。 1.0 中心的なAPI SQLiteライブラリを扱うためのインタフェースは3つの中心的な関数と、 1つのopaque型構造体と、戻り値として利用されるいくつかの定数から成り立っています。 中心的なインタフェースは次の通りです: typedef struct sqlite sqlite; #define SQLITE_OK 0 /* 成功 */ sqlite *sqlite_open(const char *dbname, in
What Is SQLite? SQLite is a C-language library that implements a small, fast, self-contained, high-reliability, full-featured, SQL database engine. SQLite is the most used database engine in the world. SQLite is built into all mobile phones and most computers and comes bundled inside countless other applications that people use every day. More Information... The SQLite file format is stable, cross
軽量・高速なデータベースSQLiteをRubyから扱うためのライブラリ。 インストール Windowsの場合 RubyForgeから、 sqlite3-ruby(sqlite3-ruby-x.x.x.zip)をダウンロードする。 ダウンロードしたファイルを展開する。 インストールプログラムを実行する。 ruby setup.rb config ruby setup.rb setup ruby setup.rb install RubyGemsを使う場合 RubyGemsをインストールした後、 次のコマンドを実行する。 gem install sqlite3-ruby SQLiteのインストール SQLite Download Pageから、 sqlitedll-3_x_x.zipをダウンロードする。 ダウンロードしたファイルを展開する。 sqlite.dllをパスの通ったディレクトリにコピ
「PupSQLite」は、フリーで利用できる軽量データベースエンジン「SQLite」のデータベースをGUIで管理できるソフト。Windows XP/Vistaに対応する寄付歓迎のフリーソフトで、作者のWebサイトからダウンロードできる。なお、動作には.NET Framework 2.0以降が必要。 本ソフトには「SQLite」のライブラリ“sqlite3.dll”が同梱されており、環境の構築作業などが必要なくそのまま利用可能。画面はMDI方式になっており、複数のデータベースをそれぞれ同時に子ウィンドウとして開くことができる。各データベース内のテーブルは、データベースのウィンドウ内にタブ切り替え型のグリッドビューとして表示される仕組み。 機能も充実しており、テーブル内データの閲覧・編集はもちろん、SQL文を発行して結果を表形式で閲覧できる機能、テーブル定義文を出力する機能、2つのテーブルを比
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く