とあるIT屋の独白

ITや経営について主に書きます

NoSQLとRedisを調べてみた

以前に本ブログで簡単にですが、NoSQLについて書いてみましたが、
http://toaruit.hatenablog.com/entry/2017/04/16/143726
その後、実際に本を読んでみたり、触ってみたりしたのでそのことについて書いてみたいと思います。

最近、読んでみた本は下記の「RDB技術者のためのNoSQLガイド」で、様々なNoSQLのプロダクトを紹介および比較等の紹介を行なっています。

RDB技術者のためのNoSQLガイド

RDB技術者のためのNoSQLガイド

 

 一口にNoSQLといっても、キャッシュが主用途であるKVS(キーバリューストア)、JSON型でデータが保持できるドキュメントDB、経路情報を扱えるグラフDBがあります。もちろんRDBも含め、どの用途でどういったプロダクトを選択すべきか、といった点が整理できてないと中々そのプロダクトの良さが感じられないのかなと本を読んで感じました。

さて、私の現場ではKVSとしてRedisを使用していて、その内容について少し紹介したいと思います。Redisの用途としては、データの一時キャッシュとなっていてRDB等に蓄積されたデータの参照用として使っています。概要やどのようなデータ型が使えるかなどは、下記のスライドにまとめられています。

【Redisの特徴と活用方法について】
https://www.slideshare.net/yujiotani16/redis-76504393

そして、サーバをCluster化して使いたいと言う場合のライブラリとして、いくつか用意されています。下記の記事ではjedisのサンプルコードが紹介されています。

【Redis ClusterをJavaで使ってみる】
https://qiita.com/uryyyyyyy/items/442e83fe3136931e1931

PMP(Private Market Place)とは

以前に本ブログで紹介した、アドベリフィケーションの取り組みにある通り、
http://toaruit.hatenablog.com/entry/2018/11/02/220609
Web広告における配信先の選定というのは、効果を出す上で重要なポイントとなっています。不特定多数のサイトに広告を配信する仕組みは、認知度を上げるという点では効果があるものの、品質を担保するという点では工夫が必要であるかなと感じます。

そんなWeb広告の配信ですが、最近ではPMP(Private Market Place)という、ある程度選定されたサイトのみに配信するという取り組みがされています。概要は下記の記事で紹介されていますが、不特定多数のサイトにオークション形式で広告を配信する仕組みがオープンオークションと呼ばれているのに対し、PMPのような限定された枠でオークションを行う形式をプライベートオークションといいます。

【デジタル広告 まるわかり ! RTB と PMP って何?】
https://www.spinno.com/blog/archives/4034

PMPに関するより詳細な内容は、下記の記事で紹介されています。PMPの中にはオークション形式を採用せず、固定価格で入札するものがあったりします。その分、オープンマーケットでやり取りされる価格よりも、高価格となる傾向があるそうです。


PMP(プライベートマーケットプレイス)の仕組みと特徴】
https://dmlab.jp/adtech/pmp.html

日本の働き方や格差について考えてみる

以前にも本ブログで働き方改革について取り上げましたが、
http://toaruit.hatenablog.com/entry/2017/11/04/125902

今回は各企業の取り組みというよりは少し視点を広げ、日本全体で現状の働き方はどのようになっているか、少し考えたいと思います。
まずは下記の記事を紹介。徐々に働き方が柔軟となっているとはいえ、まだまだ日本では正社員という働き方が一番無難な選択肢とみられていて、非正規やフリーターの選択肢は正社員と比べて格差があるという認識をされています。

格差社会を生きる厳しさ、31文字に 共感広がる平成の「社会詠」】
https://withnews.jp/article/f0180722000qq000000000000000W05910101qq000017667A

下記の記事では日本では、まだまだ働き方の多様性に対して「認める」ということが足りないのでは、と指摘しています。海外の他の国と比べて、日本は閉じた環境であるということにもふれられています。

【日本人の働き方が「時代遅れ」である根本理由】
https://toyokeizai.net/articles/-/216151?display=b

法律などの制度を整備するのも大事ですが、我々一人一人がもっと価値観の異なる人を認めていくのも日本の職場環境において大事なのではと感じます。以前に本ブログでも紹介した、インクルージョンのような考えなどが参考になると思います。
http://toaruit.hatenablog.com/entry/2016/04/10/215438

スパースモデリングとは

今やIT関係の話題でAIは、トピックが出ない日はないのでは、ってくらい取り上げられますね。AIを実現する上で、コアとなる技術は機械学習で、今みなさんが在籍している会社でも試してみたりされているかもしれません。
機械学習を行う上では大量の教師データが必要と言われていますが、中々そのデータを集めることが難しかったりします。データが集まらないということには、機械学習で成果を出ないんじゃないか、と思ってしまいますが、今回紹介するスパースモデリングという方法もあったりします。スパースモデリングは、与えられたパラメーターの重み付けを0にするなど条件付けして、データが少なくても結果がだせるような仕組みにしていましす。

 

【「ITエンジニアのためのスパースモデリング入門」連載一覧】
https://codezine.jp/article/detail/10957

もう少し細かい仕組みについては、以下のQiitaの記事にまとめられています。スパースモデリングは、パラメーターの自動選定をしてくれる、ただそのためには特徴量の候補を事前に用意する必要がある、というのがポイントですね。

【スパースモデリング (1) 特徴量と冗長な辞書】
https://qiita.com/mnagahara/items/183899ec334247ec7af6

タイアップ広告とは

タイアップ広告というものを、聞いたことがある人は多いと思います。タイアップという言葉はけっこういろいろなところで使われていて、本来的な意味合いとしては協力・提携や結びつき、といった意味になります。

 

【「タイアップ」とは?ビジネスの使い方とコラボとの違いも解説!】
https://biz.trans-suite.jp/4551

タイアップ広告については、上記の記事で少し紹介されている通り、企業の商品を紹介する記事やコンテンツのことを指すことが多いです。例えば、具体的なコンテンツとしては下記のYahoo特別企画などが挙げられます。

Yahoo! JAPAN 特別企画 - しなやか血管講座】
https://promotion.yahoo.co.jp/calpis_nenrei/

 

さて、そんなタイアップ広告でありますが、もちろんメリデメがあります。下記の記事にまとめられていますが、主なメリットは掲載されるメディアの知名度を活かせるので人目につきやすいという点と、デメリットとしては費用が高くなりやすいといったものが挙げられています。

【記事広告・タイアップ広告ってなに?分かりやすく解説】
https://digitalidentity.co.jp/blog/ad/tieup-kiji.html

 

タイアップ広告はメディア側にとっても、収益源の一つとなります。その効果の把握のために下記の記事の通り、ネイティブ広告のプラットフォームを提供しているログリー社が、分析を行うツールなんかも提供しています。


【ログリー、「Loyalfarm」の効果計測機能を拡充 第一弾として消費者データとの連携を開始】
https://markezine.jp/article/detail/29225

ネットでの行動やスキルの発信が評価される時代

以前に本ブログで、信頼とその対価について書きましたが、
http://toaruit.hatenablog.com/entry/2018/07/21/154333

今回は似たようなテーマで、個人がいかに評価されていくか、という点について取り上げてみたいと思います。
まず、紹介したいのは下記の記事で最近だとネットショッピングの購買履歴やgoogleなどの検索履歴、SNSの発信履歴を加味して、信用度をスコアリングするサービスが出てきています。

評価経済社会到来!日々の行動が可視化されスコアリングされる時代へ】
https://www.jscore.co.jp/column/fintech/2017/evaluation_economy/

我々が、実生活で行う仕事や購買に加えて、ネット上での行動や発信についても評価の対象として取り上げられてきています。自分が仕事して得た評価や収入は大事なものですが、それにプラスアルファとして個人のスキルや行動の表現が求められてくる時代なのかなと感じます。
下記にそれを体現している最近話題のプロ無職の、るってぃさんの記事があります

【人間関係をベースにお金がまわる時代が来る。プロ無職・るってぃが予想する「消費の未来」】
https://r25.jp/article/586424226803403211

まずは、ネットを活用して自分という人間やスキルを知ってもらう。そこからついた自分のファンに得意なことをシェアして、ギブ&テイクみたいな関係を築くというのが今後の生き方の一つと感じました。

Apache Kafkaとは何か

最近、仕事でApache Kafkaを触ることになって、その内容についてメモ書きですが今回書いてみたいと思います。
まずKafkaとはなんぞやという話ですが、一言でいうとデータ(メッセージ)のブローカーです。下記の記事に分かりやすくまとめられています。

Apache Kafka ―入門からTrifectaを用いた可視化まで―】
https://qiita.com/travelist/items/06ccf4859620d244026

実際に私が今いる現場では、Webサーバにアクセスされるログの中継です。最終的にログは集計してレポーティングするのですが、リアルタイムでどんどん溜まるログをすぐに集計するのは困難なので、一回Kafkaをはさんでから一定時間の単位で集計するという形です。
さて、もう少し細かい仕様などは下記の記事にまとめられています。メッセージはTopicと呼ばれるデータの形式を定めたものを介して、Producer(出力側)とConsumer(受取側)でやりとりします。このデータのやり取りをする際のブローカーの処理が高速であることも、kafkaの特徴として挙げられています。

Apache Kafkaに入門した】
https://deeeet.com/writing/2015/09/01/apache-kafka/

最近だとAWSでkafkaが使えるサービスが、発表されたそうです。AWSでも独自のブローカーサービスはあるそうですが、kafkaを使っているデベロッパーが圧倒的だそうで今回対応したとのこと。


AWSがマネージドKafkaサービスをローンチ、難しいセットアップや管理からデベロッパーを解放】
https://jp.techcrunch.com/2018/11/30/2018-11-29-aws-launches-a-managed-kafka-service/