新しいことにはウェルカム

技術 | 電子工作 | ガジェット | ゲーム のメモ書き

Sparkのよく使うコードメモ

SparkはPythonプログラムなので、かなり自由に書くことができます。 しかし、いつも大体やることは決まっているし、色んな書き方を知っても、かえって記憶に残りづらくなってしまうので、Sparkの個人的によく使うコードを、1目的1コードの形にまとめておき…

AWS Glueを使った感想

以前、AWS Glueを試しに使ってみたのですが、その感想です。 AWS GlueはApache Sparkでできていて、その時初めてSparkを触って面白かったので、 そのうちGlueを本格的に使うようになったら、追々使い方をまとめようかと思っていました。 しかし、データ出力…

Spark(Google Dataproc)からAWS S3にアクセスする方法

Spark(Google Dataproc)から、AWS S3にアクセスする方法です。 手順 Spark設定 下記のSpark・Haddopの設定をすると、SparkからAWS S3ファイルの読み書きができるようになります。 Sparkに下記AWS関連のjarファイルを読み込みます aws-java-sdk-bundle-xxxx…

Spark(Google Dataproc)からMicrosoft SQL Server(Azure SQL Database)にアクセスする方法

Spark(Google Dataproc)から、Microsoft SQL Server(Azure Database)にアクセスする方法です。 手順 Spark設定 下記のSparkの設定をすると、SparkからSQL Serverのデータの読み書きができるようになります。 MS SQL ServerのJDBCのjarファイルをダウンロ…

Spark(Google Dataproc)からMySQLにアクセスする方法

Spark(Google Dataproc)から、MySQLにアクセスする方法です。 JDBCを使ってアクセスするので、PostgreSQL等、他のRDBにも応用可能です。 手順 Spark設定 下記のSparkの設定をすると、SparkからMySQLのデータの読み書きができるようになります。 MySQLのJDB…

MySQLのデータベースを、スキーマレスでパーティショニングしながらBigQueryにロードしてみる

BigQueryはデータ量が膨大でも、インフラの事は全く(本当に全く)気にしなくてよく、しかも早くて安いので、 データは全てBigQueryに入れてしまって、全部BigQueryで処理したくなってしまいます。 そんな訳で、MySQLのデータベースをまるまるBigQueryにロー…

Node.jsでAES暗号化・復号化してみる

Node.jsで、AES暗号化・復号化する機会があったので、そのメモです。 暗号化アルゴリズム「AES-256-CBC」で行いました。 ざっくりAES CBC暗号化について AES CBCは、任意の長さのバイナリデータを、鍵を使って暗号化し、同じ鍵を使って復号化する暗号化アル…

Google Cloud Storageのサブディレクトリ一覧をPythonで取得する方法

Google Cloud Storageのサブディレクトリ一覧を、GCP Pythonライブラリを使って取得したかったのですが、 ハマったので、その経緯と方法のメモ書きです。 他の言語のライブラリも、Pythonライブラリ同様APIラッパーなので、応用可能かと思います。 NG 例 最…

ラズベリーパイをマウス・キーボード・モニターなしでPCだけで使えるようにする

Raspberry Pi4発表のニュースを見て、久しぶりにRaspberry Piを引っ張り出してきて触っていました。 Raspberry Piは前にも少し触っていたのですが、PCとRaspberry Piの間で、マウス・キーボード・モニターを行ったり来たりするのが億劫になって、次第に使わ…

SQL Server でカレンダーテーブルを作る方法

SQL Server(Azure SQL Database)で、カレンダーテーブルが欲しかったので作成方法メモです。 ググったところ、「WITH」でテーブルを作成し、そのテーブル定義の中の「UNION ALL」から再帰呼び出しして作るようです。 WITH _calendar AS ( SELECT CAST(N'20…

理屈で覚えて楽をする。Gitの使い方メモ

Gitは難しいです…。対処療法的なチートシート作ればやっていけるかなと思ったのですがダメでした…。 何かトラブルがあると、どうしていいか分からす、お手上げになってしまいます。 同じことをするのにも、コマンドをまたいで書き方が複数あったりするのです…

Microsoft (Office365) PowerAppsからFlowに、マップデータを渡して、配列データを受け取る方法

追記(2019/08/06) PowerAppsからFlowには、String型のデータしか渡せないため、手動でマップデータをString化していたのですが、JSONデータをString化する関数が追加されていたんですね! qiita.com これで手軽にデータを渡せるようになりました!データソ…

Microsoft (Office365) Flow のデータの参照方法について整理する

Microsoft Flowは、基本型・配列・マップ(オブジェクト)などのデータ種類があるのですが、操作はGUIでラップされているため、どうすればデータから目的の要素の値にたどりつけるのかが、とても理解しづらいです。 値への参照方法を知っていれば簡潔に書け…

Kubernetesパッケージマネージャー、Helmの使い方メモ

Kubernetesのパッケージマネージャーに、Helmというものがあります。 それほど頻繁には使わないのですが、毎回使い方を検索しているので、自分用にメモしておきます。 Helmとは? Kubernetesに何か機能を追加する際は、アプリのデプロイと同様、YAMLファイル…

Puppeteerのクローリングで、Tableタグの表のデータをCSV出力する方法

クローラーとしてPuppeteerを使っています。 クロールしていて、サイトのTableタグで作られた表のデータを取得したい時があります。 Pythonなら、htmlからTableタグ以下のみを抽出し、それからPandasを使ってDataFrameを生成することにより、エレガントにで…