ポンコツ備忘録

日々の何かを忘れないように書いていきます

花澤香菜 live 2017 "Opportunity"を見に行ってきた!

4月15日に八王子のオリンパスホールで開催された花澤香菜 live 2017 "Opportunity"に参加してまいりました!

声優さんのソロライブは初めてでしたが非常に楽しめました!

 

花澤香菜 live 2017 "Opportunity"

ツアー概要はこちら

www.hanazawakana-music.net

 

今回,ツアー開幕のオリンパスホール八王子に参加してまいりました.

花澤香菜さんのライブもオリンパスホールも初,しかも生バンドで大好きな北川勝利さんがいるという,もう楽しみでしょうがなかったです.

 

ライブ!!

セットリストはこちらの方が上げてくださっていました.

ch.nicovideo.jp

 

開場時間になり入ってみると会場内に軽くスモークが焚かれていて,ステージには楽器のほかに階段と白い板がたくさん.

なんじゃコレ?と思いましたがバンドのディスティネーションズがスタンバイして1曲目のスウィンギング・ガールが始まると白い板にロンドンの町並みがプロジェクションマッピングされるというおしゃれな演出が.

花澤さんも白いドレスを着て階段から登場.めっちゃ可愛かったです.

 

ライブはセトリの通り新アルバムOpportunityを中心に進んでいき,途中2回ほど早着替えによる衣装チェンジが.

2着目は緑の上着でロンドンガールを意識したような服とのこと,3着目はピンク色のレインウェアのような衣装でどれもとても可愛かったです.

 

個人的には雲に歌えばが一番盛り上がって楽しかったです.

会場全体で振りをするという部分があったですが一体感があって非常に楽しい!

しかもホーンセクションのファイヤーホーンズの二人が振り完璧かつキレッキレでそっちに目が行っちゃうくらいでした.

今後参戦する方はぜひファイヤーホーンズの動きにも注目してみてください.

ダブルアンコールの星空☆ディスティネーションもボサノバっぽいアレンジで非常にノリが良く楽しめました.

最後にステージの白い板に花澤さんからのメッセージが出て最後の最後まで楽しませてくれました.

メッセージはぜひ会場で確認してくださいませ!

 

終わってみて,初めての花澤香菜さんのライブはあっという間の2時間でした.

生バンドをバックに花澤さんの可愛らしい声とウィスパーボイスを堪能できて最高の時間を過ごすことが出来ました.

宮城と大阪公演はまだチケットが残っているようですのでぜひ行ってみてはいかがでしょうか.

 

シンデレラガールズ 5thLIVE TOUR 静岡・幕張・福岡公演出演者来たね!

第2弾ですぞ

第1弾のチケットの当選発表もあり徐々に近づいてきているデレマス5thライブ.

CDも発売され第2弾の出演者も発表されましたので自分用にまとめます.

 

第1弾はこちら

shinogasa.hatenablog.com

 

静岡公演

日程

2017年6月24日(土)・25日(日)

会場

エコパアリーナ

収容人数:最大10000人

出演者

Cu

藍原ことみ(一ノ瀬志希役),髙野麻美(宮本フレデリカ役),高森奈津美(前川みく役),津田美波(小日向美穂役),牧野由依(佐久間まゆ役)

Co

青木志貴(二宮飛鳥役),青木瑠璃子(多田李衣菜役),嘉山未紗(脇山珠美役),長島光那(上条春菜役),村中知(大和亜季役)

Pa

黒沢ともよ(赤城みりあ役),原優子(向井拓海役),春瀬なつみ(龍崎薫役)安野希世乃(木村夏樹役)

  

幕張公演

日程

2017年7月8日(土)・9日(日)

会場

幕張メッセ イベントホール

www.m-messe.co.jp

 

収容人数:最大9000人

 3rdの時の国際展示場の方ではなくイベントホールです.

キャパはだいぶ小さくなって他の会場と同じくらいですね.

出演者

Cu

五十嵐裕美(双葉杏役),金子真由美(藤本里奈役),立花理香(小早川紗枝役),藤田茜(水本ゆかり役),三宅麻理恵(安部菜々役)

Co

福原綾香(渋谷凛役),今井麻夏(佐々木千枝役),佐藤亜美菜(橘ありす役),原田彩楓(三船美優役),ルゥ ティン(塩見周子役)

Pa

原紗友里(本田未央役),杜野まこ(姫川友紀役),山下七海(大槻唯役),佳村はるか(城ヶ崎美嘉役),和氣あず未(片桐早苗役) 

 

福岡公演

日程

2017年7月29日(土)・30日(日)

 

会場

西日本総合展示場 新館

 

収容人数:8000人ほど?

公式に収容人数が書いてありませんでしたが幕張メッセイベントホールよりも少し小さいので最大で8000人くらいになるのではないでしょうか.

福岡ということで交通費が厳しいなぁと思ったのですがLCCが飛んでいるようなので意外と安く行けるかもしれないですよ.

出演者

Cu

藍原ことみ(一ノ瀬志希役),大坪由佳(三村かな子役),下地紫野(中野有香役),高森奈津美(前川みく役),種崎敦美(五十嵐響子役)

Co

青木志貴(二宮飛鳥役),飯田友子(速水奏役),渕上舞(北条加蓮役),松井恵理子(神谷奈緒役),村中知(大和亜季役)

Pa

金子有希(高森藍子役),木村珠莉(相葉夕美役) ,高田憂希(依田芳乃役),春野ななみ(上田鈴帆役),山本希望(城ヶ崎莉嘉役)

 

曲予想

今回もユニットがバラけていて揃ってる所がありませんね.

逆にいろんな曲をやる可能性があって新たな一面を見つけることができそうで楽しみではありますが.

静岡では

  • Wonder goes on!! (みくにゃん,りーな,なつきち)
  • Jet to the Future (りーな,なつきち)

あたりが来そうですね.

珠美殿はサガン鳥栖コラボの青空エールとイベント曲の桜の頃しか無いので何を歌うのか今から楽しみですね.

 

幕張はゆかりさんと三船さんに注目したいですね.

今のところゆかりさんはあいくるしい,三船さんはTake me Take youと命燃やして恋せよ乙女を歌っていましたがメンバーが揃っていない状態で初披露が来てしまうのか.

ニュージェネが2人揃っていて3rdの会場の横なので,卯月がシークレットで来て流れ星キセキとかもいいですね.

 

福岡はついによしのんが出ますね!

ソロ曲歌ってしまうのか,はたまたイベ曲の桜の頃を歌うのか...

そして加蓮に奈緒と来たらトライアドプリムスの匂いがプンプンしますね.しぶりん乱入に期待です.

上田しゃんも地元凱旋ということでぜひサマカニで楽しませていただきたいですな.

 

今回は何枚積めば良いのか

前回私は21枚積んで宮城,石川,大阪とすべて1日づつ手に入れることが出来ました.

ある程度積んでいた人は全日程1日づつ手に入れることが出来ていたように感じます.

あくまで噂ですがめっちゃ積んでもそれぞれの公演で1日づつしか当たらないような仕様になっているのではないかという話が.

一人で重複当選がなくなるということはその分枠が分散しているので以前より当たりやすくなっているはず...

今回から身分証明書確認されるという話も出ていますので転売屋から買わず少し頑張って自力で当てていきましょう!

 

DynamoDBのテーブルから特定のアイテムを取得する

DynamoDB

皆さんご存知AmazonWebServicesの提供しているNoSQLマネージドサービス.
Lambdaでサーバーレスの外形監視ツールを作成していて,ステータスコード保存のためにDynamoDBを採用したら値の取得に癖があって結構詰まったので自分用にメモ.

コンソール

テーブル

値を入れているテーブルはこんなかんじ.
f:id:Shinogasa:20170222155639p:plain:w500

ツリー形式だとこんな感じ

{
  "GitHub": "200",
  "Myblog": "200",
  "Time": "2017/2/22  14:52:00",
  "Twitter": "200"
}

実装

ブラウザ上で取得したデータを表示したかったのでJavaScriptです.
html側かJSのソース内でaws-sdkを読み込んでいないとDynamo使えません.
また,今回は直接DyanmoにアクセスするためにAPI GatewayではなくCognitoを使っています.
ソースがスパゲッティ気味なのはご愛嬌.

ソース

getFromDynamo.js

//Cognito設定
AWS.config.region = 'ap-northeast-1';
AWS.config.credentials = new AWS.CognitoIdentityCredentials({IdentityPoolId: Cognitoから持ってきたIDを入れる});
AWS.config.credentials.get(function(err) {
    if (!err) {
        console.log('Cognito Identify Id: ' + AWS.config.credentials.identityId);
    }
});

const db = new AWS.DynamoDB.DocumentClient();

//DynamoDBの設定
const table = "TestTable";
const keys = "2017/2/22 14:00:00";
const param = {
    TableName : table, 
    KeyConditionExpression: '#ct = :val',
    ExpressionAttributeNames:{
        "#ct": "Time"
    },
    ExpressionAttributeValues:{
        ":val": keys
    }
};

//Dynamoからデータ取得
function getData(keys){
    console.log('2 inside dynamodata')
    return new Promise(function(resolve,reject){
        db.query(keys,function(err,data){
            if(err){
                console.error('エラーですね:' + err);
                reject(err);

            } else {
                const jsonData = JSON.stringify(data,null,4);
                console.log('成功したみたい:' + jsonData);    
/*
                成功したみたい:{
                    "Items": [
                        {
                            "Twitter": 200,
                            "MyBlog": 200,
                            "Time": "2017/2/22 14:00:00",
                            "GitHub": 200
                         }
                     ],
                     "Count": 1,
                     "ScannedCount": 1
                 }
*/
                resolve(data);   
            }
        });
    });
}

//実行
getData(param)
    .then(function(result){
        console.log(result);
        //時々返ってきたjsonがそのまま使えない時があるのでJSON.paeseしてやる
        //const jsonItems = JSON.parse(result);
        console.log(result.Items[0].MyBlog);
        //200
    });       

Cognito

認証のやつ.
ぶっちゃけそこまで理解していない.難しい.
コレを入れてるとセキュアにAWSのサービスにアクセスできるらしいけどしっかり調べていないので今後の課題.

最上段に設定してあるCognitoのIdentityPoolIDは下記から持ってくる.

Cognito -> Manage Federated Identities -> 作成してあるIdentity pool選択 (Identyty poolが無い場合はCreate new identity poolから作る) -> Sample code -> Get AWS Credentials

f:id:Shinogasa:20170222160907p:plain:w500

DynamoDBまわり

DynamoDBを使うにはAWS.DynamoDBで大丈夫なのですがそのままだと非常に使いにくいので AWS.DynamoDB.DocumentClientを使っております.
普通に使うと色々指定が多くて面倒なところを色々簡単にしてくれる素敵なクラス.
詳しくは公式ドキュメントで.

パラメータ

パラメータの指定も結構癖があって値をそのまま書けず,一度プレースホルダーに書いてやる必要があるみたい.

  • TableName - テーブル名
  • KeyConditionExpression - プライマリキーでの検索定義
  • ExpressionAttributeNames - 属性名のプレースホルダー
  • ExpressionAttributeValues - 値のプレースホルダー

今回はqueryで検索していますがscanでも検索できます.
queryだとプライマリキーの指定が必須になります.
scanだとプライマリキーの指定は必要ないみたいですが,テーブルをすべてスキャンなのでqueryより時間がかかるのかな?
状況に応じて使い分けしていく必要がありそう.

子要素へアクセス

JSONで返ってきているのでドットつなぎで指定してやればOK.
ただし返ってきたItemが1つでも result.Items[0].MyBlog と指定してやらねばundefindって怒られるので注意.

その他

今回はコメントアウトして使用していないのですが,
私の組んでいたプログラムでは返ってきた値をJSON.parseしてやらないと
うまく子要素までアクセス出来ないということがありました.

返ってきた値を別の関数に渡したりしていたので渡す際にJSON形式から変わってしまったのかなと.

意外とDynamoDBに関する情報の殆どが公式ドキュメントという中,
素晴らしき先人たちの資料によってなんとかDynamoで要素を取得できました.
NoSQLってなかなか難しいですね.

あとJSの非同期がすごい難しいです.
Promise.thenしまくりですよ....

参考

Amazon DynamoDB 入門ガイド

AWS SDK for JavaScript

Node.js+Dynamo DBでレコードを検索する

AWS LambdaからDynamoDBをQueryする