HBase

【Team & Project】LINEのMessaging Server開発業務、Apache Kafkaプラットフォームの開発・運用をしているチームを紹介します

LINEの開発組織のそれぞれの部門やプロジェクトについて、その役割や体制、技術スタック、今後の課題やロードマップなどを具体的に紹介していく「Team & Project」シリーズ。
今回は、LINEのMessaging Server開発業務、Apache Kafkaプラットフォームの開発・運用をしているチームについて紹介します。Z PartチームのWonpill Seo、井出真広、Javier Luca de Tena、河村勇人に話を聞きました。

Z Partチームのzoom会議の様子

サマーインターンシップでHBaseをJDK 11で動かしZGCとの性能を評価してもらった話

こんにちは、LINEのメッセンジャーアプリのサーバサイドエンジニアをしている’18卒のエンジニアのbitter_foxです。この記事はLINE Advent Calendar 2018の18日目の記事です。
弊社では夏休みの1ヶ月間〜2ヶ月間、学生に実際の業務を体験してもらう就業型のサマーインターンシッププログラムを実施しております。 弊社の就業型インターンでは社内のチームにジョインし、ある程度大きめのプロジェクトに1ヶ月間〜2ヶ月間、取り組んでもらいます。
私の所属するチームでも今夏、学生を受け入れ、「HBaseをJDK 11で動かしZGCを評価する」というプロジェクトに1ヶ月間取り組んでもらいました。 本記事ではそのインターンシッププロジェクトの紹介をいたします。

HBase アプリケーションローカルテスティング

こんにちは、LINEでGame Platformを開発している 趙 です。LINEではHBaseを様々な場面で活用しており、今回はGame Platformでの利用例を紹介させていただきます。

LINE Game PlatformはHBaseをメインストレージとして利用します。私達が新規の機能開発時にHBaseを利用する場合、ローカル開発環境におけるユニットテストなどのアプリケーションテストは専用のリモートクラスターで実行されるHBaseに接続していました。リモートクラスターはHadoopアドミニストレータが構築、管理してくれます。チームメンバーとHBaseを使ったアプリケーションの数が増えるにしたがい、このテスト方式は以下に示す問題があり、不便に感じていました。

HBase Cross Row、Cross Tableトランザクション処理機能を実装してみました

こんにちは、LINEでGame Platformを開発している 趙 です。

この記事はLINE Advent Calendar 2016の9日目の記事です。

LINE Game Platformでは分散型でスケーラブルな高速データベースであるHBaseをメインストレージの一つとして使っています。HBase運用における問題のひとつは、cross row, cross tableトランザクション処理機能がない事です。Client Faultなどが起こった時の対応が難しいです。(例えば、HBaseにテーブルAとBがあり、ABの順番にデータを処理する場合、もしAの挿入の後にBの挿入に失敗した場合、データ不整合が起きます)

HBaseは幾つかの単行atomic apiを提供します。(HBase versionによって違うところがあります)