iMind Developers Blog

iMind開発者ブログ

Pythonのpsutilでハードウェアの情報を取得する

概要 psutilでCPUのコア数、ディスクの空き容量、メモリの使用量等、ハードウェアの情報を取得する。 バージョン情報 Python 3.6.8 psutil==4.4.2 Ubuntu 18.04.1 インストール $ pip install psutil CPUのコア数 import psutil psutil.cpu_count() => 8 上…

PythonでElasticsearchの操作

概要 PythonからElasticsearchにデータの登録、検索、削除を行う。 バージョン情報 Python 3.6.8 (elasticsearch==6.3.1) Elasticsarch 6.5.4 導入 PythonのElasticsearchクライアントを入れておく。 $ pip install elasticsearch ElasticsarchはDockerで立…

PySparkで1レコードを複数行にする

概要 PySparkでexplodeやflatMap、mapPartitionsを用いて1レコードを複数レコードに加工する。またgroupByで元の1レコードに戻す。 バージョン情報 spark-2.3.1 Python 3.5.5 サンプルデータ id, title, tagsの3つのカラムを持つcsvファイルがあるとする。ta…

pandasのapplyの進捗をtqdmで表示

概要 pandasで大きめのDataFrameに対してapplyすると、いつまで待てば結果が返るのか不安になることがあるのでtqdmで進捗を表示したい。 バージョン情報 Python 3.6.8 tqdm==4.31.1 pandas==0.23.4 サンプルデータ ランダムな数値で1万行のDataFrameを作成し…

Azure CLIで利用可能なリージョンの一覧を取得する

概要 リージョン一覧自体は下記ページなどに載っているけど、利用可能でないリージョンも載っていたりAzure CLIで指定するNameが載っていなかったりする。 Azure Locations | Microsoft Azure CLIを利用して利用可能なリージョンとそのNameについても取得す…

AirflowでMySQL/PostgreSQLのconnectionの取得

概要 AirflowのConnectionsで設定したDBへの接続情報を利用して、Pythonのスクリプト上でDBへ接続する。 サービスで利用するDBの接続情報(ユーザー名/パスワード等)をAirflowで管理してしまおうという考え。 バージョン情報 Python 3.6.7 apache-airflow==…

condaのPythonのバージョン管理

概要 condaで使っているPythonのバージョンを上げたり下げたりする。 バージョン情報 conda 4.6.7 Pythonのバージョンを更新する envに作るのではなく $CONDA_HOME/bin/python 自身のバージョンを上げる場合。 実行前のPythonのバージョン $ python --versi…

AzureでNIC2枚挿し

概要 Azureで1台のVMにNICを2枚挿したかった。 バージョン情報 azure-cli 2.0.54-1 Ubuntu 18.04.1 LTS vmの立ち上げ まずは適当な名前でVMを生成。 RESOURCE_GROUP=your_resource_group_name $ az vm create \ --resource-group $RESOURCE_GROUP \ --name e…

Azure CLIで任意のバージョンでLinuxのVMを立ち上げる

概要 これを書いている時点で az vm create --image UbuntuLTS を指定すると16.04が立ち上がってきたので、18.04を指定してみる。 バージョン情報 azure-cli 2.0.54-1 Ubuntu 18.04 Imageの検索 利用可能なイメージを検索する。下記はUbuntuの例。(このコマ…

AzureのVMのディスク容量をCLIで増やす

概要 AzureのVMを作成した後、deallocateしてディスク容量を変更して再度立ち上げる。 バージョン情報 azure-cli 2.0.54-1 参考URL ほぼ下記URLに書かれている手順をなぞる。 https://docs.microsoft.com/en-us/azure/virtual-machines/linux/expand-disks V…