Hadoop Advent Calendar 2013 4日目の記事です tl;dr explainとjob historyを読め 1 reducerは悪 data skewは悪 前書き みんな大好きSQLでHadoop上での処理を実行できるHiveにはみなさん普段からお世話になっていることでしょう。ちょっと調べ物でググる度に目に入る愛らいしいマスコットが、荒んだ心に清涼な風をはこんでくれます。 ですがHiveのクエリ言語はSQLではなくHiveQLですし、実行エンジンもRDBのそれとは全く異なるMapReduceです。SQLのつもりでHiveQLを書いていると地雷を踏んでしまうことがまれによくあります。本エントリでは陥りがちなHiveQLの落とし穴を2つ紹介します。 例1 SELECT count(DISTINCT user_id) FROM access_log SQLに慣れた方であれ
ディスクが壊れた場合の状態確認やらに使う。 Eはエンクロージャ番号 Sはスロット番号 aはアダプタ番号 上記は物理ディスクの状態確認結果で表示される。 ■物理ディスクの状態 どのディスクが壊れているか確認。 Firmware Stateあたりを見る。 /opt/MegaRAID/MegaCli/MegaCli64 -PDList -aALL ■仮想ディスクの状態 RAIDディスクの状態を確認 /opt/MegaRAID/MegaCli/MegaCli64 -LDInfo -Lall -aALL ■LED点灯 ぶっ壊れているディスクのスロットのLEDを点灯させる /opt/MegaRAID/MegaCli/MegaCli64 -Pdlocate start physdrv[E:S] -a0 ■ディスクのオフライン 交換対象のディスクにアクセスできる状態であれば、オフラインにする /opt/M
Oracle, Open Source, Private特にパフォーマンステストをやってるといろいろとOSの環境を変えて結果を見比べたくなるときがあります。その中で「メモリ容量を変えたらどうなるか?」というときがしばしばあります。パワープレイでこれを実現するには、よっこらしょ、とラックからサーバを引き出し、ケースをパカッと開けてメモリを引っこ抜くという技が最初に思いつきます。しかしデュアルチャネル構成の場合短絡的にそんなことをしちゃうとサーバが起動しなくなってしまう可能性がありますし、そもそも現場まで言って作業するというのが原始的です。 簡単な方法は、カーネルの起動パラメータ「mem」でOS(カーネル)が認識するメモリ容量を指定してあげるやり方です。これは/boot/grub/grub.confを直接編集して静的に設定してもいいですし、起動時にgrubメニューで都度設定してもOKです。 例
This page was last edited on 26 February 2012, at 21:24. How to set kernel boot options Kernel boot options are contained in the file /boot/grub/grub.conf. Each installed kernel has a group of lines called a stanza describing: the title of the operative system to load where to find the boot partition (in grub named root!) what kernel (vmlinuz-*) to boot, with additional kernel options the name of
改行をしないスペースとハイフンの挿入方法を紹介します。改行をしないスペース/ハイフンとは、例えば行末に「3 mg」や「P.10-30」という内容を入力した際、「3 mg」の半角スペースや「P.10-30」のハイフン以降で行を跨ぎたくない場合、改行をしないスペース/ハイフンを利用することにより、「3 mg」や「P.10-30」を同一行で表示することが可能です。 設定方法: 1) 半角スペースもしくはハイフンの前後を同一行で表示したい箇所へカーソルを移動します(図 1)。図 1 2) 既に挿入されている半角スペースもしくはハイフンを削除します(図 2)。図 2 3) 代わりに改行をしないスペース(Ctrl + Shift + Space)もしくはハイフン(Ctrl + Shift +\)を挿入します(図 3は改行しないスペース、図 4は改行しないハイフンを挿入した例)。図 3 図 4 編集記号
This article was migrated from http://rails.office.drecom.jp/takiuchi/archive/151 detachしたGNU screenのセッションに、別なサーバから再接続したり、一度ログアウトしてから再接続しようとすると、SSH Agent Forwardingがうまく機能しなくなってしまいます。 この問題は、screen作成時に設定されたSSH関連の環境変数(SSH_XXXX)が、再接続時には無効な値となっていることにscreenが気づかないために起こります。 従って、この問題を解決するためには、再接続の直前に接続元の SSH関連の環境変数をコピーし、接続後にその値を再設定する必要があります。 以下は、これを実施するためのShellスクリプトの例です。 # fix ssh env if [ "$TERM" = "scree
比較的大きいサイズのファイルをSCPで転送することがあって、できるだけ高速化してみたかったので、色々試してみたメモ。 scpというかsshには、暗号化方式と圧縮有無の指定があるので、それらのベンチマークを。 尚、以下は、SSH v2が対象です。v1はかなり遅かったのと、そもそも使っていないので試していません。 (追記: 2019/11) 本エントリの情報は既に古いため、以下のエントリにて再検証しています。あわせてご覧くださいませ。 ベンチマークで利用した環境 [Server1] <=> [Gigabit Switching Hub] <=> [Server2] Server1 (HP ML115 G5) AMD Phenom 9950, 8GB, RAMディスク使用, Gigabit Ethernet Server2 (HP ML115 G1) AMD Opteron 1210, 4GB,
シェルのパラメータ展開を利用して、basename、ファイル名(拡張子なし)、拡張子を取得する方法。 #!/bin/bash path="/path/to/foo.tar.gz" echo "path: $path" basename=${path##*/} echo "basename: $basename" filename=${basename%.*} echo "filename: $filename" extension=${basename##*.} echo "extension: $extension" via シェルのパラメータ展開でスクリプト自身のファイル名を取得する Man page of BASH
ImageMagickは多機能なツールである。 しかしコマンドラインツールの宿命として、使い方が分かりにくい。 今日は画像の自動切り抜きをしようとした。いわゆる「auto crop」というやつだ。大昔からのUNIXユーザならxvにAutoCropボタンがあり使った記憶もあるのではないだろうか。90年代前半のxvは、UNIX初心者にとって、もっとも cool なツールに見えたような気がする。 gimpにも「画像の最小枠での切り抜き」なるメニューがあり、簡単に切り抜くことができる。しかし、xvやgimpは飽くまでGUIなツールであり、自動切り抜きとはいってもユーザが操作しなければならない。シェルスクリプト内で処理するような場合には、やはりImageMagickのようなコマンドラインオリエンテッドなツールが好ましい。 というわけで、ImageMagickでのauto cropであるが、以前は、
タイトルまんまなんですが、Firefoxのアドオンの一つであるMozexでvimを使う方法〜Mac OS X version〜 で、まずMozexとはなんぞというと、Firefoxのアドオンで(二回目)テキストエリアとかページのソースをお気に入りのエディタで編集したり読めたりするぜ、っておもの。 あとtelnetとかいろいろ。 まぁ、当然俺はvimを使いたいわけで。 できればターミナルはTerminal.appを使いたいわけで。 で、その設定方法。 そのままMozexの設定画面に/Applications/Utilities/Terminal.app/Contents/MacOS/Terminalに打つとなんかTarminal.appが多重起動するし、引数の渡し方分からないし...。 そんなわけで、applescriptを書いてみた。 とりあえず、スクリプトエディタを開いて、以下をコピペ。
LINUXのデスクトップが何年か見ないうちに随分とあか抜けて、 使用に耐えうるんじゃないだろうかと思うようになったので、 今回PowerbookG4(Titanum 1GHz) に入れてみる事に。 Fedora Core 6 PPC 版をダウンロードしてDVDに焼いてみたが、 何度やってもインストール初期時のディスク正当性チェックでFailしてしまう。 どうやら配布されているディスクイメージは壊れている(?) らしい。 Vine LinuxもPPC版を出してくれていたので、Vine Linuxに変更。 下記はその記録。 インストール 普通にインストールできた。ただしパーティションの設定でAPPLE BOOTSTRAPという 1MBのパーティションを作る必要があった。 起動 素直に起動してくれない。余っていた30GBのHDDを使ってインストールをしたときは、 何一つ問題が起きずに、すんなり起
For customersCustomer supportSubscription managementSupport casesRed Hat Ecosystem CatalogFind a partnerFor partnersPartner portalPartner supportBecome a partner Try, buy, & sellRed Hat MarketplaceRed Hat StoreContact salesStart a trialLearning resourcesDocumentationTraining and certification Hybrid cloud learning hubInteractive labsLearning communityRed Hat TVOpen source communitiesAnsibleGlobal
Snow Leopardがついに発売。インストールディスクを前に、いつアップデートしようか悩んでいる向きも多いはず。今回は、スムーズな移行を望む方のために、「移行アシスタント」を使うときのポイントを紹介したい。 Time Machineで作成したバックアップは、移行アシスタントを使いSnow Leopardへコピーできる スマートな「移行」を考える Leopardのインストーラには、未使用のHDDを対象とした「新規インストール」、既存システムを残しつつ空き領域にシステムファイルをコピーする「アーカイブしてからインストール」、ディスクを消去してから作業する「消去してからインストール」の3方式が用意されていた。しかし、Snow Leopardでは後2者が選択できなくなり、すでにシステムが存在する場合は上書きアップグレード、それ以外は新規インストールとなる。 筆者の経験からいうと、OSは新規イン
top > Linux > 文字コードの変換 文字コードの変換 カテゴリー: Linux| 公開: 2009/4/30 | コメント(0) Linuxでテキストファイルの文字コードを変換する方法のメモ。 nkfを使う $ nkf [オプション] 入力ファイル > 出力ファイル オプション -j (デフォルト) JISコードを出力 -e EUCコードを出力 -s Shift-JISコードを出力 -w UTF-8コードを出力 -Lu 改行コードをunix形式(LF)に変換 -Lw 改行コードをwindows形式(CRLF)に変換 -Lm 改行コードをmac形式(CR)に変換 UTF-8に変換。 $ nkf -w filename > filename.utf8 入力ファイルに上書きするときは、--overwrite オプションを使う。 $ nkf -w --overwrite
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く