S-Collection株式会社 システムについて

S-Collection株式会社のシステムサポート事業

オンプレミスとクラウドどっちがよいか?②

オンプレミスとクラウド、システム要件によって最適な選択を!

前回はオンプレミスのメリットについて、解説をしました。今回はクラウドのメリットについて紹介します。

 

イニシャルコストが低い!クラウドのメリット

システム構築のイニシャルコストの低さはクラウドならではの強みです。
オンプレミスの場合、機器類の購入だけでもコストがかさみ、構築にかかる時間は一定の期間を要し、サーバーの設置場所の確保など物理的な問題が発生します。
それに対して、クラウドはそれら物理的な問題とは無縁になります。また、構築にかかる時間も圧倒的に短いです。
登録さえすれば利用できるサーバー群が用意されているのがクラウドの強みで、遠隔地のサーバー群を使えるというので災害への対策も容易です。
利用できるサーバー群が用意されていることはハードウェアに関する問題を解決してくれます。電源の容量を気にしたり、サーバーの設置場所やラックの空きスペースを気にする必要がなくなります。サーバーの物理的な故障も気にしなくてすむので保守が簡単です。

また、拡張性の観点でスケールアップやスケールアウトが容易に行えるのもクラウドの特徴です。スケールアップはCPUの性能やメモリ容量を増やすことを指し、スケールアウトはサーバーの台数を増やすことを指します。
たとえばイベント運営のためのシステムなどは、イベント期間の間は利用者が増大しサーバーに負荷がかかることがあります。
短期的に大量のトランザクション処理に対応するのはオンプレでは不得意です。
それに対して、クラウドの場合は、中には自動でスケールアップやスケールアウトをしてくれるサービスもあります。

オンプレミスとクラウド、どちらを選択するべきか

オンプレミスとクラウドどちらにも得意なところがありますが、クラウドでできることはだんだん増えてきているので多くの利用ケースはクラウドで問題なくなってきています。
特に物理的な問題をすぐに解決できるのはクラウドの強みです。
システムをすぐにつかえる状態にしたいといった場合はクラウドを選択することになります。
ただし、注意点として、アクセス制限を考慮しないと使用料金が大きくなることがあります。長期的に運用コストを下げるためにオンプレミスを利用するケースもよくあります。
セキュリティ面の課題や既存システムとの連携はオンプレミスの方が得意ではあるので、お互いのいいところをいかすためにオンプレミスとクラウドの両方でシステムを運用していくことも可能です。
たしかにクラウドは便利ではありますが、場合によってはオンプレミスでシステム構築をする必要がでてくることはあります。
ユーザー目線でも運用者目線でもお互いにとって最適となるものは何かを常に意識してシステムを構築する必要があります。

 

最後に

S-Collection株式会社では一ヶ月で500万PVのアクセスがあるWEBサービスの運用実績や、クラウドサービスの設計、構築、運用実績など、幅広い実績があります。
システム構築でお困りの際は、豊富な経験をいかし最適な提案をしていきます。

オンプレミスとクラウドどっちがよいか?①

オンプレミスとクラウドのメリットとデメリットとは

インターネットが発展しはじめた当初は、クラウドという選択肢がなかったのでシステムを構築するならすべて自前で用意する必要がありました。

現在ではクラウドサービスも増え、人気のサービスで言えばAWSがあげられますが、そのほかMicrosoft AzureやOracle Cloudなどがあります。
選択肢が増えたのはいいことですがその分迷うことも多くなりました。今回から2回にわたって、オンプレミスとクラウドどちらがいいのかという点も含め、両者のメリットとデメリットを比較していきます。

 

ネットワークセキュリティが強固!オンプレミスのメリット

クラウドではなくオンプレミスを選択するもっとも1番の理由はネットワークセキュリティが強固であることです。
物理的に外部のネットワークと切り離せるため、社内専用のシステムで情報漏洩リスクを可能な限り抑えたい場合はオンプレミスが有利です。

カスタマイズの自由度もオンプレミスのメリットです。クラウドもこの辺りの制限はなくなりつつありますが、サービスによっては使用できるネットワーク機器やサーバー機器、OSに制限があります。

クラウドは外部のネットワークをはさむ分、ネットワークエラーに気をつける必要があります。
社内のローカルだけで問題のないシステムの場合、通信速度はオンプレミスの方が早いです。オフライン環境でも利用できるのでインターネット障害には強くなります。
また、クラウドの場合はメンテナンスでインスタンスが停止する場合があります。オンプレミスの場合はメンテナンスのタイミングもコントロールできます。

ランニングコスト面でも長期的にみるとオンプレミスの方が安くなることが多いです。クラウドの料金体系も従量課金制や月額課金制だったりとさまざまですが、定期的に料金がかかることには変わりません。

以上、オンプレミスのメリットについて、解説しました。次回はクラウドのメリットについて触れていきます。

CVS、SVN、Gitの違いについて②

CVSSVN、Git・・・開発方法に合わせて活用!バージョン管理システム

前回はバージョン管理システムについてと、CVSの解説を行いました。こちらではSVN、Gitについて紹介します。

CVSの問題点を解決したSVN

広くつかわれていたCVSですが、ファイルの名前変更・削除やディレクトリの移動がうまく管理できないこと、異なる文字コードに対するサポートがないことなど、欠点もありました。
そこで、この欠点を解消すべく作成されたのが、SVNApache Subversion)です。
1つのファイルずつの履歴管理をしていたCVSに対し、SVNではひとまとまりのファイルを構造ごとまとめて履歴管理することで、ファイルの名前変更や削除にも対応するなど、さまざまな機能が改善されました。
また、つかいかたはCVSとほとんど変わらないため、CVSからSVNに移行をする人も多く見られました。

 

分散型のバージョン管理システムGit

2005年、Gitと呼ばれるバージョン管理システムLinuxから発表されました。
Gitは、大規模プロジェクトにも対応できるよう、動作のスピードに重要度を置いて作成されています。

※Gitに関する詳しい解説は、ブログ「Gitつかいこなしていますか?Git、GitHubのつかい方①—概要編―」を参照してください

 

GitがCVSSVNと異なる点は、各ローカルにリポジトリ開発過程が保存されるデータベース)の複製を作成し、ローカルごとにバージョン管理を行える点です。ローカルごとにバージョン管理を行い、そのあとで中心のリポジトリとバージョン管理の情報を共有します。このことからGitは、分散型バージョン管理システムと呼ばれます。
なお、CVSSVNは、その性質上、集中型バージョン管理システムと呼ばれます。

 集中型と分散型の違い

集中型バージョン管理システムであるCVSSVNは、1つのリポジトリを使用します。
たとえば、システム開発のメンバーでファイルを共有する場合、メンバーはこの1つのリポジトリからソースコードを持ってきて編集し、編集後はまた、この1つのリポジトリソースコードを反映します。
ただし、この集中型の場合、リポジトリとメンバーの端末がネットワークで繋がっていなければ、ファイルの変更履歴をリポジトリに反映することができません。

それに対し、分散型であるGitは、リポジトリを複数もつことができます。
たとえば、大人数でシステム開発を行う場合、何人かずつで1つのリポジトリを使用してプログラムを作成し、定期的に全体のリポジトリに反映する、というようなつかいかたをすることができます。

このように、Gitを使用すると開発の規模に合わせて設定を行えるうえ、開発者同士が柔軟に作業を進めることができます。しかし、仕組みや使用方法が複雑なため、集中型にくらべて習得のための教育コストがかかります。

以上から、どのバージョン管理システムを使用するかは、システムの規模やコストなどを考慮して、決定することになります。

S-Collection株式会社には、経験豊富な技術担当者が在籍しています。企業さまにとっての最適な問題解決方法を一緒に考えさせていただきます。変更履歴の管理についてお悩みの際は、ぜひ一度ご相談ください。

CVS、SVN、Gitの違いについて①

変更履歴を正確に管理!バージョン管理システムの必要性

システムの開発の多くは、複数名でプロジェクトチームを組んで行います。
チームで開発を行っていくなかで、ドキュメントやプログラムなど、さまざまな電子ファイルを共有していきます。
また、新しく作成したファイルが、そのまま更新されないことはほとんどありません。ほどんどのファイルは更新を繰り返し、バージョンアップを行います。つまり、複数人でファイルを共有しながら、更新を行うことが頻繁に起きます。そこで、いつ、誰がファイルを更新したかという変更履歴を管理するシステムが必要になってきます。これを一般的に「バージョン管理システム」と呼びます。このバージョン管理システムは、システム開発を行うなかで、広く利用されています。
これより2回にわたって、バージョン管理システムであるCVSSVN、Gitについて解説を行っていきます。


ファイルごとの変更履歴をきっちり管理!CVS

CVSは、ネットワークで利用されることを考えて作られた、はじめてのバージョン管理システムです。それまでにも、さまざまなバージョン管理システムがありましたが、フリーウェアだったこともあり、1990年以降、広くつかわれるようになりました。
ひとつひとつのファイルにバージョン番号を割り振って、変更履歴を管理していきます。
端末で編集したファイルを、最新版としてサーバーにアップすれば、ほかの端末に接続している人たちも、それぞれの端末に最新版をダウンロードできるようになります。
最新版との差分が表示できたり、ロックを掛けてほかの人が編集できないようにしたり、複数人が競合するのを防いだりと、さまざまな機能も備えています。

今回はCVSの解説を行いました。次回はSVN、Gitについて違いを含めながら紹介をしていきます。

オンラインストレージをつかう方にオススメする、便利な3つの機能

知っていますか?とっても便利なオンラインストレージ活用術

オンラインストレージは、クラウド上でファイルを管理することで、複数人でファイルを共有したり、データのバックアップができたりする便利なサービスです。2000年代のはじめから世に出てきて、つかったことがあるという方も多いのではないでしょうか。今回は、オンラインストレージの便利な機能を3つご紹介します。

1.ローカルファイルを自動で同期させたい!

自宅のデスクトップPCで作成したファイルが、出先のノートPCでも同じようにアクセスできること、これを実現するのが自動同期型のオンラインストレージです。DropboxGoogle Drive、One Driveなどのサービスがあります。
PCに専用アプリをインストールしておくことで、同期フォルダ内に変更があれば、即座にアップデートされます。複数のPCにインストールしておくことで、各端末の対象フォルダの内容を同期することもできます。
自動でファイルの更新履歴を取得するサービスも多く、前の状態に戻したいときも安心して利用できます。

2.手間をかけずにバックアップを取りたい!

前述の3つのクラウドサービス(DropboxGoogle DriveOne Drive)は、同期するフォルダーを個別で作成する必要がありますが、SugarSyncというサービスは、すでに存在しているフォルダーを同期対象として指定することができます。
つまり、ファイルの保存方法を変えることなく、今までどおりのつかい方でバックアップを取ることができるので、ファイルの整理をしなくても導入することができます。
2011年にはギズモードからベストクラウドサービスとして評価されております。

 3.お金をかけずに大容量のファイルを扱いたい!

上述のサービスは非常に便利ですが、無料版の場合、容量は大きくありません。3〜5G程度のサービスがほとんどでしょう。無料でつかえる大容量のサービスとしてオススメするのは、「MEGA」というサービスです。
MEGAは、なんと50GBまで無料でつかえ、ファイルを自動でアップロードする機能も持っています。
大容量かつ、シンプルでつかいやすいインターフェースを提供しているサービスです。

4.番外編Evernote

自分専用のメモ帳として、情報をオンラインで一元管理できるEvernoteというサービスもあります。このサービスは、複数人での作業や大容量オンラインストレージとはコンセプトが異なります。
気になるWebサイトや、ちょっとしたメモ、写真、PDF、音声などを保存可能で、検索機能なども充実しています。
ノートアプリなので、つかい方は人それぞれです。自分にあったつかい方を見つけていく楽しみもあります。

5.まとめ

今回は、目的別のオンラインストレージの紹介しました。大人数でのファイル共有や、PCの一括バックアップ、個人的なメモやタスク管理など、オンラインストレージにはさまざまな活用法があります。
S-Collection株式会社でもオンラインストレージを駆使して効率良く業務を行い、お客さまへ価値を提供していきます。

プログラミングをはじめよう③ープログラムの変換ー

コンパイルインタープリタ!2つのプログラムの変換方式

以前「プログラミングをはじめよう①ーメリットと言語ー」では、プログラミングを行う際の言語や開発環境について紹介しました。プログラミングは2020年に義務教育化が検討されているため、今後ますます重要な知識となります。今回はプログラミングでは避けてとおれない、コンパイルインタープリタスクリプト)について詳しく紹介します。

プログラムを作成したあとにコンピュータで動作させるためには、コンピュータが処理可能な言語に変換する必要があります。変換方式はコンパイル方式とインタープリタ方式の2種類存在します。

処理速度が速い!コンパイル方式

コンパイル方式では、作成したプログラムを変換すると、コンピュータで処理可能な実行ファイルが別に作成されます。実行ファイルには人間では解読できない文字が書かれています。プログラムをコンパイルしてコンピュータが理解できる言語に変換するという手間はかかりますが、コンピュータに適した実行ファイルとなるため処理速度はインタープリタ方式にくらべて速くなります。しかし、プログラムの修正時には、プログラム修正後に再度コンパイルを実施する必要があるため時間がかかります。JAVAC++C#などの言語がコンパイル方式に該当します。

修正が容易!インタープリタ方式

インタープリタ方式では、作成したプログラムをそのまま実行できます。プログラムはコンピュータ側でひとつひとつ順番にコンピュータが理解できる言語に変換され、処理が実行されます。そのため、インタープリタ方式はコンパイル方式にくらべて処理速度は低下します。すぐに処理が実行可能なため、トライ&エラーでプログラムの修正は容易です。PHPJavaScriptPythonRubyなどの言語がインタープリタ方式に該当します。

最適な言語を選択可能!プログラミング言語

取り扱うデータ量によって、素早く修正可能なインタープリタ方式のプログラミング言語を利用するか、または高速処理が可能なコンパイル方式のプログラミング言語を利用するか、効率のよい方を選ぶ必要があります。プログラミング言語の特徴を掴み、その場に適した言語を利用することが開発の第一歩となるでしょう。

冒頭でも述べましたが、今後さらにプログラミングの知識は重要となり、システム構築の需要も高まっていきます。S-Collection株式会社では要望に合わせた最適なシステム構築をすることで、企業さまへ貢献し続けていきます。

スクラム開発のいろは②

スクラム開発がもっている特徴

前回はスクラム開発について概要を紹介しました。こちらでは、スクラム開発がもっている特徴について、述べていきます。

キーとなるのはチーム内でのコミュニケーション

スクラム開発では、チームメンバー全員がほぼ毎日、コミュニケーションを取ることが求められています。全員が直接顔を合わせ、お互いにコミュニケーションをとることで、チームとしての意識を高めながら開発をすすめていきます。
コミュニケーションが苦手な人には、慣れるまではたいへんかもしれません。しかし、1スプリント、2スプリントとコミュニケーションを取ることに慣れてくると、チームワークはどんどんよくなって行きます。そうなれば、チーム全体の生産性も向上していきます。
このとき、チームリーダーはチーム全体が円滑に機能するよう、舵取りを行う必要があります。

短い期間での開発で、仕様変更に対応しやすい

スクラム開発では、短い期間で、システムを部分的に完成させながら進めていくので、システム全体像が見えやすい特徴があります。
そのため、途中で仕様の間違いに気がついたり、そもそもの仕様変更にも迅速に対応をすることができます。

ただ、短い期間でチーム全体で集中力を高めながら開発を行うので、ひとりひとりの負荷についても常に注意しておく必要があるでしょう。チームリーダーは常に全体の稼働状況を把握することが求められます。

最後に

スクラム開発のように、短い期間で集中してシステム開発を行うことは、急なプロジェクトの方針転換にすばやく対応することが求められる昨今において、需要が高まってきています。

S-Collection株式会社では、多くのスクラム開発の実績があります。スクラム開発について、お悩みのことがあれば、S-Collection株式会社までご相談ください。