実務のデータ作業 | ITオフィスサポートとシステム開発|システムガーディアン AWSクラウド導入|東京都中央区八丁堀

ITサポート出張、ITシステム開発・保守をワンストップで|AWSクラウド|東京都中央区八丁堀

ITオフィスサポートとシステム開発|システムガーディアン AWSクラウド導入|東京都中央区八丁堀

電話でのお問い合わせ

実務のデータ作業

      2016/02/16

こんにちは加藤です。

 

ここ数日、MySQLやらMariaDBにデータ入れ込む作業が多く、会社でひたすらデータ修正をしています。そんな中、「え?そんな事できるんですか?」とスタッフから聞かれて、そういえば単純作業とか教えてなかったなと思いますので、書いておきますね。

 

 

DBからダンプしたデータには魔物が住んでいると良く言われますが、良くあるのは文字列のカンマやダブルクォーテーション、そして改行文字などが入ってることがあります。実際の作業を記述してみますね。
結構、こういう地道な作業って慣れないと恐ろしい時間が掛かりますものね。

CSVなら秀丸凄く便利。まずはテキストエディタで確認。

WEB系の技術者だとphpMyAdminからインポートするというのが多いと思いますが、XXのカラムが合ってないですよーと怒られて、え?何が違うの?どこの行?え?と一度文字コードを変更してからエクセルでデータ文字列として確認という時間を取られるのは誰もが経験すると思います。

 

私の場合は秀丸とUnEditor、鈴川エディタ、vim、エクセル合わせ技が多いですが、例えば、データベースからダンプしたCSVデータが合った場合、どこのカラムが特定できても文字が多すぎて判別できないことは良くあります。
そんな時に便利なのが秀丸エディタです。

そんな時はさくっと秀丸で開きます。
秀丸 CSV開いた上に表示からタブストップ->CSVモードを選択します。

CSV カラム確認
そうすることで、エクセルのようにカラム毎、また足りない行が分かるようになります。
これは便利です。

3~4万行の場合はこれで事足ります。
それ以上になると、難しいのでスクリプトで対応するのがいいですね。

目安として、加工も含めて2万行を超える場合、1万行以下にしてphpでfgetsあたりでサクッと加工します。

改行文字

上記で大抵の場合は整合が取れますが、どうにもならないことがあります。それが見えない改行文字です。通常は正規表現で\r\nで
検索して置換しておこないますが、WindowsやUNIXなどの各環境では、それぞれ改行コードが違います。例えばWindowsでは「CR(=キャリッジ・リターン)+LF(=ライン・フィールド)」であるのに対し、UNIXでは「LF」です。そうなると、当然某ソフトだと\nだけなんてあります。一番怖いのはある行だけ改行文字が連打されている場合。
この場合1万行以下であれば、エクセルを使いましょう。
エクセル 改行削除
エクセル 改行削除”なんて検索すると良く見かける技ですが、置換ボタンで選択して、見えないけどCtrl+Jで改行文字を入れてあげて検索する方法です。
ちなみにこの技は経験上1万行以下、私の環境でもi7 2.67GHzメモリー32GB C:RAID SSD0でも2万行で途中で怪しくなりますので、5000行以下の場合に有効です。

結果:データ加工はツールの合わせ技がですよという事

結局、phpでも.netでもツールはその通り道具ですから、合わせ技を行い、その作業が多ければ、治具を作るみたいに簡単なツールを作るのが一番ですというのが結論ですね。
私の場合、上記の作業で難しい場合、直ぐにサーバーにアップしてスクリプトで作業してもらうのですが、いつかサクッとC#あたりで作るのがいいかもしれませんね。

加藤人物:カトー(加藤)
最近、古本マイコンBASIC(ベーマガ)を見つけて、
ノルタルジーに浸る41歳。
一応、会社の代表。

必殺技
:機械を分解して組み立てるとネジを余らせる。

 

 - MySQL, スタッフ別, 加藤, 日常

  関連記事

Zenmap
ZenmapでWindowsからポートスキャン

お世話になります。来週10/24(土)には弊社毎月のイベント第6回ゆるいハッキング大会が開かれますが、「やっぱりいきなりKaliで無線LANハッキングからの攻撃 …

HDDの増設 起動しない  BIOSの設定
HDDを増設したらWindowsが起動しない・・答えはBIOSにあり。

2TBのHDDをうっきうきな気分で増設したら、なんてことでしょう。 起動が上記の画面で止まって再起動を繰り返してしまいます。 メモリの接触不良? はたまたシステ …

no image
WordPress Twenty Elevenの上部余白を削除する

どうも加藤です。 先程、ヘッダーの管理画面を消したら、隙間がでます。 早速消します。ええ、消しますとも。 修正は、/wp-content/themes/twen …

仕事のルール IT
あたりまえだけどなかなかできない 仕事のルール

業務の間に帯に惹かれて ”あたりまえだけどなかなかできない仕事のルール” 著者浜口直太氏 読んでみました。内容を今後も踏まえザックリレポートしてみます。 仕事の …

HL161_350A
デザイナーズに手が届く!ジェネリック家具ってご存知ですか?

こんにちは。スタッフTでございます。   私は最近知ったのですが、皆様はジェネリック家具ってご存知でしたか? 医薬品の方は良く耳にしますよね。家具にも …

RTX1000 1100 ケーブルなし設定
RTX1000 1100 ケーブル無しで設定

お世話になっております。システムガーディアン加藤です。 先週は出張やらカンファレンスがあり、ついつい暴飲暴食。 今週は健康的に過ごす事に。 加藤 :一応会社の代 …

EP-807 廃インク
EPSON EP-807A 廃インク 修理してみましたよ

目次1 EPSON EP-807 廃インク吸収パッドエラーを直してみる。2 直すのは簡単、保証などは自己責任で。3 早速分解4 廃インクトレーを外します。5 カ …

LIVA
小型PC「LIVA」にBraswell採用のモデル発表会に行ってきましたよ

お世話になります。加藤です。 先日小型ドスパラで安いNUC買って色々ディストリビューション動かしていましたが、そんな中、タイミング良く台湾ECSの小型デスクトッ …

no image
朝です。

朝です。 昨夜は夕方にK氏と事務所の近くの博多居酒屋 一慶へ。 唐辛子満載のもつ煮込みを食べてビールを3杯程。 その後事務所に戻り作業中に睡魔の襲われて仮眠。 …

ハニーポット 不正アクセス
HONEYDRIVE3 不正アクセスを観察するOSのご紹介(ハニーポット)

目次1 ダウンロード方法2 悪意を持った攻撃者への囮用ディストリビューション3 設置場所について4 ただし運用が難点5 ハニーポットが使われている例 ダウンロー …

トップページ