2019-01-01から1年間の記事一覧

htpasswdファイルを簡単に作るにはDocker使うのも便利

手元の環境でhtpasswdのエントリを生成するのに、Docker使えばお手軽便利でした。 $ sudo docker run -it httpd:2.4.39-alpine htpasswd -nb otomo Passw0rd otomo:$apr1$MACrpovj$tMIF8X/QOnm740kB49CN5. サーバーにhtpasswd入っている場合はもちろんそっち…

Fluentdのtailプラグインでpathで指定したファイル名を後続処理で利用する

Fluentdのtailプラグインを使っている際に、ファイル名に日付等の情報を埋め込んで後続処理で使う方法を調べました。 ※WindowsのFluentd使っています 例えば、「C:\data\csv\data.csv.20190913」ような感じで、日付をファイル名に埋め込みます。このファイル…

PowerShellのワンライナーを実行するWindowsタスクをPowerShellで登録

題名の通り、WindowsタスクにPowerShellのワンライナーを埋め込みたくて方法を調べていました。ついでに、IISのログを削除するWindowsタスクを、PowerShellワンライナーで実装して、PowerShellでWindowsタスク登録するまでやったのでメモ。(何書いてるかわ…

マイクロソフト Sculpt Ergonomic Mouse L6V-00013を腱鞘炎対策に買ってみた

その中でも最近は自宅作業が多いので、自宅の作業環境を徐々に改善してきており、今回、自宅用のマウスを新しく購入しました。 マイクロソフト ワイヤレス マウス 人間工学 高精細読み取りセンサー Sculpt Ergonomic Mouse (ブルートラック) L6V-00013出版社…

ElasticsearchとKibanaのバージョン指定の検証環境をDockerで立ち上げる

同じこと調べるの3度目だったので、将来の自分のための作業メモ残しておきます。 準備 設定 docker-composeファイル 後は起動するだけ Kibanaにアクセス 参考 準備 適当なディレクトリ作って移動。 mkdir es cd es/ 設定 とりあえず、ローカルマシンでのちょ…

AWS Certified Security - Specialty取得してきました

最近、認定試験の記事ばかり書いている気がします・・ ちょうど個人的繁忙期で、個別技術追う時間が無くて試験予約だけして直前に勉強くらいしか時間が無いのが実情です・・ただ、そういう忙しい時でも、お金かかっているので意地でも勉強するので試験は便利…

【Google Cloud・GCP】Professional Cloud Developer 認定資格取得してきました

GCPのProfessional Cloud Developer取得してきました。 2021/07/20に更新してきました 勉強内容 模擬試験 AWSとの比較 キャンペーンの利用 出題傾向 日本語 プレゼント 所感 GCP試験関連 2021/07/20に更新してきました 試験問題数が60問と増えており、内容も…

技術ブログが500記事に到達したので振り返り

別の記事を書いていたのですが、気づいたら次の投稿が500記事目でした。 せっかくの500という区切りの良い数字なので、書いてた記事取りやめて、記念と独り言記事書きます。 ステータス 今の書いている時点では投稿数499記事。これを投稿して500記事です。 …

AWS Fargate使ってサーバーレスでSelenium+Headless Chromeを実行する

この記事に行き着いた方でしたら、日々自動化を進めている中にも、ブラウザでのクリック、クリック、入力、クリック、みたいな作業が残っている人が多いと思います。 REST等でAPIが公開されていれば良いのですが、そういうAPIが提供されていないサービスもた…

AWS Glue Python Shellでloggingを使ったログ出力について

GlueのPython Shellでloggingモジュールを利用してログを取得を考えてた時のメモです。 ログ出力先 loggingモジュールのデフォルトの出力先 ログ設定パターン デフォルト 全て /aws-glue/python-jobs/error に出力するパターン ストリームを使い分けるパター…

GitHubから特定のディレクトリ配下のファイルをPowerShellワンライナーで一括ダウンロード

ちょっと作ったのでメモ。 取得したいもの 今回、ここにあるRedshiftのView定義用のSQLファイルを取得したいと思います。 https://github.com/awslabs/amazon-redshift-utils/tree/master/src/AdminViews 利用するGithub API 以下のContents APIを利用します…

G検定(2019年7月6日のジェネラリスト検定)に合格した

試験概要 動機・前提知識・勉強 受けてみて 試験について オンライン試験について 良いところ 気をつけるべきところ まとめ 試験概要 今回受けた試験の概要を本ページから引用です。 オンラインで受けられるところが気楽で良いです。ただ時間が休日の昼間な…

Samsung Galaxy Tab S5eを購入しました(iPad Air2からの買い替え)

ここ2年くらい、普段使いのタブレットとしてiPad Air2を使ってきました。 最近は外出先でノートPCではなく、タブレットをキーボードで操作している人を見る機会が増えてきている気がします。 私もタブレットのキーボード操作したいなと思い、新たなタブレッ…

Amazon Elasticsearch ServiceのKibanaでWMSマップを使う

Amazon Elasticsearch ServiceのKibanaで地図を使おうと思ったのですが、どの情報も kibana.yml を設定するものばかり。 以下の記事には大変救われました。WMSについても書いてあります。 qiita.com 上記の記事を参考にこちらのサイトにたどり着きました。 w…

Redshift Spectrumのパフォーマンスチューニングが必要なら統計情報を確認する

一番下の参考情報にも載せている通り、Redshift Spectrumのチューニングには、パーティショニングやファイルフォーマット等色々なポイントがありますが、ここでは特に見落としやすい、かつ効果の高い統計情報について書いていきます。 利用するデータ 環境準…

AWS GlueでS3上にあるPythonの外部ライブラリをインポートして利用する

題名の件、Glueで外部ライブラリをインポートしたので、その方法を書いておきます。 外部ライブラリ 参照元 アップロードパッケージ作成 GlueジョブにPythonの外部パッケージ設定 GlueのPySparkコードから実行 出力結果 本当はこんなことしたかったわけでは…

AWS Glueのワークフロー機能がリリースされたようなので触ってみました

AWS Summitで発表されたようですが、Glueの標準機能でワークフローが組めるようになったと聞いたので早速試してみました。 Glueでワークフローを組むのは大変だった やってみる CrawlerとJobを用意 ワークフロー作成 トリガー作成 ワークフロー作成 ワークフ…

Redshift Spectrumでは1400年1月1日より古いDATE型は読み込めない

同じエラーに出くわす人いると思ったので書いておきます。 S3にParquet形式で保存したデータをRedshift Spectrumで読み込むと以下のエラーが発生することがあります。 > select * from some_spectrum_table; Assert DETAIL: -------------------------------…

お問い合わせ

読み込んでいます...

Amazon Elasticsearch Serviceの検索でSQLが使えるようになったので使ってみました

開発しているサービスの一部でElasticearch使っているのですが、ElasticsearchのクエリDSLって少し触ってないだけで忘れてしまいます。 昨日もGroupByに当たる、Aggregationを複数フィールドでやるのどうやるんだっけと、素人みたいなことで悩んでググってい…

AWS Certified Machine Learning – Specialty に合格してきました

ここ数年のAIブームで、AIの勉強全くしてこなかった私でも、少しずつ仕事でAI関係に関わることができてきました。その度に部分的に頑張って追いつくというのを続けてきたのですが、そろそろ限界を感じたので、どこかで体系的に勉強しなくてはと考えていまし…

プライベートなPyPIをpypiserverとDockerで簡単に作成する

イントラネット環境からのみアクセス可能なPyPI( The Python Package Index)を作りたい場合。 Dockerとpypiserverを利用すれば、簡単にプライベートなPyPIが作れます。 github.com プライベートのPyPIを構築 プライベートPyPIにパッケージを登録してみる プ…

静かな、静寂な、集中できる作業環境を求めて飽くなき追求 2019年版

私は仕事場でも家でも作業の大部分は、耳栓、イヤホン、ヘッドホンを装着しています。ただし、音楽には全く興味がありません。 イヤホンやヘッドホンで何を聴いているのかと言えば、基本は何も聴いていない「無音(ノイズキャンセリング)」、または波や風や雨…

Glue DynamicFrameでParquet変換におけるDecimalの扱い注意点

金額計算などで利用する固定小数点数 decimal をGlueで扱う場合の注意点を書きます。 GlueのGUIでそのまま設定すると、decimalにはなるのですが、 decimal(10,2) という型に固定されてしまうといった落とし穴もありますので、そのあたりも。 例として以下のC…

Redshift Spectrum 用の外部スキーマ上のテーブル定義を確認する

Redshfit SpectrumでDESCや \d 、SHOW CREATE TABLEなどで確認するクエリのメモ。 SELECT * FROM SVV_EXTERNAL_COLUMNS WHERE schemaname = '外部スキーマ名' AND tablename = 'テーブル名'; +-------------------------------+-------------+--------------…

Pythonスクリプト内からCuratorを使ってElasticsearchのIndexを操作する

Curatorは通常、YAML形式の定義ファイルを使ってコマンドラインから操作することが多いと思いますが、PythonからAPIを経由で操作することも可能です。 基本的な操作のざっくりコードですが例を書きます。 準備 Elasticsearchクライアントの生成 CuratorのImp…

PandasのDataFrameを使ってElasticsearchにデータを投入

PandasのDataFrameをそのままElasticsearchに入れた方法書きます。 元データ準備 データの前処理 Elasticsearchへの接続確認 Elasticsearchへインデックスのスキーマテンプレートの定義 Elasticsearchにデータ投入 確認 参考URL 元データ準備 CSVのデータな…

AWS Glueで変更のあったパーティション配下だけS3を部分更新したい

やりたいこと 準備 テストデータ生成 S3にアップロード ETLジョブ 部分更新のケースを試してみる 課題① ジョブブックマーク有効化時の再実行 課題① の対策 課題 ② DynamicFrameはAppendしかできない 課題②への対策 課題②への対策1 直接パーティションだけを…

PySparkでOpen Distro for Elasticsearchにデータを投入

タイトルの件、作業メモ。 AWSが出してきたOpen Distro for ElasticsearchにPySpark使ってデータを投入する部分を下調べしたので残しておきます。 利用するデータ Open Distro for Elasticsearchの起動 PySpark準備 ElasticSearchに投入 参考URL Open Distro…

Windowsのinode的情報BY_HANDLE_FILE_INFORMATIONを取得するPowerShellスクリプト

Windowsでもinode的なところを調べたかったのですが調べてみると、 stackoverflow.com Open both files with CreateFile, call GetFileInformationByHandle for both, and compare dwVolumeSerialNumber, nFileIndexLow, nFileIndexHigh. If all three are e…