まず、githubのレポジトリに行きます。
コメントを書きます。
タスクができます。なるほど!
なお、Githubの無料版ではリポジトリが公開状態となっており、プライベートリポジトリを使いたい場合は、有料版に移行する必要がある。
随机应变 ABCD: Always Be Coding and … : хороший
まず、githubのレポジトリに行きます。
コメントを書きます。
タスクができます。なるほど!
なお、Githubの無料版ではリポジトリが公開状態となっており、プライベートリポジトリを使いたい場合は、有料版に移行する必要がある。
トランザクションのロック待ちでタイムアウトしてしまうことがある。
java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
mysql> use app
Database changed
mysql> create table lock_test (
-> id int primary key auto_increment,
-> name varchar(32) not null,
-> value int not null
-> ) engine = innoDB default charset=utf8;
Query OK, 0 rows affected (0.55 sec)
mysql> insert into lock_test (name, value) values (‘tanaka’, 80),(‘suzuki’, 30),(‘sato’, 50),(‘takahashi’, 40);
Query OK, 4 rows affected (0.07 sec)
Records: 4 Duplicates: 0 Warnings: 0
mysql> select * from lock_test;
+—-+———–+——-+
| id | name | value |
+—-+———–+——-+
| 1 | tanaka | 80 |
| 2 | suzuki | 30 |
| 3 | sato | 50 |
| 4 | takahashi | 40 |
+—-+———–+——-+
4 rows in set (0.00 sec)
コマンドラインを二つ立ち上げて、同時にupdateしようとすると、片方が止まります。これがlock wait
片方をcommitすると、以下のメッセージが出ます。
ERROR 1205 (HY000): Lock wait timeout exceeded; try restarting transaction
カラムが異なればロックされない。
インデックスだと、ロックされる。
update lock_test set value = value + 10 where name = ‘tanaka’;
Amazon RDS では、Amazon RDS リソースのメンテナンスを定期的に実行する。通常、メンテナンスには DB インスタンスや DB クラスターの基盤となるオペレーティングシステム (OS) あるいはデータベースエンジンの更新が伴う。通常、オペレーティングシステムの更新はセキュリティの問題に関連しているため、できるだけ早急に適用する必要がある。
すぐに適用とすると、開始される。
CLIで調整することもできる。 AWS CLI の modify-db-instance コマンドを使用する。
aws rds modify-db-instance \ --db-instance-identifier mydbinstance \ --preferred-maintenance-window Tue:04:00-Tue:04:30
https://rds.us-west-2.amazonaws.com/ ?Action=ModifyDBInstance &DBInstanceIdentifier=mydbinstance &PreferredMaintenanceWindow=Tue:04:00-Tue:04:30 &SignatureMethod=HmacSHA256 &SignatureVersion=4 &Version=2014-09-01 &X-Amz-Algorithm=AWS4-HMAC-SHA256 &X-Amz-Credential=AKIADQKE4SARGYLE/20140425/us-east-1/rds/aws4_request &X-Amz-Date=20140425T192732Z &X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date &X-Amz-Signature=1dc9dd716f4855e9bdf188c70f1cf9f6251b070b68b81103b59ec70c3e7854b3
マネジメントコンソールからの設定も可能。
リードレプリカというのは、読み込み専用として利用することができるマスターの複製データベース
非同期のため常にマスターと完全に内容が一致しているわけではなく常に最新のデータが取得できるということではありませんので、マスターの負荷分散用として利用するのがよい
Amazon RDS リードレプリカによって、データベース (DB) インスタンスのパフォーマンスと耐久性が向上する
1 つの DB インスタンスのキャパシティーを伸縮自在にスケールし、読み取り頻度の高いデータベースのワークロードを緩和
Amazon RDS for MySQL、MariaDB、PostgreSQL、および Amazon Aurora
読み込みクエリをアプリケーションからリードレプリカにルーティングすることにより、ソース DB インスタンスへの負荷を減らすことができる
Amazon Athena は、標準的な SQL を使用して Amazon S3 のデータを簡単に分析できるインタラクティブなクエリサービス
S3 のデータを指定し、スキーマを定義して、標準的な SQL を使用してデータのクエリを開始するだけ
Examples include CSV, JSON, or columnar data formats such as Apache Parquet and Apache ORC. You can use Athena to run ad-hoc queries using ANSI SQL, without the need to aggregate or load the data into Athena.
([^ ]*) ([^ ]*) ([^ ]*):([0-9]*) ([^ ]*):([0-9]*) ([.0-9]*) ([.0-9]*) ([.0-9]*) (-|[0-9]*) (-|[0-9]*) ([-0-9]*) ([-0-9]*) “([^ ]*) ([^ ]*) (- |[^ ]*)” (“[^”]*”) ([A-Z0-9-]+) ([A-Za-z0-9.-]*)$
概念図
putty
console
aws iot create-keys-and-certificate --set-as-active \ --certificate-pem-outfile certs/certificate.pem.crt \ --public-key-outfile certs/public.pem.key \ --private-key-outfile certs/private.pem.key \ --region us-west-2
/Library/WebServer/Documents/ がlocalのルートになる。
sudo vi /private/etc/apache2/httpd.conf で、
#LoadModule php* のコメントを削除し、apache再起動で、phpが動くようになる。
<?php $params = array( 'apiKey' => 'API key', 'projectId[]' => 'project id', 'statusId' => array(1 => 1, 2 => 2, 3 => 3, 4 => 4), 'sort' => 'updated', 'count' => 100, ); $url = 'https://{$hoge}.backlog.com/api/v2/issues?'.http_build_query($params, '','&'); $headers = array('Content-Type:application/x-www-form-urlencoded'); $context = array( 'http' => array( 'method' => 'GET', 'header' => $headers, 'ignore_errors' => true, ) ); $response = file_get_contents($url, false, stream_context_create($context)); $json = mb_convert_encoding($response, 'UTF8', 'ASCII,JIS,UTF-8,EUC-JP,SJIS-WIN'); $json = json_decode($json, true); echo "<pre>"; var_dump($json); echo "</pre>"; ?>
複数projectなら、こんな感じで書く。
'projectId' => array(42107 => 42107, 42116 => 42116),
$jsonは連想配列で返ってくる。
foreachでいってみよう!
foreach($json as $value){ echo $value["issueType"]["name"] ." ".$value["issueKey"]." ". $value["summary"]." " .$value["assignee"]["name"]. " ".$value["status"]["name"]." ".$value["priority"]["name"]."".$value["created"]." ".$value["dueDate"]." " .$value["updated"]." ".$value["createdUser"]["name"]."<br>"; }
うお。
tableで表示したい。その前に、日付フォーマット。date(‘m/d’, strtotime($value[“created”]))とする。
foreach($json as $value){ echo $value["issueType"]["name"] ." ".$value["issueKey"]." ". $value["summary"]." " .$value["assignee"]["name"]. " ".$value["status"]["name"]." ".$value["priority"]["name"]."".date('m/d', strtotime($value["created"]))." ".date('m/d', strtotime($value["dueDate"]))." " .date('m/d', strtotime($value["updated"]))." ".$value["createdUser"]["name"]."<br>"; }
うお、nullだと01/01になる。。冗長だが。。
foreach($json as $value){ if(!is_null($value["dueDate"])){ echo $value["issueType"]["name"] ." ".$value["issueKey"]." ". $value["summary"]." " .$value["assignee"]["name"]. " ".$value["status"]["name"]." ".$value["priority"]["name"]."".date('m/d', strtotime($value["created"]))." ".date('m/d', strtotime($value["dueDate"]))." " .date('m/d', strtotime($value["updated"]))." ".$value["createdUser"]["name"]."<br>"; } else { echo $value["issueType"]["name"] ." ".$value["issueKey"]." ". $value["summary"]." " .$value["assignee"]["name"]. " ".$value["status"]["name"]." ".$value["priority"]["name"]."".date('m/d', strtotime($value["created"]))." "." "." " .date('m/d', strtotime($value["updated"]))." ".$value["createdUser"]["name"]."<br>"; } }
1. APIキーを取得
Backlogログイン -> 個人設定 -> API -> 新しいAPIキーを設定 -> APIキー発行
2. spaceIdを確認
https://{$spaceID}.backlog.com/
3. 課題の種別のID
https://{$spaceID}.backlog.com/ListIssueType.action?projectId={$課題の種別のID}
string(66) “{“errors”:[{“message”:”Not Found Space.”,”code”:6,”moreInfo”:””}]}”
スペースがない!?
https://hoge.backlog.jp/api/v2/issues?
よくみたら.jp ではなく、.com ならいけますな
https://hoge.backlog.com/api/v2/issues?
wget -O test.tar.gz https://github.com/livedoor/datasets/blob/master/ldgourmet.tar.gz?raw=true[vagrant@localhost embulk]$ ls
test.tar.gz
[vagrant@localhost embulk]$ tar xvfz test.tar.gz
areas.csv
categories.csv
prefs.csv
ratings.csv
rating_votes.csv
restaurants.csv
stations.csv