2013-03-01から1ヶ月間の記事一覧

MySQLでLTSVのストアドファンクションを作る 〜MySQLでLTSVのデータを扱う2 〜

毎度、ロジックを書くのは面倒ですので、 前回の内容をストアドファンクションにまとめます。 ltsv形式から指定キーのvalueを取得 DELIMITER // CREATE FUNCTION get_ltsv(str varchar(65535),`key` varchar(255)) RETURNS varchar(65535) DETERMINISTIC BEG…

MySQLでLTSVのデータを扱う 〜ユーザー変数でkey-valueを実現

値の読み込み(指定値 sample) SELECT SUBSTRING_INDEX( SUBSTRING_INDEX( "test:27\tsample:8455\thogehoge:45", CONCAT('sample',':'),-1), "\t",1 ) ただ、これだと完全なるLTSVではないので、ちょっと考えないとまずいですね。例えば、key-valueが、test:…

MySQLをスキーマレスDBとして扱うための試行錯誤のログ2

前回の記事で、やりたいことを実現することはできましたが、indexが効かないので全然実用的ではありませんでした。 そこで別の方法を模索してみます。MySQLはユーザー変数を使った独自の集計(GROPU BY)を行うことでがきます。 ただし、MySQLのクエリー実行の…

MySQLをスキーマレスDBとして扱うための試行錯誤のログ1

MySQLのデフォルトのデータベースエンジンはビックデータの格納には向かない。特にALTERでカラムが頻繁に変更になる場合には、行数が多くなるほどALTERに時間が掛かる。なので、そのための用途として、DWHを使うのが一般的です。もしくはSpider+VPとかInfini…