St_Hakky’s blog

Data Science / Human Resources / Web Applicationについて書きます

【Python】Pandasのメモリ使用量の削減方法のまとめ

こんにちは。今、とある事情でPandasのメモリ使用量の削減を仕事でしているのですが、その時に改めてPandasのメモリ使用量の削減方法を調べたので、まとめてみます。 メモリ使用量の確認 今回、タスクを実施するにあたってメモリ使用量がどのくらいかかって…

【Golang】Go Modulesについて調べたのでまとめる

こんにちは。最近、Goの勉強をせっせとしています。特に業務で使うわけでもなく、完全に趣味なのですが、楽しいのでやっています笑。今回は、Go Modulesについて調べたのでまとめてみます。 Go Modulesとは Go 1.11 から追加された外部パッケージの管理シス…

【Python】Pandasで大きなcsvファイルを読み込む

こんにちは。最近、少し重めのデータを扱うことがありまして、Pandasで読み込もうとしたところ、メモリエラーを食いました。良い機会なので大きめのcsvファイルを扱う時に行うことを自分用メモとしてまとめておこうと思います。 方法一覧 大きめのファイルを…

【Python】Pythonの高速化のためのNumbaのTips

こんにちは。最近、仕事でNumbaを使ったコードと対峙しまして、良い機会だと思って、NumbaのTipsをまとめてみました 本家 Numba: A High Performance Python Compiler Numbaとは PythonやNumpyのコードを高速な機械語に変換するためのJITコンパイラのことを…

【AWS】SAMを使ってLambdaでAuroraを自動で停止させる

こんにちは。先日、開発チームのコスト削減の一環で、開発環境のAuroraをDailyで確認し、起動されていたら、自動的に停止するスクリプトを書きました。そんなに大したことではないのですが、なんかまたありそうなネタなので、自分のブログでまとめておこうか…

【Docker】docker-composeのCPU/メモリ使用量の制限

こんにちは。今仕事でメモリ使用量を最適化するような感じのタスクをやっていて、docker-composeのメモリ使用量を制限するやり方みたいなのを調べたのでまとめておきます*1。docker-composeのversion3を使っているのですが、version2のやり方で行けるかなー…

【Python】テスト駆動開発(TDD)について

こんにちは。最近、「テスト駆動Python」という本を読んで、「弊社の開発チームでは取り入れていませんが、そういえばテスト駆動開発とかもあるなぁ」、と思って、ぼんやりとは知っていたものの、ちゃんと調べたことがなかったので、調べてみました*1。 テス…

【Python】「テスト駆動Python」を読んだ

こんにちは。最近、テスト周りについてがっつり調べていたのですが、今やっているプロジェクトでpytestを使っているので、その周辺でいい本ないかなぁと思って読んでみました。この記事では、その本の紹介をしてみたいと思います。 今回読んだ本 今回読んだ…

【Terraform】tfenvでterraformのバージョン管理

こんにちは。今日は、tfenvでterraformのバージョン管理をやっているので、そのことについて書きます。 tfenvとは 複数のプロジェクトで、terraformを使う場合、terraformのバージョンが違うことがあります。そのことに対応するために、複数のterraformをイ…

【Python】使用メモリを計測するためにmemory_profilerを使う

こんにちは。Pythonでメモリ使用量を調査する方法について、今回はmemory_profilerについて調べたのでまとめます。 本家のサイト memory-profiler · PyPI インストール $ pip install memory_profiler 使い方 使い方としては、めちゃめちゃ簡単で、確認した…

【Python】Apache Beamを使ってデータパイプラインを実装してみる

こんにちは。先日、Apache Beamに関する概要の記事を書きました。www.st-hakky-blog.com今回は、Apache Beam SDKのうち、Pythonを使って、実際にデータパイプラインを実装してみようと思います*1。 今回のお題 今回は、Apache Beamの公式のドキュメントをベ…

Apache Beamとは

こんにちは。最近、社内のデータパイプラインの再設計をしておりまして、その中でGCPのDataflowを使う話が出てきました。その中で、Apache Beamの内容について勉強する必要があったので、それについてまとめます*1 Apache Beamとは 公式サイト 本家のサイト…

【Redis】Redashがredisのメモリ不足で落ちた

こんにちは。 Redashが吐き出したエラー 会社でRedashを使っているのですが、こいつがクエリを叩くたびに以下のようなエラーを出すようになりました。 Error running query: failed communicating with server. Please check your Internet connection and t…

【Scala】sbtenvでsbtをインストールする

こんにちは。最近、社内でScalaを使っていくことになりまして、勉強し始めました。 sbtenv Githubのページはこちら。github.com インストール 基本的には、Githubから落としてきて、そのままPATHの指定をやるだけ(私は、zshを使っているので)。 $ git clone …

【Golang】Go自体の環境のバージョン管理ができるgvmの導入

こんにちは。会社でGoを本格的に使う感じになりそうなので、色々手探りながら勉強しながらやっています。今回は、Go自体のバージョン管理を行うことができる、gvmを使ってみました。 gvmとは gvm は、Go Version Manager の略で、github.com インストール 今…