【Java】Google Drive APIで大きいサイズのファイルをダウンロードする方法

article_90_eye_catch

 

皆さんはGoogle Drive APIを利用したことがありますでしょうか?

最近Google Drive APIを利用する機会があり、その際に提供されているAPIではどうにも解決できない問題に直面しました。

それはサイズの大きなファイルをアップロードすることはできても、ダウンロードすることができないという問題です。

なぜダウンロードできないかというと、Google Driveからファイルをダウンロードする際、対象ファイルは自動的にウィルススキャンされる仕組みとなっているのですが、100MB以上の大きなファイルについてはウィルススキャンの実行に失敗してしまうためです。

色々と検証を重ねた結果、最終的にダウンロードに成功しましたので、備忘録を兼ねてGoogle Driveからサイズの大きなファイルをダウンロードする方法についてご紹介いたします。

【Java】Google Drive APIでGoogle Driveに接続する方法

article_91_eye_catch

 

最近Google Drive APIを利用する機会があり、API利用までの手順がやや面倒でしたので、備忘録を兼ねてご紹介したいと思います。

プログラムのサンプルはJavaですが、基本はGoogleから提供されているサンプルがベースになります。

API利用までの事前準備は他の言語においても共通になりますので、他の言語を利用の方はGoogleで公開されているサンプルソースをもとにプログラム部分だけ差し替えて読んで頂ければ幸いです。

MySQL5.7における全文検索の実装方法について

article_89_eye_catch

 

以前、MySQLのデータベースエンジンであるInnoDBの全文検索を導入するために、MySQL5.6から5.7へバージョンアップしたのですが、InnoDBにおける全文検索は思ったほどのパフォーマンスは得られず、全文検索に特化したMroongaエンジンを利用することにしました。

本記事ではInnoDBおよびMroongaの両方について紹介致します。

※ おすすめはMroongaです。

全文検索とは簡単にイメージを掴んで頂くと、Google検索のようなキーワードによるデータ検索機能です。

【yumの基本】CentOS環境でyumを使ってソフトウェアをインストール、アンインストールしたり、インストール済みライブラリを調べたりする方法

article_40_eye_catch

 

CentOSで様々なパッケージライブラリをインストールする際にyumを利用します。

perl, php, mysql, postfix, python, java, httpd 等々ソフトウェア開発に必要なものも大抵はyumコマンドでインストール可能です。

開発環境を整えたり、ライブラリのバージョンアップを行ったりする際にyumは利用しますので、yumを利用する際に最低限知っておきたいコマンドをご紹介いたします。

Linuxにおける日本語名フォルダを英語名に変更する方法(デスクトップ、ダウンロードフォルダ等)

article_39_eye_catch

 

Hyper-Vを使ってCentOS7をインストールし、xrdp,xorgxrdpを利用した接続をする方法を紹介した際にも触れましたが、インストール手順の記事は長く、目的も違うため、改めて該当部分のみ再掲載致します。

CentOS7を日本語でインストールすると、各種標準のフォルダ名が日本語名になります。GUI環境であるとはいえ、Linuxでは端末(ターミナル)を開いてコマンドでファイル操作を行うのが一般的です。(そのほうが便利で楽なのです。)

例えば、コマンドでファイルのコピーやフォルダの移動、検索などを行ったりするのですが、端末での操作は基本アルファベットなので、フォルダ名が日本語だとコマンド入力時に言語の切り替えが必要になり、操作が煩雑になります。

そのため、フォルダ名は英語のほうが扱いやすく、文字化け防止にもなります。

MySQL5.6から5.7へのアップグレード手順 (全文検索でngramを利用するために)

article_37_eye_catch

 

MySQLで全文検索機能を実装しようとした場合、MySQL5.6以上から日本語の全文検索に対応しています。

しかしながら、MySQL5.6ではngram等のパーサに非対応で、FULLTEXTインデックスの利便性が悪いです。

検索精度を向上させるためには、FULLTEXTインデックスを付与したカラムに自前で工夫したキーワードを登録する必要があります。

キーワード生成の自前作成をアプリ側でやろうとするとパフォーマンスも悪く、煩雑なデータ登録ロジックになるため、ngramのパーサに対応しているMySQL5.7へバージョンアップすることにしました。

今後さらにバージョンアップを行う場合、同じ手順で実行可能とは限りませんが、ほとんど同じ手順でできるのではないかと思料しております。

MariaDB(MySQL)におけるデータベースの作成とユーザ作成および権限付与について

article_32_eye_catch

 

MariaDBとMySQLは姉妹関係にあるRDBMSになります。どちらもアプリケーションで登録するデータを保存するために必要なソフトウェアです。

違いはMySQLをもとにパフォーマンス改善し、後発として誕生したものがMariaDBです。

MariaDBもしくはMySQLをインストールした後はデータベース(DB)の作成と、作成したDBを操作するためのユーザ作成が必要になります。

自身でWebアプリケーションを構築する際やWordPress、DrupalといったCMSをインストール際にDBの構築作業は必要になります。

また、MariaDB(MySQL)はレンタルサーバでよく使われています。

レンタルサーバでは大抵管理メニューから簡単にDBの作成ができるようになっておりますが、管理メニュー等の便利機能に頼らずともデータベースの作成やユーザの作成ができるようにしておいたほうが吉です。

青色事業専従者の給与と労働基準法の最低賃金の関係性

article_31_eye_catch

 

最低賃金が改定され、東京都で1013円、神奈川県で1011円と1000円を超えるようになってきましたね。

しかしながら、個人事業主と青色事業専従者は労働基準法の定義から「労働者」ではないため、労働基準法でいう最低賃金はあまり関係が無いようです。

個人事業主は賃金を支払う立場であり、「事業に使用される者」「賃金を支払われる者」である労働者の定義から外れます。

青色事業専従者につきましても、個人事業主と生計をともにする家族であり、個人事業主と同じ立場としてみなされます。

MariaDBのインストールまたはMySQLのインストール

article_29_eye_catch

 

プログラミングを始め、システム開発を行うときに必ずと言っていいほどセットで登場するのがデータベース(DB)です。

データベースとはデータを保存するためのソフトウェアであり、リレーショナルデータベース(RDB)が主流です。

データベースの作成やそれらにアクセス可能なユーザなどを管理するソフトウェアがMariaDBやMySQL、PostgreSQL、Oracle、SQLServerといったものです。

RDBにおいて覚える必要があるのはSQLというデータベースを操作するための言語です。

データを格納する箱であるテーブルを作成したり、データの登録、更新、削除、検索といったことをSQLを使って行います。

今回はSQLの基礎知識ではなく、CentOS7環境に最新のMariaDBをインストールする方法、MariaDBではなくMySQLをインストールする方法をご紹介いたします。

CentOS環境にPHPをインストールする方法

article_28_eye_catch

 

Linux環境(CentOS7)においてPHPをインストールするコマンドをご紹介いたします。

VagrantやDockerで開発環境を配布するケースも増えてきており、自身で環境を一から整える機会は少なくなりつつあるかもしれませんが、一から手順を経験しておくと何か問題が起きたときに対処できるようになります。

Linuxでは単純に何かをインストールするといっても関連するパッケージをいくつかインストールする必要があります。

パッケージとはいくつかの機能を提供するプログラムを一つにまとめたものです。リポジトリと呼ばれるパッケージの保管庫のようなものからインストールします。

今回はCentOS7におけるインストールなので、yumコマンドを利用します。

PHPはyumのbaseリポジトリにもありますが、バージョンが古いため、remiリポジトリを使います。