In the first half, we give an introduction to modern serialization systems, Protocol Buffers, Apache Thrift and Apache Avro. Which one does meet your needs?
In the second half, we show an example of data ingestion system architecture using Apache Avro.
This document provides information about an AWS webinar on AWS Step Functions hosted by Yuta Imamura from Amazon Web Services Japan. The agenda includes an overview of Step Functions, state machines, data input and output, describing states, checking execution status, and additional details. Step Functions allows orchestrating distributed applications and microservices using state machines defined in Amazon States Language (ASL). States can pass data and parameters between each other to synchronize processes.
This document discusses messaging queues and platforms. It begins with an introduction to messaging queues and their core components. It then provides a table comparing 8 popular open source messaging platforms: Apache Kafka, ActiveMQ, RabbitMQ, NATS, NSQ, Redis, ZeroMQ, and Nanomsg. The document discusses using Apache Kafka for streaming and integration with Google Pub/Sub, Dataflow, and BigQuery. It also covers benchmark testing of these platforms, comparing throughput and latency. Finally, it emphasizes that messaging queues can help applications by allowing producers and consumers to communicate asynchronously.
In the first half, we give an introduction to modern serialization systems, Protocol Buffers, Apache Thrift and Apache Avro. Which one does meet your needs?
In the second half, we show an example of data ingestion system architecture using Apache Avro.
This document provides information about an AWS webinar on AWS Step Functions hosted by Yuta Imamura from Amazon Web Services Japan. The agenda includes an overview of Step Functions, state machines, data input and output, describing states, checking execution status, and additional details. Step Functions allows orchestrating distributed applications and microservices using state machines defined in Amazon States Language (ASL). States can pass data and parameters between each other to synchronize processes.
This document discusses messaging queues and platforms. It begins with an introduction to messaging queues and their core components. It then provides a table comparing 8 popular open source messaging platforms: Apache Kafka, ActiveMQ, RabbitMQ, NATS, NSQ, Redis, ZeroMQ, and Nanomsg. The document discusses using Apache Kafka for streaming and integration with Google Pub/Sub, Dataflow, and BigQuery. It also covers benchmark testing of these platforms, comparing throughput and latency. Finally, it emphasizes that messaging queues can help applications by allowing producers and consumers to communicate asynchronously.
M20_Azure SQL Database 最新アップデートをまとめてキャッチアップ [Microsoft Japan Digital Days]日本マイクロソフト株式会社
Microsoft MVP for Data Platform
小澤 真之 氏
本セッションでは、SQL Server ベースの PaaS である、Azure SQL Database の直近で発表されているアップデートをまとめてご紹介させていただきます。
Azure SQL Database は進化を続けており、新しい機能も次々と追加されています。この機会にぜひ、最新の情報をお持ち帰りください。
【Microsoft Japan Digital Daysについて】
Microsoft Japan Digital Days は、お客様が競争力を高め、市場の変化に迅速に対応し、より多くのことを達成することを目的とした、日本マイクロソフトがお届けする最大級のデジタル イベントです。4 日間にわたる本イベントでは、一人一人の生産性や想像力を高め、クラウド時代の組織をデザインするモダンワークの最新事例や、変化の波をうまく乗り切り、企業の持続的な発展に必要なビジネスレジリエンス経営を支えるテクノロジの最新機能および、企業の競争優位性に欠かせないクラウド戦略のビジョンなどデジタル時代に必要な情報をお届けいたしました。(2021年10月11日~14日開催)
Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!Yoichi Kawasaki
Web App for Containers は、アプリスタックのホストに Docker コンテナーを使用するため皆さんが今Linux上で利用しているOSSベースのアプリもアプリスタックごとDockerコンテナ化することでそのまま Web App for Containersで利用することができます。本ウェビナーでは簡単なMySQL + Ruby on Rails アプリ を題材に、アプリをコンテナ化し Web App for Containersにデプロイするまでの一連の流れを解説し、CIツールを使った継続的なデプロイ方法についてご紹介します。今回、AzureのフルマネージドMySQLサービスであるAzure DB for MySQLを利用して完全マネージドな環境でのアプリ実行を実現します。
Now a days, thousands of database are supporting many kind of Rakuten's services. and it is hard to manage many databases well. especially, backup and restore.
so, we are progressing new backup system for our databases.
I am going to share some know-hows and experiences that have been acquired with you
JJUG CCC 2018 Fall was held in Fukuoka on December 15th. The event featured talks about LINE KYOTO, Java, DateTimeFormatter, JavaDoc, Java generics, and LINE Growth Technology. LINE Growth Technology aims to help LINE grow through technology.
This document discusses replacing RxJava with Kotlin Coroutines for asynchronous programming. It provides an overview of RxJava and Coroutines, compares their approaches, and shows how to write asynchronous code using Coroutines instead of RxJava. It also discusses how to integrate Coroutines with Retrofit and the MVVM pattern.
Use Kotlin scripts and Clova SDK to build your Clova extensionLINE Corporation
The document discusses using Kotlin scripts to create a Clova client. It shows how to evaluate Kotlin code from a script using a ScriptEngine to define a Clova client configuration with launch, intent, and session ended handlers. The Clova client created in the script can then be used to handle Clova requests and responses.
LINE Shopping provides an e-commerce platform in Taiwan. It has over 9 million monthly visitors, a 40% repurchase rate, and lists over 26 million products from over 1,300 brands. The document discusses how to test the LINE Shopping platform, including unit, API, and UI tests. It also describes tools like Just-API and Pyresttest that can be used to test GraphQL and REST APIs respectively using YAML configuration files.
This document discusses automating Google Analytics (GA) testing for LINE TODAY. It proposes using Robotframework with Appium to simulate user actions in the LINE app and confirm that GA events are recorded correctly. It provides details on initializing the GA Reporting API to retrieve reports and examples of dimensions, metrics, and sample report requests. Code snippets demonstrate how to set up a service account and get credentials to access the GA Reporting API. The goal is to test new features for side effects and avoid human errors by automating the process of validating GA events.
This document provides an overview of UI automation testing with JUnit 5. It introduces the JUnit 5 framework, including its architecture, annotations, extension model, parameter resolver, and life cycle. It also discusses how to configure JUnit 5 in Gradle projects. Additionally, it briefly mentions other tools that can be used for UI testing, such as Appium, Ayachan, Ayavue, and image recognition libraries. The document aims to help people understand and get started with JUnit 5 for UI test automation.
The document summarizes a test night event held by LINE Fukuoka to discuss UI test automation. The event covered testing browser, iOS, and Android applications using Selenium for browsers and Appium for mobile. Attendees learned about template matching and feature detection techniques for UI testing, including pixel-perfect template matching versus feature detection which is scale invariant and can match elements that are 30-200% different in size. The techniques discussed were demonstrated using A-KAZE feature detection with OpenCV3 in Java.
This document proposes building a LINE app that provides a customized interface for the LINE TODAY news service using web views. It discusses three versions of the app with increasing features:
v1.0 uses customized web views for all pages except onboarding and login. v2.0 adds easier navigation with a bottom navigation bar. v3.0 enhances video with native video pages and a player. The document also discusses using Apache Kafka to build secondary indices for the app's database to enable features like retrieving a user's past posts.
This document discusses using a LINE registration chatbot for an event. The chatbot allows registration, check-in, and provides information about event activities online or offline. Users can access the chatbot through the LINE app on their mobile device or desktop website. It uses technologies like beacons, QR codes, and rich menus to enable simple registration and check-in as well as interact with information booths at the event.
This document introduces a managed Kubernetes as a service (KAAS) that provides concise summaries in 3 sentences or less that provide the high level and essential information from the document. The KAAS addresses problems with different tooling, versions, and configurations across clusters by providing a standardized Kubernetes platform. It aims to reduce operation costs and improve quality by ensuring high availability, performance optimization, and private cloud integration. The KAAS leverages Rancher for declarative operations and integrates custom controllers to enable load balancing, persistent storage, and other private cloud services within Kubernetes clusters.
This document discusses DevOps practices for software testing. It emphasizes the importance of continuous testing throughout the development lifecycle to reduce risk and ensure new features do not break existing functionality. Testing approaches like unit testing, integration testing, and automation are recommended to support faster release cycles and more agile workflows. The document concludes by advertising open roles for QA engineers.
This document discusses LINE's plans to introduce a token economy using its own cryptocurrency called LINK. It proposes that LINK can help evolve the relationship between users and services by creating a global platform not restricted by national borders. The three key aspects of the LINK ecosystem are that it will use a single token for all dApps and services, LINK tokens will be issued as rewards for contributions to the ecosystem, and LINE will offer a blockchain platform called LINK Chain to make dApp development and use more user-friendly. The goal is for LINK to facilitate a connected digital economy across LINE's various services and applications.
This document summarizes LINE Things, a platform that allows devices to connect and communicate through LINE using Bluetooth Low Energy (BLE). It discusses how LINE Things supports both online and offline devices. For offline devices, the LINE app acts as a proxy to allow communication between devices and services via BLE and web APIs. It also introduces LINE Things LIFF BLE, which allows BLE communication between devices and LIFF apps using the LIFF SDK BLE plugin. Developers can use LIFF BLE to easily build apps to read, write, and receive notifications from connected BLE devices.
1. LINE Pay is a digital wallet service that allows users to make payments and transfers between accounts without fees.
2. The service has over 17 million registered electronic payment cards.
3. Users can make transfers between LINE Pay accounts, split bills with groups of people, and pay for transportation, goods, services, and bills directly from their LINE Pay accounts.
The document summarizes new features and services released by LINE in 2018 to improve messaging experiences and build better bots and services. Key releases included Flex Messages, LIFF apps, quick replies, and video messages. It also discusses how developers can utilize social APIs, personalization, and audiences to engage and notify users.
12. データベース室 全体で17人
DBAについて
DB1 Team ・・Oracle, ElasticSearch
DB2 Team ・・ SQL Server
DB3 Team ・・MongoDB
BigDataPlatformTeam・・Hbase,Hadoop,Cubrid
MySQL
Redis
27. Real time QPS 情報
コネクション数
Com_xxx
Slow_logの数
Io_thread
SQL_thread
Second behind
master
等の情報を閲覧可能
統合管理ツール
28. 以下情報を定期的に収集し、表示
show engine innodb status
show processlist
show global variables
show global status
show slave status
MySQL Enterprise Backup や xtrabackupの履歴テーブル
データベースACL
統合管理ツール
34. 自動フェールオーバ(マスターダウン)
スレーブがスタンバイマスターにchange master
スタンバイマスターをread_only = off
スタンバイマスターにVIPに付与
手動フェールオーバも可能
MySQL バージョンアップ
HW障害 / サーバリプレース
インデックスやカラム追加
割と安定してるが、課題も多かった
MySQL HA
35. MySQL HA
課題
VIP枯渇問題
LINEのネットワーク設計の特性により、フェールオーバするサーバ間で物理
的制限がある
マルチソースレプリケーション未対応
最近要望が多い。。
指定した1台のスレーブのみマスター昇格可能
MHAのようにすべてのスレーブが昇格対象ではない。
スレーブの数が多いとフェールオーバが遅い
36. MySQL HA
現状の解決
VIP枯渇問題ー>○
DNS方式に改修することで、解決
マルチソースレプリケーション未対応ー>○
対応するように改修
指定した1台のスレーブのみマスター昇格可能ー>△
設定ファイルを自動で変更する
メンテナンスが大変。。HAソリューションの見直し時期!?
37. InnoDB Cluster
MySQL HA
Oracle推奨はMySQL RouterをAPサーバ
と相乗り
数千?数万?台のAPサーバにMySQL
Routerをインストール…
すべてのMySQL Routerの面倒を見るの
はちょっとつらい
38. MySQL HA
Group Replication + DNS or InnoDB Cluster + DNS
シングルプライマリーモードで運用
可用性はGroup Replicationで担保
マスターの切り替わりを監視するモニターを用意して、DNS Recordを切り替える
監視モニターにMySQL Routerを入れる
監視モニターがGroup Replication meta 情報をチェックする