サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
2024年ランキング
qiita.com/atsaki
先日TwitchからリリースされたRPCフレームワークTwirpを試してみました。 Twirp: a sweet new RPC framework for Go – Twitch Blog twitchtv/twirp: A simple RPC framework with protobuf service definitions Twirpとは TwirpはgRPCと同じようにProtocol Buffersの.protoファイルからGoのコードを生成しますが以下のような違いがあります。 HTTP/1.1を使用 gRPCはHTTP/2を使用 JSONクライアントサポート 他の言語でクライアントを書くのが比較的簡単 cURL等を使ってコマンドラインからリクエストを送信しデバッグすることができる 動作に必要なツールをインストール protocなどのツールをインストールします。 Insta
様々な資料ではデータをわかりやすく示すためグラフが用いられています。 グラフで示されているデータを他のデータと比較したり、表示の方法を変更したりしたくなることがありますが、元データが入手できない場合は画像からデータを抽出する必要があります。 目盛りをみながら手で数字にしていくのは大変な作業ですがWebPlotDigitizerというウェブアプリをつかうと比較的簡単にデータを抽出することができます。 使い方 WebPlotDigitizerは折れ線グラフ、棒グラフなどに対応しています。 今回は例として折れ線グラフからデータを抽出してみます。基本的な使い方は他のグラフでも同じです。 下記リンク先の「Launch App!」をクリックするとアプリの画面が開きます。 WebPlotDigitizer - Extract data from plots, images, and maps 画像の読み
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
str.format() Python 2.7以降では「1000区切りのための書式指定子」を使って3桁毎にカンマで区切る事ができる。(区切る桁数や区切り文字の変更はできない) What’s New in Python 2.7 — Python 2.7ja1 documentation >>> print "¥{:,d}".format(1000000) ¥1,000,000 >>> print "¥{:,.2f}".format(1000000) ¥1,000,000.00
SQLをローカルでフォーマットするツールを探していてsqlparseというツールを見つけたので試してみました。 インストール sqlparseはPython製でpipを使ってインストールすることができます。 ウェブ上で使用する sqlparseはSQLFormatというオンラインサービスで使用されており、ブラウザやAPIでSQLを渡してフォーマットすることができます。 SQLFormat - Online SQL Formatter コマンドラインで使用する sqlparseをインストールすると使用可能になるsqlformatというコマンドに ファイルか標準入力でSQLを入力するとフォーマットされたSQLが出力されます。 -r で改行・インデント、-k upper でキーワードを大文字にすることができます。その他のオプションについては-h オプションで確認することができます。 $ SQL=
Azure Machine LearningはMicrosoftが提供しているクラウドベースの機械学習のサービスです。 Azure Machine LearningではGUIを使って様々な機械学習の手法を実行することができますがJupyterを使用することも可能となっています。 Azure Machine LearningでJupyter Notebookを使う Azure Machine LearningのはMicrosoftアカウントをもっていれば無料で試すことができます。Jupyterも無料のプランで使えます。 価格についての詳細は下記のリンクを参照してください。 料金 - Machine Learning | Microsoft Azure Microsoftアカウント作成 Microsoftアカウントをもっていない場合にはリンク先から作成します。 ホーム|Microsoft アカ
はじめまして@atsakiです。今回はTerraformを使用してCloudStackで使う方法を紹介します。 この記事はApache CloudStack Advent Calendar 2014の12/21のエントリです。 昨日は@shida1234さんの素人がCloudStackをインストールしてみた感想でした。 明日は@oracchaさんのAIST Super Green CloudにおけるCloudStack運用話です。 2015/09/02 組み込みのCloudStack Providerを使うよう更新しました Terraformとは Terraformは、インフラの構築、変更、バージョン管理を行うためのツールです。基本的にはクラウド上に構築されるインフラを対象としており、AWS, DigitalOcean, Google Cloud Platformなどに対応しています。 特
Vagrantを使ってIDCFクラウド上にDockerの環境を作成してみる例です。 IDCFクラウドの準備 この例ではIDCFクラウドを使用するためIDCFのアカウントを取得が必要です。 仮想マシンの作成にはお金がかかりますが最小構成では1時間1円程度です。キャンペーンが利用できる場合もあります。 動作確認とSSH鍵の登録 アカウントが作成できたら仮想マシンの作成とSSHの接続が正しくできることを確認しておきます。 方法はドキュメントを参照してください。 http://www.idcf.jp/cloud/document.html 作成したSSH鍵の名前を控えておいてください。 SSH接続が正しくできることが確認できたら仮想マシンは削除してかまいません。 IPアドレスのID取得 IDCFの管理画面のサイドバーのIPアドレス > network1をクリックします。 表示される画面の「ID」を
TL;DR ラベルを指定した場合のエミット先はプラグインの実装によって異なる。 ラベルに対応していないプラグインの場合 @labelの有無に関わらずトップにエミットする ラベルに対応しているプラグインの場合 @labelを設定している場合、対応するlabelタグにエミットする @labelを設定していない場合、自分のいるlabelタグに再エミットする <label>タグ内で<match> タグとパターンがマッチしなかったイベントについては、トップでマッチしなかった場合と同様警告がでる。 環境 動作は以下のバージョンで確認した。 td-agent (2.3.5-1) fluentd (0.12.36) fluent-plugin-rewrite-tag-filter (1.5.1, 1.5.2) fluent-plugin-flowcounter (0.3.0) ラベルに対応していないプラグ
最近よく耳にする構成管理ツールのAnsibleですがサーバーの設定だけでなくCloudStackの各種リソースを扱うこともできます。 今回はAnsibleによるCloudStackの操作の基礎として仮想マシン作成と簡単なプロビジョニングを行ってみます。 IDCF Cloud Advent Calendar 2015の@snicker_jp さんの記事と内容がかなり重複しているので、ぜひこちらの記事も読んでみてください。 AnsibleだけでIDCFクラウドの仮想マシン立ち上げから、HAProxyを使ったSSLオフローダーを構築する #idcfrontier : 元うなぎ屋 今回の記事で使用しているファイルは下記レポジトリにあります。 AnsibleのCloudStackモジュールについて AnsibleはファイルやユーザーなどOSの操作だけでなく、各種クラウドの仮想マシンやボリュームなどの
以前の記事でVagrantとDocker MachineのGeneric Driverを組み合わせCloudStack上にDockerホストやSwarmクラスタを構築してみました。 Vagrant+Docker Machine Generic Driverを使ってDockerホスト・Swarmクラスタを構築する CloudStackドライバを作成したので、これを使ってDockerホストやSwarmクラスタを構築してみます。 背景 以前からDocker Machineは様々な仮想環境・クラウドのドライバをビルトインで持っていました。しかし、新たな環境にDocker Machineを対応させるためには開発したドライバのコードを本体にマージしてもらう必要がありました。 2015/11にリリースされたv0.5.0からドライバを本体とは別のバイナリで追加できるようになりました。これによりドライバを追
Docker Machineを使用すると簡単に様々な環境にDockerホスト・Swarmクラスタを作成し、ローカルのDockerクライアントから使用できるよう設定することができます。 Docker Machine単体でも使えますがVagrantと組み合わせて使用することでDocker Machineが未対応の環境にホストやSwarmクラスタを構築することができます。 TL;DR VagrantとDocker Machineを組み合わせて使うと以下のようなメリットがあります。 Docker Machineが未対応の環境にDocker環境を構築できる vagrant upコマンドで複数ノードのDockerホスト・Swarmクラスタを構築・削除できる VagrantのSynced Folderでリモートのホストとファイル・ディレクトリを同期してくれる 環境 動作確認は以下の環境で行いました。 M
スプレッドシートのQUERY関数やVisualization APIではSQLライクなクエリ言語を使ってデータの集計をすることができます。今回はクエリ言語を使ってデータを集計し、結果を利用してグラフを描くアプリケーションを作成してみます。 前回作成したPivotTable.jsでは集計関数を一つしか使えないため、ある値の最小値、最大値、平均を並べるといったことはできませんでした。今回の方法では同時に集計関数を複数使う事も可能になっています。 Google スプレッドシートのデータをPivotTable.jsで表示する - Qiita TL;DR スプレッドシートのQUERY関数、Visualization APIではSQLライクなクエリ言語を使ってスプレッドシートからのデータ取得・集計ができる クエリ言語のGROUP BY句やPIVOT句はピボットテーブルと対応づけると覚えやすい クエリし
Google スプレッドシートのデータをPivotTable.jsで表示するウェブアプリケーションをGoogle Apps Scriptで作ってみました。 概要 列がたくさんあるようなデータを分析する際にはExcelなどでピボットテーブル・ピボットグラフを使うと対話的に集計したり、並べ替えたりできるので便利です。 しかし、頻繁に更新されるデータでピボットテーブルを使う場合、Excelではデータの共有・更新を面倒に感じていました。一方でGoogle スプレッドシートは共有・更新は楽ですが、今のところピボットテーブルにはExcelほどの機能がないようです。 そこで今回は、共有・更新が楽なGoogle スプレッドシートからデータを読み込み、PivotTable.jsでピボットテーブルを作成するというウェブアプリケーションを作ってみます。 PivotTable.jsはピボットテーブルを作成するため
ターミナル上で簡単にグラフを描くためにtermeterというツールを作成してみました。 Getting Started termeterは通常のコマンドラインツールとして使用することができます。タブ区切りやカンマ区切りのデータを標準入力かファイルであたえることでグラフを描く事ができます。 例として以下のような三角関数のタブ区切りのデータを考えます。 $ seq 100 | awk 'BEGIN{OFS="\t"; print "x","sin(x)","cos(x)"}{x=$1/10; print x,sin(x),cos(x)}' | head x sin(x) cos(x) 0.1 0.0998334 0.995004 0.2 0.198669 0.980067 0.3 0.29552 0.955336 0.4 0.389418 0.921061 0.5 0.479426 0.877
前回はDocker MachineでDockerノードを構築してみたので、今回は同時にアナウンスされたDocker Swarmでクラスタを構築してみます。 Docker Swarmとは Docker Swarmは複数のDockerホストをクラスタ化するためのツールです。Docker SwarmをAPIを受け取るフロントエンドとして、コンテナをクラスタのメンバー上で動かすことができます。 Docker Swarmのマネージャをホストとして指定すれば各種Dockerのツールもそのまま使えるようです。 ノードの構築 今回はIDCFクラウド上にnode1〜node3の3つの仮想マシンを作成しクラスタを後置鵜してみます。 3台の役割とlistenしているIP・ポートは以下の通りとします。 node1 マネージャ(tcp://0.0.0.0:12375) ノード(tcp://0.0.0.0:2375)
使い方 toolz により提供される関数は次の3つに大別されます。このうちItertoolz 、Functoolz は、それぞれitertools 、functools の拡張に相当する機能を提供します。 Itertoolz Functoolz Dicttoolz toolzはmap 、reduce 、filter など標準で使用できる関数も提供しています。これらをインポートするとmap であればitertools.imap のようにIterableを扱える関数に置き換えられます。これらの関数の使い方については元のものとほぼ同じなので割愛します。 以下、よく使いそうな関数を紹介していきます。 Itertoolz itertools 相当の機能を提供します。itertoolsのレシピに載っているような関数もあります。 要素の取得 - get, pluck get get はシークエンスや辞書
株価の取得方法について調べていて見つけたQuandlというサービスが良さげだったので使ってみた。 Quandl Quandlは金融、経済などの数値データの検索エンジンで、さまざまなソースから得られたデータを検索し、グラフや表を表示させることができる。またデータはJSON、CSVなどの形式でダウンロードしたり、Plotlyなどのサービスに取り込ませることもできる。 Getting Started 一部有料のデータもあるが多くのデータについては無料で取得することができる。 様々な言語のライブラリも用意されており(https://www.quandl.com/help/libraries )、APIを用いてデータの取得や検索ができるようになっている。 各データを個別に提供しているだけではなく、データをまとめているページがある。 画面左上からData > Data Browser とクリックすると
データベースにテーブルやカラムがたくさんあったり、そのデータベースをはじめて扱う場合、欲しいデータがどこにあるのか探すのになかなか手間がかかることがあります。 そんな場合に役に立ちそうなdb.py と言うツールを見つけたので試してみました。 https://github.com/yhat/db.py 直接SQLで探索する方法は以下の記事を参照。 SQLでデータベース探索 db.pyでできること db.py を使うと以下のようなことが簡単にできます。 テーブル名やカラム名の検索 クエリの実行 データのサンプリング よく使うデータベースの接続情報の保存 pandasの機能を使用したクエリ結果の処理 データベースに格納されているデータの全体像を把握したり、欲しい情報がどこにあるのか探すために使うと便利です。 インストール db.pyのインストール db.pyはPython で書かれておりpip
Rubyの高機能なREPLであるpryとマルチクラウド対応ライブラリのfogを利用して、簡単に複数のクラウドを扱うことができます。 TL;DR pryとfogを組み合わせるとクラウドの操作に補完・シンタックスハイライト・履歴・Rubyの配列操作などが使え非常に便利 fogが提供しているインターフェースにより異なるサービスでも同じコマンドで操作できる 仮想マシンだけでなくオブジェクトストレージ、DNS、CDNも扱える 準備 pryとfogをインストールしておきます。 ライブラリのインストール Pry::Commands.create_command "fog" do description "Connect to the service provider using Fog" command_options :keep_retval => true banner <<-BANNER Usag
Docker Machineを使ってDigital OceanにDocker環境を構築・コンテナを起動までを行ってみます。 Docker Machineとは Docker Machineはコマンド1つでDockerデーモンがインストールされた環境を構築するためのツールです。主要なクラウドサービスの多くで既に使えるようになっています。 2015/3/1現在下記プロバイダーに対応しています。 Amazon EC2 Microsoft Azure Microsoft Hyper-V DigitalOcean Google Compute Engine OpenStack Rackspace SoftLayer VirtualBox VMware Fusion VMware vCloud Air VMware vSphere また、現在下記プロバイダの対応についてPull Requestがオープン
最近型ではまることがたびたびあったのでまとめてみました。 主に下記についてまとめています。 型とインターフェース 代入のルール 型の変換 型アサーション reflectパッケージの使い方 インターフェースの実装などについては触れていません。 型とインターフェース 名前を持つ型と名前を持たない型 型には名前のある型(named types)とない型(unnamed types)がある。 代入の可否など名前の有無で動作に違いのあるケースがある。 ざっくりいえば、英数字で表されているものが名前のある型、括弧やアスタリスクなどの記号を使って表されている型が名前のない型 名前のある型 下記のようにtypeを使って宣言されている型は名前のある型。
Ansible 1.3でroleのデフォルト変数と依存関係が設定できるようになったので、変数の優先度を調べてみた。 優先度が高い順から下記のようになっている。 factsやregisterで設定される値 roleにパラメータとして渡した値 vars_file extra_varとしてコマンドラインから渡した値 varsセクションで設定した値 roles/x/vars/main.ymlで設定した値 inventory_fileでホストに設定した値 inventory_fileでグループに設定した値 roles/x/defaults/main.ymlで設定した値 roles/x/meta/main.ymlで他のroleへの依存を設定した場合には、そのroleに設定した変数の 値も読み込まれる。(優先順位としては呼び出し元のroleの変数と同じで、呼び出し元のroleでも値が設定されていた場合に
このページを最初にブックマークしてみませんか?
『qiita.com』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く