PLAID Engineer Blog

PLAID Engineer Blog


PLAID Engineer Blog

ストリーム処理を1からKappa Architectreまで学ぶ

エンジニアの @mkataigi です。ついにエンジニア定年説の定年を迎えましたが、まだまだバリバリのエンジニアをやってくつもりでおります。 KARTEをシステムの側面から見た場合、大量のイベントデータという、いわゆる「ストリームデータ」を処理するシステムになります。今回は、KARTEの成り立ちを理解するために、そもそもストリームデータとは何者なのか、ストリームデータはどのような特性を持っていて何が大変なのかを理解して、ストリーム処理ではその大変さについてどのようにアプローチしてきたのか、そのシステムの発展について解説してみたいと思います。 ストリームデータを理解する まずシステムの説明に入る前に、そもそもストリームデータとは何なのかについて理解していきたいと思います。ま…

Makoto KataigiMakoto Kataigi

MicrosoftのNapa.jsでJavaScriptをマルチスレッド化する

こんにちは、プレイドの @makinoy です。 久しぶりのBlog投稿です。書こうとして止めていた記事はひとまず置いといて今回新しく一つ記事を書くことにしました。 テーマはNapa.jsを使ってJavaScriptでmulti-threadingをやってみる、です。 背景 フロントエンドからバックエンドまで含めて考えると、KARTEのコードの大部分はJavaScriptで書かれています。その理由の大半は、特にフロントエンドよりの話が多く、Angular.js, React.js, Vue.jsに代表されるWebフレームワークの著しい発展や、V8のパフォーマンスの進化、Node.jsやNPMなどその周辺のモジュールのエコシステムの充実が大きいと思います。 KARTE的には…

Yuki MakinoYuki Makino

express-graphql + vue-apollo で GraphQLを試してみた

こんにちは。エンジニアの@elcih17です。 この記事を書いた頃はインターンでしたが、現在は新卒エンジニアとして日々奮闘しています。 最近、APIの設計に関することを調べていたら「GraphQL」という言葉をよく見かけました。 API用の技術として注目されているそうで、REST APIの次のパラダイムだという意見もあるようです。 どんな技術なのかとても気になりHOW TO GRAPHQLのチュートリアルと簡単な実装をしてみたら、なんとなくGraphQLのことがわかったので書いてみます。 実装例 バックエンド (express-graphql) graphql-server フロントエンド (vue-apollo) vue-apollo-example GraphQL と…

Hideyuki OkadaHideyuki Okada

CodeZineで、解析サービスの裏側とGCPについて連載はじめました

こんにちは、お久しぶりです、プレイドの @makinoy です。ブログ記事を書こう書こうと思い、2,3記事下書きを残しながらも、最後まで書き終えられていません。 そんな中、今日からPLAIDエンジニア陣でCodeZineで連載をはじめまして、ブログを書かずに連載の第一回の記事を書いてしまいました。そのうち、またブログの記事を書きたいと思います。 今回の連載は、”大規模解析サービスを支えるGCP活用事例”というタイトルで、GCPの利用例を中心に大量のデータをリアルタイムに捌くKARTEの裏側の話が中心です。 第一回の今回は、GCPがどういう役割を果たしているかという全体的な話を”大規模データ解析サービス実現のために、Google Cloud Platformが果たす役割”と…

Yuki MakinoYuki Makino

Chromeデベロッパーツールに独自機能を追加する6つのステップ

こんにちは、PLAIDのエンジニアの池上 a.k.a. gami(@jumpei_ikegami) です。 好きなブキは、「プロモデラーMG」です。 さて今回は、仕事で調査用の「Chrome拡張機能」を作ったので、「Chromeデベロッパーツール」に「独自ツール」を追加するための手順について紹介したいと思います。 Chromeデベロッパーツール、使っていますか? 弊社では、「KARTE」というサービスを開発しています。 「KARTE」の主な機能として、サイトにJavaScriptのタグを埋め込んでもらい、サイト上からユーザーの行動履歴や属性情報を取得し、それに応じたコンテンツをサイト上に配信するというものがあります。 しかし、「KARTE」の「タグ」が正しく設置されていな…

Jumpei IkegamiJumpei Ikegami