Raid構成について
ハードディスクの構成にRaidというものがあります。
Raid0、Raid1、Raid5
を覚えておけば大丈夫です。
では違いを説明します。
Raid0 ストライピング
Raid0はストライピングといいます。
500GBのハードディスクが3つささっているサーバーがあったとします。
ハードディスク3つをつなげて1500GBの1つのハードディスクとします。
全てDドライブに割り当てた場合、
Dドライブの容量が最大1500GBを使えます。これがRaid0です。
Raid0は冗長構成が組めないため、ハードディスクが1つ壊れた場合は残りの2台も使えなくなります。
Raid1 ミラーリング
Raid1はミラーリングといいます。ハードディスクの台数は偶数です。
500GBのハードディスクが2つささっているサーバーがあったとします。
250GBずつを自分のハードディスクの内容、相手のハードディスクの内容を保持し、
実際に使えるのは合計500GBになります。
つまりささっているハードディスクの全容量の合計の半分になります。
片方のハードディスクが壊れてももう片方のハードディスクがデータを持っているため、データが無くなりません。
500GBのハードディスク4つでRaid1を組んだ場合、使える容量は1000GBになります。
Raid5
Raid0とRaid1のいいところをとったイメージです。
ハードディスクをつなげた上で冗長構成になります。
500GBのハードディスク4台でRaid5を組んだ場合、
それぞれのハードディスクの1/4が回復用データになります。
容量は合計で1台分が減り、3/4が使えますので1500GBになります。
これも冗長構成になりますので、1台ハードディスクが壊れても大丈夫です。
3台の場合は1/3が回復用、2/3が使用できます。
ハードディスクの数をn台とすると1/nが回復用に使われて、
実際に使えるのは n-1/n だと覚えておけば大丈夫です。
ホットスペア
予備のハードディスクになります。Raid0やRaid5を組んでおり、ハードディスク1台が壊れた場合にホットスペアと交換すると、再度Raid0を組み直す事ができるものです。
Raidについて少しでも参考になれば嬉しいです。
広告
Javaプログラミングの基礎5 HashMapについて
次にHashMapについて説明します。
HashMapとは キ―と値のセットで持ちます。
辞書でいう単語とその説明みたいなイメージです。
HashMapを宣言します。
今回は人の名前をキーに、身長を値としたいので、このようにセットします。
キー値がString 値をIntegerとします。
値を入れるときは
変数名.put
値を取り出すときは
変数名.get
を指定します。
HashMap<String,Integer> sinchoMap= new HashMap<String,Integer>();
sinchoMap.put("田中",160);
sinchoMap.put("佐藤",165);
sinchoMap.put("鈴木",150);
sinchoMap.put("伊藤",120);
田中君の身長を知りたい時はこう指定します。
System.out.println(sinchoMap.get("田中"));
結果はこうなります。
誰がどの県に住んでいるかをmapにセットしたい場合は、
キー値をString、県名となる値もStringにします。
田中君がどの県に住んでいるかを確認したい時はこう書きます。
public static void main(String[] args) {
HashMap<String,String> kenMap= new HashMap<String,String>();
kenMap.put("田中","愛知");
kenMap.put("佐藤","岐阜");
kenMap.put("鈴木","岐阜");
kenMap.put("伊藤","北海道");
System.out.println(kenMap.get("田中"));
他にもキー値をInteger 値をStringにすることもできます。
何年が年号が何かを入れたり、出したりするような時です。
HashMap<Integer,String> testMap= new HashMap<Integer,String>();
testMap.put(1950,"昭和");
testMap.put(2005,"平成");
testMap.put(2019,"平成/令和");
testMap.put(2022,"令和");
System.out.println(testMap.get(1950));
これは1950年の年号がでます。
どうでしたか?基本的なjavaのプログラムを記載しました。
またJavaの情報を掲載していきますね。
Javaプログラミングの基礎4 リストについて
配列と同じような使い方をするものにリストがあります。
用途は配列と殆ど一緒ですが、値の入れ方と取り出し方が変わります。
それと配列の時に最初にサイズを指定しましたが、
リストは最初にサイズを宣言しなくてもよいので便利です。
String型のリストを宣言してみます。もちろんint型のリストも作れます。
その場合はIntegerを使ってください。
ArrayList<String> list = new ArrayList<String>();
ArrayList<Integer> list2 = new ArrayList<Integer>();
書くと赤くなりますね。赤いところにマウスをあててください。
ArrayListをインポートします(java.util) と表示されるのでクリックしてください。
下記が上の方に追加され、赤が消え、リストが使えるようになります。
リストに値を入れる時は 変数名.addを使います。
ArrayList<String> list = new ArrayList<String>();
list.add("鈴木");
list.add("佐藤");
list.add("田中");
list.add("伊藤");
リストの長さは
list.size()
で取得可能です。
値を取得するときは変数名.getを使います。
list.get(何個目か);
listに人の名前を入れていき、
佐藤さんが何個目にあるのかを出したい時のコードはこうなります。
ArrayList<String> list = new ArrayList<String>();
list.add("鈴木");
list.add("佐藤");
list.add("田中");
list.add("伊藤");
for(int count=0;count<list.size();count++) {
String namae=list.get(count);
if(namae.equals("佐藤")) {
System.out.println(count+1+"個目:"+list.get(count));
}
}
どうでしたか?できましたか?
ちなみにlist2は宣言しただけで使われていないので、黄色い線が入ってますが、
使われていないよと教えてくれているだけなので気にしなくて大丈夫です。
次はHashMapについて説明していきます。
Javaプログラミングの基礎3 配列と条件分岐、繰り返しについて
変数には配列というものがあります。
配列とは、電車みたいなイメージです。
1つの変数で、1両目、2両目といった、順番が管理できます。
String型の配列 hairetuを宣言します。書き方はこうなります。4というのは4両あるよという事です。それぞれの車両に誰が乗っているのかをセットし、値を取り出す方法を説明します。
また、Javaは0から始まるので注意してください。
String hairetu[] = new String[4];
hairetu[0]="鈴木";
hairetu[1]="佐藤";
hairetu[2]="田中";
hairetu[3]="伊藤";
System.out.println("1両目"+hairetu[0]);
System.out.println("2両目"+hairetu[1]);
System.out.println("3両目"+hairetu[2]);
System.out.println("4両目"+hairetu[3]);
結果はこうなります。
出力するのに何回も書かないといけませんね。
それを省略することができるのが 繰り返しになります。
繰り返しにはforを使います。
for(int 変数名=初期値;変数名<この数値より小さい間;変数++ 1回繰り返す度に1ずつ足していく) {
こう書く事で、同じ行を複数書く必要がなくなります。
for(int count=0;count<4;count++) {
System.out.println(count+1+"両目"+hairetu[count]);
}
次に条件分岐です。これはifを使います。
if(変数==値)
となります。
3両目に乗っている人の名前だけ出したい時はこう書きます。
0か始まるんで2になります。
if(count==2) {
System.out.println(count+1+"両目:"+hairetu[count]);
}
できましたか?
ちなみに文字列の比較もできます。佐藤さんが乗っているのは何両目かを知りたい時はこうします。
String namae=hairetu[count];
if(namae.equals("佐藤")) {
System.out.println(count+1+"両目:"+hairetu[count]);
}
結果がでましたね。
hairetu.length で配列の長さが取得できます。
なので、for文では実際の仕事で使う時はこう書く事が多いという事を覚えておいてもらえたら嬉しいです。
for(int count=0;count<hairetu.length;count++) {
どうでしたか?これが配列と条件分岐、繰り返しになります。
次はリストとHashMapについて説明していきます。
Javaプログラミングの基礎2 変数と四則演算の説明
Javaで処理するときは変数を使います。
変数とは、値がコロコロ変わる箱 というイメージです。
例えば変数は実世界では、ペットボトルとします。
ペットボトルを用意する←これが変数とします。
ペットボトルに水を入れる←ペットボトルの中身が入った
ベットボトルの中に塩を入れる←ペットボトルの中身が変化した
ペットボトルの水を取り出す←ペットボトルの中身を取得する。塩水が取得できす。
変数があることで、色々な処理をした結果を出力する といった事が可能です。
まずは基本的な変数は下記があります。
int 数値型 -2147483648~2147483647 までの範囲
Integer 数値型(intとほぼ同じのため、最初はどちらでも大丈夫です。)
String 文字列型 値を入れる時はダブルクォートで括ります。
float 小数型
long intと同じ数値型ですが、2147483647より大きい値を持つことができます。
20憶を超える数値を扱いたい時はlongを使ってください。
数値型に文字は入りません。エラーになります。
四則演算や変数を使った計算を例に出します。
その前にjavaではコメントを入れられます。
プログラムの処理に関係ないメモを入れられます。
//で1行まるごとコメント
/*
これで括った場所は全てコメント
*/
ではint型の変数を宣言し、足し算をした結果を出力してみましょう。
結果はでましたか?コンソールに表示されましたね。
では四則演算をしてみます。毎回System.outしてみます。
int count=5;
count=count+3; //count + 3の結果をcountに入れる
System.out.println("a:"+count);
count=count-2; //countから2を引いた結果をcountに入れる
System.out.println("b:"+count);
count=count*5; //countに5を掛けた結果をcountに入れる
System.out.println("c:"+count);
count=count/3; //countを3で割った結果をcountに入れる
System.out.println("d:"+count);
count=count%3; //count割る3の余りをcountに入れる
System.out.println("e:"+count);
a,b,c,d,eの値はわかりますか?考えてみましょう
a=
b=
c=
d=
e=
結果はこちらです。
1つ足しひきするだけなら、こう書く事ができます。
1を足すとき
count=count++;
または
count++;
1を引くとき
count=count--;
または
count--;
そして、文字も付け加えることができます。
String moji="私の名前は"; //変数mojiを文字列型で宣言
String namae=""; //変数namaeを文字列型で宣言
namae="太郎"; //変数namaeに太郎を入れる
System.out.println(moji+namae+"です"); //文字列を加えた結果を出力
実行結果はこうなります。
どうでしたか?できましたか?うまくできたら嬉しいです。
この後は条件分岐や繰り返し、配列について説明します。
JAVAプログラミングの基礎1 Javaの環境設定
GOOGLEでJAVA MargeDocと検索し、eclipseをダウンロードしてください
eclipseのバージョンは最新で大丈夫です。
WinDowsまたはMac、UltimateかJavaのFull EditionをDownloadしてください.。PlatformだとJavaがないのでやり直しになります。仕事では足りないものがあると困るので、Ultimateを選択してます。
今回はJavaを選択します。
ダウンロードしたら、CドライブかDドライブに移動させ、右クリックをして「ここに展開」をしてください。
下記のようなフォルダ構成になっているので、eclipseフォルダの中のeclipse.exeをクリックして起動してください。デスクトップにショートカットを作っても大丈夫です。
ワークスペースどこにしますか?と聞かれるので、好きなところで大丈夫です。
ワークスペースはプログラムの作業場所のこと、
プロジェクトごとに別のワークスペースに変える事ができます。
実際の仕事では、お客さんごと、案件ごとに別のワークスペースに分けています。
管理人はこういう感じのワークスペース名の分け方をしています。
D:\Eclipse\Ashouten ←(顧客名1)
D:\Eclipse\Bshouten ←(顧客名2)
といった感じにしています。
Javaプロジェクトの作成をクリックします。
プロジェクト名を決めてください。
クラスを作ります。クラスはプロジェクトを記述するファイルです。
プロジェクトを右クリック→新規→クラス と進みます。
mainクラスを作ります。mainクラスとは、プログラムのスタート地点です。
好きな名前をつけてください。ここでjavaで大事なのはプロジェクト名の最初を大文字にすることです。ハイフンも使えません。
mainクラスは
public static void main(String[] args)
にチェックを入れてください。
下記の場所にプログラムを書きます。今回はテストで、コンソールに文字を出力する関数「 System.out.println」を使います。ダブルクォートでくくり、好きな文字を入れてください。最後にセミコロンが必要です。
System.out.println("testです");
編集したらCtrl+Sで保存してください。PCは突然固まったり、電源が落ちたり、何があるかわからないため、仕事では1行編集する度に保存するようにしています。
プロジェクトを右クリック→実行で プログラムを実行できます。
コンソールに文字が出たら成功です!!これでJavaの実行環境ができました。
次は変数や四則演算について説明します。