SlideShare a Scribd company logo
1 of 52
Download to read offline
kintoneの
検索高速化への取り組み
サイボウズ大阪開発部
三苫 亮
2017/03/26
CAMPHOR-
自己紹介
三苫 亮(みとま りょう)
• @mitomasan
• サーバーサイドエンジニア
• Java, DB周りが好き
✋注意✋
本日のお話は、開発中のものです。
弊社サービス kintone に
(まだ)反映されていません。
今日のお話
kintoneであつかっている
スキーマ不定なデータを
Elasticsearch にのせて
検索を高速化するお話
お話のながれ
• データの格納のしかたや検索の方式について
• kintone で発生したパフォーマンスの問題について
• Elasticsearch の概要
• 対策の概要と結果・トレードオフ
• まとめ
データをデータベースに格納する
どんなデータを?
同級生の名簿?
名前
性別
学年
つながり
共通の趣味
ラーメン屋のリスト?
店名
住所 ジャンル
評価
売上伝票?
伝票番号
売上額
品名 単価
品名 単価
品名 単価
…
データの形はさまざま
スキーマという スキーマ=構造
データはそれぞれ構造を持っている
構造が事前にわかっているとシステムは処理しやすい
スキーマを定義して固定する
店名が天一で評価の高い
ラーメン屋が知りたいな
店名 住所 評価 …
天一 S
RDBMSの基本はスキーマ固定
友達テーブル
名前
連絡先
地元
構造を先に決めちゃう (=テーブルを定義する)
バイト先
エピソードテーブル
友達名
日時
エピソード
スキーマレスって知ってる?
• スキーマレスDBという言葉をよく聞くね
• つまり構造が無い
• ベースラインとする構造は
あるだろうけれど
それを逸脱するデータも許容する🙆
スキーマ不定なデータというのもある
• 構造が一定のままではないデータ
• 構造はあるけど、変わる
• その時点の構造に合わないデータは許容しない🙅
• スキーマレスとは似て非なる言葉
名前
性別
名前
性別
学年
名前
性別
職業
収入
イメージとしては… あくまでイメージね
• スキーマレス
• ぜ~んぶ連想配列/Map/Hashでやっちゃうよ~☺
• カウボーイっぽい世界観
• スキーマ不定
• 型定義はするんだけど、実行時に途中で型変えちゃうよ
• Rubyっぽい世界観
• スキーマ固定
• 実装時に型定義して、実行時に変更は許さないよ
• Javaっぽい世界観
スキーマ不定
どんな時に使われる?
• 構造をあらかじめ決められないとき
• 答えが決まっていなくてもとにかく始めたい
• とはいえ、決定している項目は系統だって検索・集計したい
• その時の必要に合わせて構造を変更したい
話は変わってkintone
• スキーマを自由に設計できるWebデータベース
(=システムの稼働中にテーブルにあたるものを定義する)
• スキーマ不定データが扱える
ドラッグ&ドロップで
データベースの項目を
設計・変更できる
でもkintoneのバックエンドはRDBMS
えっ!?
スキーマ不定のシステムなのに、
バックエンドはスキーマ固定の
RDBMSなんですか???
RDBMS
RDBMSでスキーマ不定データを扱う
RDBMSでスキーマ不定データを扱うアプローチは大きく4つ
• 構造写像アプローチ
• モデル写像アプローチ
• friendfeedアプローチ
• salesforceアプローチ
参考:http://dev.ariel-networks.com/Members/inoue/schemaless/
構造写像アプローチ
• データの構造を、RDBMS上に構築する
• つまり普通のデータベースと同じ
• メリット
• RDBMSの機能がそのまま使える
• パフォーマンス
• デメリット
• 構造を変更するとき(DDL発行時)に
トランザクションで保護できない場合がある
• インデックス戦略がアドホックになりがち
• データ種別の数だけテーブルが増える
ラーメン屋リスト
店名 住所 評価 …
モデル写像アプローチ
• データのモデルをRDBMS上に構築する
• メタプログラミング的
• メリット
• RDBMSのテーブル定義変更が不要
• ロックの粒度を小さくできる
• デメリット
• パフォーマンスはあまりよくない
• レコード数が縦に爆発
• よいインデックスを張るのが難しい
データテーブル
テーブル カラム 番号 データ
ラーメン屋リスト 店名
ラーメン屋リスト 住所
ラーメン屋リスト 評価
ラーメン屋リスト …
1
1
1
1
ラーメン屋リスト 店名
ラーメン屋リスト 住所
ラーメン屋リスト 評価
ラーメン屋リスト …
2
2
2
2
salesforceアプローチ
• 汎用的で巨大な構造を最初に定義
• 最初に100カラムとか用意しておく
• 検索用にインデックステーブル
• メリット
• RDBMSのテーブル定義変更が不要
• わかりやすい
• デメリット
• 空間効率(ディスク消費)が良くない
• 項目数に上限がある
データテーブル
テーブル 番号 C1 C2 C3 C4 C5 …
ラーメン屋リスト
ラーメン屋リスト
ラーメン屋リスト
…
インデックステーブル
テーブル 番号 インデックス値
× データ型の数だけ
1
2
3
ラーメン屋リスト 1
ラーメン屋リスト 2
ラーメン屋リスト 3
friendfeedアプローチ
• データをシリアライズして
1カラムに放り込む
• JSONみたいなイメージ
• 検索用にインデックステーブル
• メリット
• RDBMSのテーブル定義変更が不要
• Salesforceアプローチに比べて項目数
の制限が無い
• デメリット
• データ更新やシリアライズ・デシリアラ
イズのコストが大きい
データテーブル
テーブル 番号 データ
ラーメン屋リスト
ラーメン屋リスト
ラーメン屋リスト
…
{ …}
{ …}
{ …}
1
2
3
インデックステーブル
テーブル 番号 インデックス値
× データ型の数だけ
ラーメン屋リスト 1
ラーメン屋リスト 2
ラーメン屋リスト 3
kintoneはどのアプローチ?
friendfeedアプローチ
ちなみに命名元のfriendfeedというサービスは、今はもうない
こんな形の普通のテーブルだったら
どうやってデータを検索するの?
ラーメン屋リスト
店名 住所 評価 …
天一 S
…
SQLで書くとこんな感じ
SELECT *
FROM ラーメン屋リスト
WHERE 店名='天一' AND 評価='S'
{天一 S
friendfeedアプローチだとこうなる
データテーブル
テーブル 番号 データ
ラーメン屋リスト
ラーメン屋リスト
ラーメン屋リスト
…
{ …}
{ …}
…}
1
2
3
インデックステーブル
テーブル 番号 インデックス値
ラーメン屋リスト 1
ラーメン屋リスト 2
ラーメン屋リスト 3
インデックステーブル
テーブル 番号 インデックス値
ラーメン屋リスト 1
ラーメン屋リスト 2
ラーメン屋リスト 3
天一
S
{天一 S
店名が '天一'
データテーブル
テーブル 番号 データ
ラーメン屋リスト
ラーメン屋リスト
ラーメン屋リスト
…
{ …}
{ …}
…}
1
2
3
インデックステーブル
テーブル 番号 インデックス値
ラーメン屋リスト 1
ラーメン屋リスト 2
ラーメン屋リスト 3
インデックステーブル
テーブル 番号 インデックス値
ラーメン屋リスト 1
ラーメン屋リスト 2
ラーメン屋リスト 3
天一
S
{天一 S
店名が '天一' かつ評価が 'S'
データテーブル
テーブル 番号 データ
ラーメン屋リスト
ラーメン屋リスト
ラーメン屋リスト
…
{ …}
{ …}
…}
1
2
3
インデックステーブル
テーブル 番号 インデックス値
ラーメン屋リスト 1
ラーメン屋リスト 2
ラーメン屋リスト 3
インデックステーブル
テーブル 番号 インデックス値
ラーメン屋リスト 1
ラーメン屋リスト 2
ラーメン屋リスト 3
天一
S
{天一 S
店名が '天一' かつ評価が 'S'
データテーブル
テーブル 番号 データ
ラーメン屋リスト
ラーメン屋リスト
ラーメン屋リスト
…
{ …}
{ …}
…}
1
2
3
インデックステーブル
テーブル 番号 インデックス値
ラーメン屋リスト 1
ラーメン屋リスト 2
ラーメン屋リスト 3
インデックステーブル
テーブル 番号 インデックス値
ラーメン屋リスト 1
ラーメン屋リスト 2
ラーメン屋リスト 3
天一
S
番号=3のレコードが
目的のレコードであることがわかる
{天一 S
店名が '天一' かつ評価が 'S'
データテーブル
テーブル 番号 データ
ラーメン屋リスト
ラーメン屋リスト
ラーメン屋リスト
…
{ …}
{ …}
…}
1
2
3
インデックステーブル
テーブル 番号 インデックス値
ラーメン屋リスト 1
ラーメン屋リスト 2
ラーメン屋リスト 3
インデックステーブル
テーブル 番号 インデックス値
ラーメン屋リスト 1
ラーメン屋リスト 2
ラーメン屋リスト 3
天一
S
番号=3のレコードを取得する
SQLで書くとこんな感じ
SELECT データ FROM データテーブル
JOIN ●インデックステーブル
ON データテーブル.テーブル=●インデックステーブル.テーブル
AND データテーブル.番号=●インデックステーブル.番号
JOIN ●インデックステーブル
ON データテーブル.テーブル=●インデックステーブル.テーブル
AND データテーブル.番号=●インデックステーブル.番号
WHERE
データテーブル.テーブル = 'ラーメン屋リスト'
AND ●.インデックス値 = '天一'
AND ●.インデックス値 = 'S'
それって結構大変じゃない?
そう、大変。(SQLもパフォーマンスも…)
けど大丈夫!
kintoneは業務システムなのでデータ量は
多くとも数万件のオーダーで済むという前提があった☺
< 我々は非機能要件で保護されている!
前提の崩壊
うわー!
増
大
す
る
デ
ー
タ
湧き上がる問題
• データを検索するのに、何分も帰ってこない
• 検索のためのSQLが読みにくく、チューニングが大変
• チューニングのためにさらにSQLが膨れ上がったり
パフォーマンスと保守性の低下。
インデックス
テーブル
インデックス
テーブル
どこを直せばいい?
いままではこう。
②+③が遅く複雑なSQLになっている。
データテーブル
インデックス
テーブル①
④ ③
②
検索するぞ!
インデックス
テーブル
インデックス
テーブル
ボトルネックを潰すしかない
②に当たる部分を高速化するんだ!
データテーブル
インデックス
テーブル①
④ ③
②
遅いぞ!
なにくそ!
どうやればいいだろう?
問題点はJOINが大量にあるのが辛い・遅い
• JOINしないようにまとめたい
• まとめるとインデックスがうまく張れない
• ≒構造写像アプローチのデメリット
• データ量が膨大だとRDBMSでは
全項目のインデクシングは困難
Elasticsearch
• Elasticsearchとはなに?
• 様々なユースケースを解決する、
分散型RESTful検索/分析エンジンです。(本家サイトより)
Elasticsearchのいいところ
• 分散型
• 複数のノードからクラスターを構成する
• ノードを増やして性能を上げることが出来る
Cluster
Node Node Node Node
…
Elasticsearchのいいところ
• スキーマ(Mapping)を定義することができる
• スキーマをもとにした検索ができる
Index
Type
番号
店名
住所
評価
…
Type
名前
性別
年齢
趣味
地域
…
…
Elasticsearchのいいところ
• 全文検索ができる
• キーワード検索をおこなうことができる
• 'トンドル' で検索して '㌧㌦' も候補にあげることもできる
• すでにkintoneは全文検索エンジンのSolrも組み合わせて
使っており、それの置き換えにもElasticsearchを検討していた
Elasticsearchのいいところ
• 安定運用やセキュリティに力を入れている
• Java Security Manager
• 一部のモジュールだけに特権を制限している
• JarHell対策
• ライブラリやクラスの衝突により、実行時に誤動作すること
• Elasticsearchは起動時に衝突していないか検証している
• 起動時チェック
• ヒープサイズ・ファイルデスクリプタ・仮想メモリが十分か確認
• などなど、詳細はここをチェック!
• https://www.elastic.co/jp/blog/elasticsearch-the-server
でてきた解決策
• 検索はElasticsearchにまかせてRDBMSは
オリジナルデータの保存場所とする
• 堅牢さはRDBMSに一日の長がある
• ID指定によるデータ取得は
現状RDBMSでも遅くない
新しいアーキテクチャ
①
④
データテーブル
③
インデックス
②
同
期
発生するトレードオフ
• インデックスの更新が非同期
• RDBMS上のデータをもとにインデックスを更新するため
トランザクションが同一ではない。
なのでElasticsearchが検索で返した値と
RDBMSに入っているデータにズレが
発生する時間がある
①
④
データテーブル
③
インデックス
②
同
期
対策
• 同期が遅延しているかどうかを管理し、
遅延が発生している状況下では、
間違った検索結果を返してないか
プログラム側で再フィルタリングを行う
①
④
データテーブル
③
インデックス
②
同
期
遅延が発生してるな?
俺もフィルタリングや
ベンチマーク結果
• 2,000万件のレコードを
絞り込む時間がいまの実装に
比べて大幅に短縮できた!
※ kintoneの検索が改善できるかどうかという
観点で行ったベンチマークなので
RDBMSとElasticsearchの機材スペック差
などは公平ではありません
まとめ
• スキーマ不定なデータをRDBMSで扱う際の
主要なアーキテクチャを4つ紹介!
• kintoneではfriendfeedアプローチを採用してるよ
• このアプローチは大量データに向かない☹
• Elasticsearchという分析エンジンを活用して
検索を速くするアーキテクチャに置き換えたよ☺
• トレードオフがあり、それについては受け入れられる
レベルまでアプリケーションでフォローをしたよ
おしまい
やってやれないことはない
増
大
す
る
デ
ー
タ

More Related Content

What's hot

BigQuery で 150万円 使ったときの話
BigQuery で 150万円 使ったときの話BigQuery で 150万円 使ったときの話
BigQuery で 150万円 使ったときの話itkr
 
営業さんまで、社員全員がSQLを使う 「越境型組織」 ができるまでの3+1のポイント | リブセンス
営業さんまで、社員全員がSQLを使う 「越境型組織」 ができるまでの3+1のポイント | リブセンス営業さんまで、社員全員がSQLを使う 「越境型組織」 ができるまでの3+1のポイント | リブセンス
営業さんまで、社員全員がSQLを使う 「越境型組織」 ができるまでの3+1のポイント | リブセンスLivesense Inc.
 
グラフデータベース Neptune 使ってみた
グラフデータベース Neptune 使ってみたグラフデータベース Neptune 使ってみた
グラフデータベース Neptune 使ってみたYoshiyasu SAEKI
 
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)NTT DATA Technology & Innovation
 
異次元のグラフデータベースNeo4j
異次元のグラフデータベースNeo4j異次元のグラフデータベースNeo4j
異次元のグラフデータベースNeo4j昌桓 李
 
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...NTT DATA Technology & Innovation
 
Twitterのsnowflakeについて
TwitterのsnowflakeについてTwitterのsnowflakeについて
Twitterのsnowflakeについてmoai kids
 
マルチテナントのアプリケーション実装〜実践編〜
マルチテナントのアプリケーション実装〜実践編〜マルチテナントのアプリケーション実装〜実践編〜
マルチテナントのアプリケーション実装〜実践編〜Yoshiki Nakagawa
 
AWSではじめるMLOps
AWSではじめるMLOpsAWSではじめるMLOps
AWSではじめるMLOpsMariOhbuchi
 
SolrとElasticsearchを比べてみよう
SolrとElasticsearchを比べてみようSolrとElasticsearchを比べてみよう
SolrとElasticsearchを比べてみようShinsuke Sugaya
 
Amazon SageMakerでカスタムコンテナを使った学習
Amazon SageMakerでカスタムコンテナを使った学習Amazon SageMakerでカスタムコンテナを使った学習
Amazon SageMakerでカスタムコンテナを使った学習西岡 賢一郎
 
Fess/Elasticsearchを使った業務で使える?全文検索への道
Fess/Elasticsearchを使った業務で使える?全文検索への道Fess/Elasticsearchを使った業務で使える?全文検索への道
Fess/Elasticsearchを使った業務で使える?全文検索への道Shinsuke Sugaya
 
Databricksを初めて使う人に向けて.pptx
Databricksを初めて使う人に向けて.pptxDatabricksを初めて使う人に向けて.pptx
Databricksを初めて使う人に向けて.pptxotato
 
強いて言えば「集約どう実装するのかな、を考える」な話
強いて言えば「集約どう実装するのかな、を考える」な話強いて言えば「集約どう実装するのかな、を考える」な話
強いて言えば「集約どう実装するのかな、を考える」な話Yoshitaka Kawashima
 
アサヒのデータ活用基盤を支えるデータ仮想化技術
アサヒのデータ活用基盤を支えるデータ仮想化技術アサヒのデータ活用基盤を支えるデータ仮想化技術
アサヒのデータ活用基盤を支えるデータ仮想化技術Denodo
 
フックを使ったPostgreSQLの拡張機能を作ってみよう!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)
フックを使ったPostgreSQLの拡張機能を作ってみよう!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)フックを使ったPostgreSQLの拡張機能を作ってみよう!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)
フックを使ったPostgreSQLの拡張機能を作ってみよう!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 
AWSで作る分析基盤
AWSで作る分析基盤AWSで作る分析基盤
AWSで作る分析基盤Yu Otsubo
 

What's hot (20)

PostgreSQL: XID周回問題に潜む別の問題
PostgreSQL: XID周回問題に潜む別の問題PostgreSQL: XID周回問題に潜む別の問題
PostgreSQL: XID周回問題に潜む別の問題
 
BigQuery で 150万円 使ったときの話
BigQuery で 150万円 使ったときの話BigQuery で 150万円 使ったときの話
BigQuery で 150万円 使ったときの話
 
営業さんまで、社員全員がSQLを使う 「越境型組織」 ができるまでの3+1のポイント | リブセンス
営業さんまで、社員全員がSQLを使う 「越境型組織」 ができるまでの3+1のポイント | リブセンス営業さんまで、社員全員がSQLを使う 「越境型組織」 ができるまでの3+1のポイント | リブセンス
営業さんまで、社員全員がSQLを使う 「越境型組織」 ができるまでの3+1のポイント | リブセンス
 
グラフデータベース Neptune 使ってみた
グラフデータベース Neptune 使ってみたグラフデータベース Neptune 使ってみた
グラフデータベース Neptune 使ってみた
 
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
 
ヤフー社内でやってるMySQLチューニングセミナー大公開
ヤフー社内でやってるMySQLチューニングセミナー大公開ヤフー社内でやってるMySQLチューニングセミナー大公開
ヤフー社内でやってるMySQLチューニングセミナー大公開
 
異次元のグラフデータベースNeo4j
異次元のグラフデータベースNeo4j異次元のグラフデータベースNeo4j
異次元のグラフデータベースNeo4j
 
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
 
Twitterのsnowflakeについて
TwitterのsnowflakeについてTwitterのsnowflakeについて
Twitterのsnowflakeについて
 
マルチテナントのアプリケーション実装〜実践編〜
マルチテナントのアプリケーション実装〜実践編〜マルチテナントのアプリケーション実装〜実践編〜
マルチテナントのアプリケーション実装〜実践編〜
 
AWSではじめるMLOps
AWSではじめるMLOpsAWSではじめるMLOps
AWSではじめるMLOps
 
SolrとElasticsearchを比べてみよう
SolrとElasticsearchを比べてみようSolrとElasticsearchを比べてみよう
SolrとElasticsearchを比べてみよう
 
Amazon SageMakerでカスタムコンテナを使った学習
Amazon SageMakerでカスタムコンテナを使った学習Amazon SageMakerでカスタムコンテナを使った学習
Amazon SageMakerでカスタムコンテナを使った学習
 
Fess/Elasticsearchを使った業務で使える?全文検索への道
Fess/Elasticsearchを使った業務で使える?全文検索への道Fess/Elasticsearchを使った業務で使える?全文検索への道
Fess/Elasticsearchを使った業務で使える?全文検索への道
 
Databricksを初めて使う人に向けて.pptx
Databricksを初めて使う人に向けて.pptxDatabricksを初めて使う人に向けて.pptx
Databricksを初めて使う人に向けて.pptx
 
強いて言えば「集約どう実装するのかな、を考える」な話
強いて言えば「集約どう実装するのかな、を考える」な話強いて言えば「集約どう実装するのかな、を考える」な話
強いて言えば「集約どう実装するのかな、を考える」な話
 
DevOps with Database on AWS
DevOps with Database on AWSDevOps with Database on AWS
DevOps with Database on AWS
 
アサヒのデータ活用基盤を支えるデータ仮想化技術
アサヒのデータ活用基盤を支えるデータ仮想化技術アサヒのデータ活用基盤を支えるデータ仮想化技術
アサヒのデータ活用基盤を支えるデータ仮想化技術
 
フックを使ったPostgreSQLの拡張機能を作ってみよう!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)
フックを使ったPostgreSQLの拡張機能を作ってみよう!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)フックを使ったPostgreSQLの拡張機能を作ってみよう!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)
フックを使ったPostgreSQLの拡張機能を作ってみよう!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
AWSで作る分析基盤
AWSで作る分析基盤AWSで作る分析基盤
AWSで作る分析基盤
 

Viewers also liked

2017-03-26 CAMPHOR- 勉強会:エンジニア向けkintone活用術
2017-03-26 CAMPHOR- 勉強会:エンジニア向けkintone活用術2017-03-26 CAMPHOR- 勉強会:エンジニア向けkintone活用術
2017-03-26 CAMPHOR- 勉強会:エンジニア向けkintone活用術Yasuharu Sakai
 
サイボウズのリモートワーク・リモートチーム
サイボウズのリモートワーク・リモートチームサイボウズのリモートワーク・リモートチーム
サイボウズのリモートワーク・リモートチームRyo Mitoma
 
”30分”ぐらいでわかる「Kubernetes」について
”30分”ぐらいでわかる「Kubernetes」について”30分”ぐらいでわかる「Kubernetes」について
”30分”ぐらいでわかる「Kubernetes」についてYuya Ohara
 
【kintone便利に使おうシリーズ】[vol.08 アクセス権]
【kintone便利に使おうシリーズ】[vol.08 アクセス権] 【kintone便利に使おうシリーズ】[vol.08 アクセス権]
【kintone便利に使おうシリーズ】[vol.08 アクセス権] Cybozucommunity
 
kintone 活用イメージ集 vol2 20160518
kintone 活用イメージ集 vol2 20160518kintone 活用イメージ集 vol2 20160518
kintone 活用イメージ集 vol2 20160518Cybozucommunity
 
【kintone便利に使おうシリーズ】[vol.05 アクション]
【kintone便利に使おうシリーズ】[vol.05 アクション]【kintone便利に使おうシリーズ】[vol.05 アクション]
【kintone便利に使おうシリーズ】[vol.05 アクション]Cybozucommunity
 
【kintone便利に使おうシリーズ】[vol.09 通知]
【kintone便利に使おうシリーズ】[vol.09 通知]【kintone便利に使おうシリーズ】[vol.09 通知]
【kintone便利に使おうシリーズ】[vol.09 通知]Cybozucommunity
 
【kintone便利に使おうシリーズ】[vol.06 グラフ]
【kintone便利に使おうシリーズ】[vol.06 グラフ]【kintone便利に使おうシリーズ】[vol.06 グラフ]
【kintone便利に使おうシリーズ】[vol.06 グラフ]Cybozucommunity
 
【kintone便利に使おうシリーズ】[vol.04 関連レコード一覧]
【kintone便利に使おうシリーズ】[vol.04 関連レコード一覧] 【kintone便利に使おうシリーズ】[vol.04 関連レコード一覧]
【kintone便利に使おうシリーズ】[vol.04 関連レコード一覧] Cybozucommunity
 
カスタマーサポートでkintone
カスタマーサポートでkintoneカスタマーサポートでkintone
カスタマーサポートでkintoneCybozucommunity
 
【kintone便利に使おうシリーズ】[vol.01 テーブル]
【kintone便利に使おうシリーズ】[vol.01 テーブル]【kintone便利に使おうシリーズ】[vol.01 テーブル]
【kintone便利に使おうシリーズ】[vol.01 テーブル]Cybozucommunity
 
【kintone便利に使おうシリーズ】[vol.02 計算]
【kintone便利に使おうシリーズ】[vol.02 計算] 【kintone便利に使おうシリーズ】[vol.02 計算]
【kintone便利に使おうシリーズ】[vol.02 計算] Cybozucommunity
 
総務部門でkintone
総務部門でkintone総務部門でkintone
総務部門でkintoneCybozucommunity
 
【kintone便利に使おうシリーズ】[vol.03 ルックアップ]
【kintone便利に使おうシリーズ】[vol.03 ルックアップ] 【kintone便利に使おうシリーズ】[vol.03 ルックアップ]
【kintone便利に使おうシリーズ】[vol.03 ルックアップ] Cybozucommunity
 
【kintone便利に使おうシリーズ】[vol.07 プロセス管理]
【kintone便利に使おうシリーズ】[vol.07 プロセス管理]【kintone便利に使おうシリーズ】[vol.07 プロセス管理]
【kintone便利に使おうシリーズ】[vol.07 プロセス管理]Cybozucommunity
 
kintone業種別活用イメージ集
kintone業種別活用イメージ集kintone業種別活用イメージ集
kintone業種別活用イメージ集Cybozucommunity
 

Viewers also liked (20)

2017-03-26 CAMPHOR- 勉強会:エンジニア向けkintone活用術
2017-03-26 CAMPHOR- 勉強会:エンジニア向けkintone活用術2017-03-26 CAMPHOR- 勉強会:エンジニア向けkintone活用術
2017-03-26 CAMPHOR- 勉強会:エンジニア向けkintone活用術
 
サイボウズのリモートワーク・リモートチーム
サイボウズのリモートワーク・リモートチームサイボウズのリモートワーク・リモートチーム
サイボウズのリモートワーク・リモートチーム
 
”30分”ぐらいでわかる「Kubernetes」について
”30分”ぐらいでわかる「Kubernetes」について”30分”ぐらいでわかる「Kubernetes」について
”30分”ぐらいでわかる「Kubernetes」について
 
go-apt-cacher/mirror
go-apt-cacher/mirrorgo-apt-cacher/mirror
go-apt-cacher/mirror
 
AWS Black Belt - AWS Glue
AWS Black Belt - AWS GlueAWS Black Belt - AWS Glue
AWS Black Belt - AWS Glue
 
【kintone便利に使おうシリーズ】[vol.08 アクセス権]
【kintone便利に使おうシリーズ】[vol.08 アクセス権] 【kintone便利に使おうシリーズ】[vol.08 アクセス権]
【kintone便利に使おうシリーズ】[vol.08 アクセス権]
 
kintone 活用イメージ集 vol2 20160518
kintone 活用イメージ集 vol2 20160518kintone 活用イメージ集 vol2 20160518
kintone 活用イメージ集 vol2 20160518
 
【kintone便利に使おうシリーズ】[vol.05 アクション]
【kintone便利に使おうシリーズ】[vol.05 アクション]【kintone便利に使おうシリーズ】[vol.05 アクション]
【kintone便利に使おうシリーズ】[vol.05 アクション]
 
営業現場でkintone
営業現場でkintone営業現場でkintone
営業現場でkintone
 
【kintone便利に使おうシリーズ】[vol.09 通知]
【kintone便利に使おうシリーズ】[vol.09 通知]【kintone便利に使おうシリーズ】[vol.09 通知]
【kintone便利に使おうシリーズ】[vol.09 通知]
 
【kintone便利に使おうシリーズ】[vol.06 グラフ]
【kintone便利に使おうシリーズ】[vol.06 グラフ]【kintone便利に使おうシリーズ】[vol.06 グラフ]
【kintone便利に使おうシリーズ】[vol.06 グラフ]
 
【kintone便利に使おうシリーズ】[vol.04 関連レコード一覧]
【kintone便利に使おうシリーズ】[vol.04 関連レコード一覧] 【kintone便利に使おうシリーズ】[vol.04 関連レコード一覧]
【kintone便利に使おうシリーズ】[vol.04 関連レコード一覧]
 
カスタマーサポートでkintone
カスタマーサポートでkintoneカスタマーサポートでkintone
カスタマーサポートでkintone
 
【kintone便利に使おうシリーズ】[vol.01 テーブル]
【kintone便利に使おうシリーズ】[vol.01 テーブル]【kintone便利に使おうシリーズ】[vol.01 テーブル]
【kintone便利に使おうシリーズ】[vol.01 テーブル]
 
【kintone便利に使おうシリーズ】[vol.02 計算]
【kintone便利に使おうシリーズ】[vol.02 計算] 【kintone便利に使おうシリーズ】[vol.02 計算]
【kintone便利に使おうシリーズ】[vol.02 計算]
 
総務部門でkintone
総務部門でkintone総務部門でkintone
総務部門でkintone
 
人事部門でkintone
人事部門でkintone人事部門でkintone
人事部門でkintone
 
【kintone便利に使おうシリーズ】[vol.03 ルックアップ]
【kintone便利に使おうシリーズ】[vol.03 ルックアップ] 【kintone便利に使おうシリーズ】[vol.03 ルックアップ]
【kintone便利に使おうシリーズ】[vol.03 ルックアップ]
 
【kintone便利に使おうシリーズ】[vol.07 プロセス管理]
【kintone便利に使おうシリーズ】[vol.07 プロセス管理]【kintone便利に使おうシリーズ】[vol.07 プロセス管理]
【kintone便利に使おうシリーズ】[vol.07 プロセス管理]
 
kintone業種別活用イメージ集
kintone業種別活用イメージ集kintone業種別活用イメージ集
kintone業種別活用イメージ集
 

More from Ryo Mitoma

作る人から作りながら運用する人になっていく
作る人から作りながら運用する人になっていく作る人から作りながら運用する人になっていく
作る人から作りながら運用する人になっていくRyo Mitoma
 
さよなら Flaky 不安定なテストの探し方
さよなら Flaky 不安定なテストの探し方さよなら Flaky 不安定なテストの探し方
さよなら Flaky 不安定なテストの探し方Ryo Mitoma
 
kintone のレコード絞り込み置き換え事例の紹介
kintone のレコード絞り込み置き換え事例の紹介kintone のレコード絞り込み置き換え事例の紹介
kintone のレコード絞り込み置き換え事例の紹介Ryo Mitoma
 
小さなサービスも契約する時代
小さなサービスも契約する時代小さなサービスも契約する時代
小さなサービスも契約する時代Ryo Mitoma
 
京都在住、時々大阪、アメリカ向けの基盤開発
京都在住、時々大阪、アメリカ向けの基盤開発京都在住、時々大阪、アメリカ向けの基盤開発
京都在住、時々大阪、アメリカ向けの基盤開発Ryo Mitoma
 
Salary negotiation battle on Cybozu - employee side
Salary negotiation battle on Cybozu - employee sideSalary negotiation battle on Cybozu - employee side
Salary negotiation battle on Cybozu - employee sideRyo Mitoma
 
転職ドラフトを活用した給与交渉術~サイボウズ編~
転職ドラフトを活用した給与交渉術~サイボウズ編~転職ドラフトを活用した給与交渉術~サイボウズ編~
転職ドラフトを活用した給与交渉術~サイボウズ編~Ryo Mitoma
 
企業向けクラウドサービスの開発・運用 悩みどころのパターンと対策
企業向けクラウドサービスの開発・運用 悩みどころのパターンと対策企業向けクラウドサービスの開発・運用 悩みどころのパターンと対策
企業向けクラウドサービスの開発・運用 悩みどころのパターンと対策Ryo Mitoma
 
kintoneチームのKAIZEN文化
kintoneチームのKAIZEN文化kintoneチームのKAIZEN文化
kintoneチームのKAIZEN文化Ryo Mitoma
 

More from Ryo Mitoma (9)

作る人から作りながら運用する人になっていく
作る人から作りながら運用する人になっていく作る人から作りながら運用する人になっていく
作る人から作りながら運用する人になっていく
 
さよなら Flaky 不安定なテストの探し方
さよなら Flaky 不安定なテストの探し方さよなら Flaky 不安定なテストの探し方
さよなら Flaky 不安定なテストの探し方
 
kintone のレコード絞り込み置き換え事例の紹介
kintone のレコード絞り込み置き換え事例の紹介kintone のレコード絞り込み置き換え事例の紹介
kintone のレコード絞り込み置き換え事例の紹介
 
小さなサービスも契約する時代
小さなサービスも契約する時代小さなサービスも契約する時代
小さなサービスも契約する時代
 
京都在住、時々大阪、アメリカ向けの基盤開発
京都在住、時々大阪、アメリカ向けの基盤開発京都在住、時々大阪、アメリカ向けの基盤開発
京都在住、時々大阪、アメリカ向けの基盤開発
 
Salary negotiation battle on Cybozu - employee side
Salary negotiation battle on Cybozu - employee sideSalary negotiation battle on Cybozu - employee side
Salary negotiation battle on Cybozu - employee side
 
転職ドラフトを活用した給与交渉術~サイボウズ編~
転職ドラフトを活用した給与交渉術~サイボウズ編~転職ドラフトを活用した給与交渉術~サイボウズ編~
転職ドラフトを活用した給与交渉術~サイボウズ編~
 
企業向けクラウドサービスの開発・運用 悩みどころのパターンと対策
企業向けクラウドサービスの開発・運用 悩みどころのパターンと対策企業向けクラウドサービスの開発・運用 悩みどころのパターンと対策
企業向けクラウドサービスの開発・運用 悩みどころのパターンと対策
 
kintoneチームのKAIZEN文化
kintoneチームのKAIZEN文化kintoneチームのKAIZEN文化
kintoneチームのKAIZEN文化
 

Recently uploaded

Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptxsn679259
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Gamesatsushi061452
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsWSO2
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Hiroshi Tomioka
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video UnderstandingToru Tamaki
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...Toru Tamaki
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 

Recently uploaded (11)

Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 

kintoneの検索高速化への取り組み