Soumettre la recherche
Mettre en ligne
Caching ガイダンスの話
•
2 j'aime
•
4,328 vues
Sunao Tomita
Suivre
2014/12/16 第5回 クラウドデザインパターン勉強会 http://jazug.doorkeeper.jp/events/17739
Lire moins
Lire la suite
Technologie
Signaler
Partager
Signaler
Partager
1 sur 67
Télécharger maintenant
Télécharger pour lire hors ligne
Recommandé
『コンテナ疲れ』と戦う、k8s・PaaS・Serverlessの活用法
『コンテナ疲れ』と戦う、k8s・PaaS・Serverlessの活用法
Kazuto Kusama
CloudFront経由でのCORS利用
CloudFront経由でのCORS利用
Yuta Imai
Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編
Masahito Zembutsu
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
Akihiro Suda
webエンジニアのためのはじめてのredis
webエンジニアのためのはじめてのredis
nasa9084
NetflixにおけるPresto/Spark活用事例
NetflixにおけるPresto/Spark活用事例
Amazon Web Services Japan
その Pod 突然落ちても大丈夫ですか!?(OCHaCafe5 #5 実験!カオスエンジニアリング 発表資料)
その Pod 突然落ちても大丈夫ですか!?(OCHaCafe5 #5 実験!カオスエンジニアリング 発表資料)
NTT DATA Technology & Innovation
Spring Boot on Kubernetes : Yahoo!ズバトク事例 #jjug_ccc
Spring Boot on Kubernetes : Yahoo!ズバトク事例 #jjug_ccc
Yahoo!デベロッパーネットワーク
Recommandé
『コンテナ疲れ』と戦う、k8s・PaaS・Serverlessの活用法
『コンテナ疲れ』と戦う、k8s・PaaS・Serverlessの活用法
Kazuto Kusama
CloudFront経由でのCORS利用
CloudFront経由でのCORS利用
Yuta Imai
Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編
Masahito Zembutsu
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
Akihiro Suda
webエンジニアのためのはじめてのredis
webエンジニアのためのはじめてのredis
nasa9084
NetflixにおけるPresto/Spark活用事例
NetflixにおけるPresto/Spark活用事例
Amazon Web Services Japan
その Pod 突然落ちても大丈夫ですか!?(OCHaCafe5 #5 実験!カオスエンジニアリング 発表資料)
その Pod 突然落ちても大丈夫ですか!?(OCHaCafe5 #5 実験!カオスエンジニアリング 発表資料)
NTT DATA Technology & Innovation
Spring Boot on Kubernetes : Yahoo!ズバトク事例 #jjug_ccc
Spring Boot on Kubernetes : Yahoo!ズバトク事例 #jjug_ccc
Yahoo!デベロッパーネットワーク
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方
Yoshiyasu SAEKI
[External] 2021.12.15 コンテナ移行の前に知っておきたいこと @ gcpug 湘南
[External] 2021.12.15 コンテナ移行の前に知っておきたいこと @ gcpug 湘南
Google Cloud Platform - Japan
ドメイン駆動設計のための Spring の上手な使い方
ドメイン駆動設計のための Spring の上手な使い方
増田 亨
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
Noritaka Sekiyama
ニワトリでもわかるECS入門
ニワトリでもわかるECS入門
Yoshiki Kobayashi
BigQueryの課金、節約しませんか
BigQueryの課金、節約しませんか
Ryuji Tamagawa
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
Masahito Zembutsu
DI(依存性注入)について
DI(依存性注入)について
Yui Ito
20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したこと
Amazon Web Services Japan
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
JustSystems Corporation
大規模データ処理の定番OSS Hadoop / Spark 最新動向 - 2021秋 -(db tech showcase 2021 / ONLINE 発...
大規模データ処理の定番OSS Hadoop / Spark 最新動向 - 2021秋 -(db tech showcase 2021 / ONLINE 発...
NTT DATA Technology & Innovation
Presto ベースのマネージドサービス Amazon Athena
Presto ベースのマネージドサービス Amazon Athena
Amazon Web Services Japan
イベント・ソーシングを知る
イベント・ソーシングを知る
Shuhei Fujita
機械学習の定番プラットフォームSparkの紹介
機械学習の定番プラットフォームSparkの紹介
Cloudera Japan
マイクロサービスにおける 結果整合性との戦い
マイクロサービスにおける 結果整合性との戦い
ota42y
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
Amazon Web Services Japan
Git超入門(ハンズオン).pdf
Git超入門(ハンズオン).pdf
憲昭 村田
backlogsでもCI/CDする夢を見る
backlogsでもCI/CDする夢を見る
Takeru Maehara
ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計
Yoshinori Matsunobu
Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)
Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)
Keisuke Takahashi
Awsのクラウドデザインパターンをwindows azureに持ってきてみた
Awsのクラウドデザインパターンをwindows azureに持ってきてみた
Sunao Tomita
A 1-3 awsのクラウドデザインパターンをwindows-azureに持ってきてみた
A 1-3 awsのクラウドデザインパターンをwindows-azureに持ってきてみた
GoAzure
Contenu connexe
Tendances
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方
Yoshiyasu SAEKI
[External] 2021.12.15 コンテナ移行の前に知っておきたいこと @ gcpug 湘南
[External] 2021.12.15 コンテナ移行の前に知っておきたいこと @ gcpug 湘南
Google Cloud Platform - Japan
ドメイン駆動設計のための Spring の上手な使い方
ドメイン駆動設計のための Spring の上手な使い方
増田 亨
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
Noritaka Sekiyama
ニワトリでもわかるECS入門
ニワトリでもわかるECS入門
Yoshiki Kobayashi
BigQueryの課金、節約しませんか
BigQueryの課金、節約しませんか
Ryuji Tamagawa
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
Masahito Zembutsu
DI(依存性注入)について
DI(依存性注入)について
Yui Ito
20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したこと
Amazon Web Services Japan
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
JustSystems Corporation
大規模データ処理の定番OSS Hadoop / Spark 最新動向 - 2021秋 -(db tech showcase 2021 / ONLINE 発...
大規模データ処理の定番OSS Hadoop / Spark 最新動向 - 2021秋 -(db tech showcase 2021 / ONLINE 発...
NTT DATA Technology & Innovation
Presto ベースのマネージドサービス Amazon Athena
Presto ベースのマネージドサービス Amazon Athena
Amazon Web Services Japan
イベント・ソーシングを知る
イベント・ソーシングを知る
Shuhei Fujita
機械学習の定番プラットフォームSparkの紹介
機械学習の定番プラットフォームSparkの紹介
Cloudera Japan
マイクロサービスにおける 結果整合性との戦い
マイクロサービスにおける 結果整合性との戦い
ota42y
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
Amazon Web Services Japan
Git超入門(ハンズオン).pdf
Git超入門(ハンズオン).pdf
憲昭 村田
backlogsでもCI/CDする夢を見る
backlogsでもCI/CDする夢を見る
Takeru Maehara
ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計
Yoshinori Matsunobu
Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)
Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)
Keisuke Takahashi
Tendances
(20)
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方
[External] 2021.12.15 コンテナ移行の前に知っておきたいこと @ gcpug 湘南
[External] 2021.12.15 コンテナ移行の前に知っておきたいこと @ gcpug 湘南
ドメイン駆動設計のための Spring の上手な使い方
ドメイン駆動設計のための Spring の上手な使い方
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
ニワトリでもわかるECS入門
ニワトリでもわかるECS入門
BigQueryの課金、節約しませんか
BigQueryの課金、節約しませんか
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
DI(依存性注入)について
DI(依存性注入)について
20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したこと
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
大規模データ処理の定番OSS Hadoop / Spark 最新動向 - 2021秋 -(db tech showcase 2021 / ONLINE 発...
大規模データ処理の定番OSS Hadoop / Spark 最新動向 - 2021秋 -(db tech showcase 2021 / ONLINE 発...
Presto ベースのマネージドサービス Amazon Athena
Presto ベースのマネージドサービス Amazon Athena
イベント・ソーシングを知る
イベント・ソーシングを知る
機械学習の定番プラットフォームSparkの紹介
機械学習の定番プラットフォームSparkの紹介
マイクロサービスにおける 結果整合性との戦い
マイクロサービスにおける 結果整合性との戦い
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
Git超入門(ハンズオン).pdf
Git超入門(ハンズオン).pdf
backlogsでもCI/CDする夢を見る
backlogsでもCI/CDする夢を見る
ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計
Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)
Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)
Similaire à Caching ガイダンスの話
Awsのクラウドデザインパターンをwindows azureに持ってきてみた
Awsのクラウドデザインパターンをwindows azureに持ってきてみた
Sunao Tomita
A 1-3 awsのクラウドデザインパターンをwindows-azureに持ってきてみた
A 1-3 awsのクラウドデザインパターンをwindows-azureに持ってきてみた
GoAzure
Java EE7 䛸㻌JCache
Java EE7 䛸㻌JCache
maruyama097
AWSでアプリ開発するなら 知っておくべこと
AWSでアプリ開発するなら 知っておくべこと
Keisuke Nishitani
db tech showcase_2014_A14_Actian Vectorで得られる、BIにおける真のパフォーマンスとは
db tech showcase_2014_A14_Actian Vectorで得られる、BIにおける真のパフォーマンスとは
Koji Shinkubo
20120117 13 meister-elasti_cache-public
20120117 13 meister-elasti_cache-public
Amazon Web Services Japan
AWS Black Belt Techシリーズ Amazon ElastiCache
AWS Black Belt Techシリーズ Amazon ElastiCache
Amazon Web Services Japan
Amazon ElastiCache - AWSマイスターシリーズ
Amazon ElastiCache - AWSマイスターシリーズ
SORACOM, INC
Azureの運用に欠かせないサービスたち一挙解説
Azureの運用に欠かせないサービスたち一挙解説
Shingo Kawahara
Amazon ElastiCache(初心者向け 超速マスター編)JAWSUG大阪
Amazon ElastiCache(初心者向け 超速マスター編)JAWSUG大阪
崇之 清水
baserCMSのキャッシュの仕組み~もうキャッシュでハマらない!!~【勉強会資料】
baserCMSのキャッシュの仕組み~もうキャッシュでハマらない!!~【勉強会資料】
株式会社キャッチアップ
20121205 nosql(okuyama fs)セミナー資料
20121205 nosql(okuyama fs)セミナー資料
Takahiro Iwase
Azure reliability v0.2.21.0630
Azure reliability v0.2.21.0630
Ayumu Inaba
PHP 5.5ネーティブキャッシュの話
PHP 5.5ネーティブキャッシュの話
Rui Hirokawa
[db tech showcase Tokyo 2018] #dbts2018 #D15 『5年連続!第三者機関の評価で(圧倒的)最強のピュアストレージが...
[db tech showcase Tokyo 2018] #dbts2018 #D15 『5年連続!第三者機関の評価で(圧倒的)最強のピュアストレージが...
Insight Technology, Inc.
単なるキャッシュじゃないよ!?infinispanの紹介
単なるキャッシュじゃないよ!?infinispanの紹介
AdvancedTechNight
MTのダイナミック処理(PHP)を高速化する@サーバーサイドスクリプティング
MTのダイナミック処理(PHP)を高速化する@サーバーサイドスクリプティング
純生 野田
Data Lake ハンズオン
Data Lake ハンズオン
Amazon Web Services Japan
機械学習 / Deep Learning 大全 (5) Tool編
機械学習 / Deep Learning 大全 (5) Tool編
Daiyu Hatakeyama
20140919 enterprise oss my sql study v5.tware-bacula intro
20140919 enterprise oss my sql study v5.tware-bacula intro
Izumi Akiyama
Similaire à Caching ガイダンスの話
(20)
Awsのクラウドデザインパターンをwindows azureに持ってきてみた
Awsのクラウドデザインパターンをwindows azureに持ってきてみた
A 1-3 awsのクラウドデザインパターンをwindows-azureに持ってきてみた
A 1-3 awsのクラウドデザインパターンをwindows-azureに持ってきてみた
Java EE7 䛸㻌JCache
Java EE7 䛸㻌JCache
AWSでアプリ開発するなら 知っておくべこと
AWSでアプリ開発するなら 知っておくべこと
db tech showcase_2014_A14_Actian Vectorで得られる、BIにおける真のパフォーマンスとは
db tech showcase_2014_A14_Actian Vectorで得られる、BIにおける真のパフォーマンスとは
20120117 13 meister-elasti_cache-public
20120117 13 meister-elasti_cache-public
AWS Black Belt Techシリーズ Amazon ElastiCache
AWS Black Belt Techシリーズ Amazon ElastiCache
Amazon ElastiCache - AWSマイスターシリーズ
Amazon ElastiCache - AWSマイスターシリーズ
Azureの運用に欠かせないサービスたち一挙解説
Azureの運用に欠かせないサービスたち一挙解説
Amazon ElastiCache(初心者向け 超速マスター編)JAWSUG大阪
Amazon ElastiCache(初心者向け 超速マスター編)JAWSUG大阪
baserCMSのキャッシュの仕組み~もうキャッシュでハマらない!!~【勉強会資料】
baserCMSのキャッシュの仕組み~もうキャッシュでハマらない!!~【勉強会資料】
20121205 nosql(okuyama fs)セミナー資料
20121205 nosql(okuyama fs)セミナー資料
Azure reliability v0.2.21.0630
Azure reliability v0.2.21.0630
PHP 5.5ネーティブキャッシュの話
PHP 5.5ネーティブキャッシュの話
[db tech showcase Tokyo 2018] #dbts2018 #D15 『5年連続!第三者機関の評価で(圧倒的)最強のピュアストレージが...
[db tech showcase Tokyo 2018] #dbts2018 #D15 『5年連続!第三者機関の評価で(圧倒的)最強のピュアストレージが...
単なるキャッシュじゃないよ!?infinispanの紹介
単なるキャッシュじゃないよ!?infinispanの紹介
MTのダイナミック処理(PHP)を高速化する@サーバーサイドスクリプティング
MTのダイナミック処理(PHP)を高速化する@サーバーサイドスクリプティング
Data Lake ハンズオン
Data Lake ハンズオン
機械学習 / Deep Learning 大全 (5) Tool編
機械学習 / Deep Learning 大全 (5) Tool編
20140919 enterprise oss my sql study v5.tware-bacula intro
20140919 enterprise oss my sql study v5.tware-bacula intro
Plus de Sunao Tomita
AD19_冨田・近江_TechSummit2018
AD19_冨田・近江_TechSummit2018
Sunao Tomita
俺の俺による俺のための App Service Environment
俺の俺による俺のための App Service Environment
Sunao Tomita
ハンズオン環境をAzure仮想マシンを作成する.pptx
ハンズオン環境をAzure仮想マシンを作成する.pptx
Sunao Tomita
OMSのあれこれ
OMSのあれこれ
Sunao Tomita
CPU 版 TensorFlow を Azure 仮想マシンに構築する
CPU 版 TensorFlow を Azure 仮想マシンに構築する
Sunao Tomita
Azure Notebook で TensorFlow をハンズオンする環境を作る話
Azure Notebook で TensorFlow をハンズオンする環境を作る話
Sunao Tomita
Azure2017年3月障害DeepDive
Azure2017年3月障害DeepDive
Sunao Tomita
Azure App Service を使った無料のハンズオン
Azure App Service を使った無料のハンズオン
Sunao Tomita
Logic Apps と Api Apps の話
Logic Apps と Api Apps の話
Sunao Tomita
20141004 青森ハンズオン Azure概要
20141004 青森ハンズオン Azure概要
Sunao Tomita
Mashup Ideathon 東北 in 青森
Mashup Ideathon 東北 in 青森
Sunao Tomita
デザインパターンから見た AWS と Azure
デザインパターンから見た AWS と Azure
Sunao Tomita
Build 2014 Azure 的まとめ
Build 2014 Azure 的まとめ
Sunao Tomita
Windows Azure の歴史2014年2月26日版
Windows Azure の歴史2014年2月26日版
Sunao Tomita
Windows Azure の中でも動いている InfiniBand って何?
Windows Azure の中でも動いている InfiniBand って何?
Sunao Tomita
最近の Windows Azure ってどう?
最近の Windows Azure ってどう?
Sunao Tomita
2013年版の inside windows azure
2013年版の inside windows azure
Sunao Tomita
Windows Azureの歴史 2013年2月版
Windows Azureの歴史 2013年2月版
Sunao Tomita
ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~
ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~
Sunao Tomita
TypeScriptへの入口
TypeScriptへの入口
Sunao Tomita
Plus de Sunao Tomita
(20)
AD19_冨田・近江_TechSummit2018
AD19_冨田・近江_TechSummit2018
俺の俺による俺のための App Service Environment
俺の俺による俺のための App Service Environment
ハンズオン環境をAzure仮想マシンを作成する.pptx
ハンズオン環境をAzure仮想マシンを作成する.pptx
OMSのあれこれ
OMSのあれこれ
CPU 版 TensorFlow を Azure 仮想マシンに構築する
CPU 版 TensorFlow を Azure 仮想マシンに構築する
Azure Notebook で TensorFlow をハンズオンする環境を作る話
Azure Notebook で TensorFlow をハンズオンする環境を作る話
Azure2017年3月障害DeepDive
Azure2017年3月障害DeepDive
Azure App Service を使った無料のハンズオン
Azure App Service を使った無料のハンズオン
Logic Apps と Api Apps の話
Logic Apps と Api Apps の話
20141004 青森ハンズオン Azure概要
20141004 青森ハンズオン Azure概要
Mashup Ideathon 東北 in 青森
Mashup Ideathon 東北 in 青森
デザインパターンから見た AWS と Azure
デザインパターンから見た AWS と Azure
Build 2014 Azure 的まとめ
Build 2014 Azure 的まとめ
Windows Azure の歴史2014年2月26日版
Windows Azure の歴史2014年2月26日版
Windows Azure の中でも動いている InfiniBand って何?
Windows Azure の中でも動いている InfiniBand って何?
最近の Windows Azure ってどう?
最近の Windows Azure ってどう?
2013年版の inside windows azure
2013年版の inside windows azure
Windows Azureの歴史 2013年2月版
Windows Azureの歴史 2013年2月版
ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~
ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~
TypeScriptへの入口
TypeScriptへの入口
Caching ガイダンスの話
1.
Caching ガイダンスの話 Japan
Azure User Group Microsoft MVP for Microsoft Azure 冨⽥田 順 (とみたすなお) http://twitter.com/harutama
2.
カバーする範囲 • CDPの話
– Cachingガイダンス – Cache-Asideパターン • そもそもキャッシュって何なのかトーク • 次のサーバーインフラってどうなる? 2
3.
基本情報技術者試験より • 平成26年年
春期 午前 問10 – 主記憶のアクセス時間60ナノ秒, キャッシュメモリのアクセス時間10ナノ秒の システムがある。 キャッシュメモリを介して主記憶にアクセス する場合の実効アクセス時間が15ナノ秒である とき,キャッシュメモリのヒット率率率は幾らか。 3
4.
4 Q. どうしてキャッシュを
使うんですか?
5.
5 A. 速い記憶装置は
⾼高くて⼩小さいから
6.
記憶階層 6 http://commons.wikimedia.org/wiki/File:Memory_̲hierarchy.svg#mediaviewer
/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:Memory_̲hierarchy.svg
7.
CPU 周辺のキャッシュの話 7
ここらへんのエリア でのキャッシュの話
8.
8
9.
今どきの CPU の中⾝身
http://pc.watch.impress.co.jp/docs/column/kaigai/20130602_̲601851.html9
10.
10 \ __
/ _ (m) _ ピコーン |ミ| / `´ \ ( ゚∀゚) レジスタを超巨大にしたら ノヽノ | 超高速になるんじゃね?
11.
11 すごく正しい。 けど、できない事情がある。
12.
1ビット分のメモリ回路路 DRAMSRAM 12http://www.infonet.co.jp/ueyama/ip/logic/sram.html
回路路規模 ⼩小さい トランジスタ1個 コンデンサ1個 ⼤大きい トランジスタ6個 (6個以上のバージョンも有り) 価格安い⾼高い 速度度普通⾼高速 ⽤用途メインメモリレジスタ・CPUキャッシュ
13.
物理理的な話ですが • 2.0Ghz
の CPU において、1クロックは何 秒に相当するか? 1 / (2.0×109) = 0.5 × 10-9 sec = 0.5 ナノ秒 • 0.5ナノ秒で光はどのくらい進むか? (0.5 × 10-9) × (3.0 × 108) = 0.15m = 15cm 13
14.
キャッシュの理理屈 14 この絵が成り⽴立立っている
基本的な理理屈
15.
15 Q. どうしてキャッシュは
うまく機能するの?
16.
参照の局所性 16 •
時間的局所性 • 空間的局所性 • 逐次的局所性というのもあるらしい
17.
時間的局所性 17 さっき使ったものを
ちょっと後でまた使う 可能性は⾼高い
18.
例例えばこんなとき 18 private
static void Example(Liststring list) { for (int i = 0; list.Count i; i++) { //この中で何かをするわけですが。 Console.WriteLine(list[i]); } }
19.
空間的局所性 19 今使ったものの
近くにあるものは 使われる可能性が⾼高い
20.
例例えばこんなとき 20 private
static void Example(Liststring list) { foreach (string s in list) { //この中で何かをするわけですが。 Console.WriteLine(s); } }
21.
ここまでまとめ • 時間的局所性と空間的局所性を根拠にして
キャッシュは機能している。 • 局所性のないデータはキャッシュしても効果 が無い。 ⾔言い換えればキャッシュのヒット率率率が悪い。 – 1回アクセスしたら2度度と使われない (時間的局所性が無い) – アクセスするデータに規則性がない (空間的局所性が無い) 21
22.
Caching ガイダンスの冒頭 22
キャッシュは、頻繁にアクセスされるデータをアプリケー ションの近くに位置する⾼高速記憶装置に⼀一時的にコピーする ことにより、システムのパフォーマンスとスケーラビリティ を改善することを⽬目的とする、⼀一般的な技術です。 キャッシュは、アプリケーションインスタンスが同じデータ を何度度も読み込む場合(特にオリジナルのデータストアが キャッシュの速度度に⽐比べて低速な場合、または⾼高レベルの競 合を受ける場合、あるいはデータストアが遠くにあり、ネッ トワークの遅延がアクセス遅延の原因となる場合など)に、 最も効果的です。
23.
商⽤用のキャッシュ 23
24.
Cache-Aside パターンより 24
商⽤用で提供されているキャッシュシステムの多くは、リード スルー⽅方式や、ライトスルー/ライトビハインド⽅方式を提供 しています。 これらのシステムでは、アプリケーションはキャッシュを参 照し、データストアからデータを取り込みます。データが キャッシュにない場合は、ユーザーが意識識することなく透過 的にデータストアからキャッシュに取り込まれます。 キャッシュ内のデータに加えられたすべての修正は、データ ストア内の元データに⾃自動的に書き戻されます。
25.
商⽤用で提供されるキャッシュ • 商⽤用キャッシュの例例
– Oracle Coherence – IBM WebSphere eXtreme Scale – Pivotal GemFire • 商⽤用キャッシュは多くの透過性を提供する – 位置透過性、複製透過性、障害透過性とか。 25
26.
クラウドアプリケーションでの キャッシュ •
インメモリキャッシュ – アプリケーションのインスタンスを実⾏行行して いるコンピューターのローカルにデータを保 存する。 • 共有キャッシュ – 異異なるコンピューターで実⾏行行されている複数 のアプリケーションのインスタンスからアク セスすることができる。 26
27.
Azure Redis Cache
の場合 27 http://azure.microsoft.com/ja-‐‑‒jp/services/cache/
28.
Oracle Coherence のデプロイメント
28 https://docs.oracle.com/cd/E50629_̲01/core/FMWLC/products2.htm
29.
Pivotal SQLFire SQLFire
は純粋にSQL形式でデータストアにクエリするのに、 JDBC あ るいは ADO.NETを提供しているが、キーとインデックスは、メモリーに 蓄え、⾼高度度なスケーラビリティと可⽤用性、そして優れたパフォーマンスを 提供している。その点で、vFabric GemFire や Oracle Coherenceに似た 分散キャッシング層として機能するが、「ディスク上の記憶アーキテク チャは従来のSQLデータベースとは根本的に違っている。全ての変更更は、 ⾼高度度なスケーラビリティと可⽤用性を⽬目指したもので、⽔水平のスケーリング により、負荷に関係なく、予想通りの低遅延を提供している。」と、 SQLFire Chief Architectの Jags Ramnarayan⽒氏は語った。 SQLFireはまた、永続化に RDBMSを使うことができ、「Oracle, MySQL, Sybase, DB2, SQLServer、PostGres を含む殆ど全てのデー タベース」をサポートする計画だ、と Ramnarayan⽒氏は⾔言った。こうして、 VMwareのソリューションは、普通には適さないシナリオで今使うことが できるリレーショナル データベースの寿命を延ばしている。 29 http://www.infoq.com/jp/news/2011/06/VMware-‐‑‒vFabric-‐‑‒SQLFire
30.
キャッシュの制御 30
31.
参考資料料 • リードスルー、ライトスルー、ライトビ
ハインドおよびリフレッシュアヘッドの キャッシュ – https://docs.oracle.com/cd/E23332_01/coh. 360/b61368/cache_rtwtwbra.htm 31
32.
リードスルー その1 32
DBキャッシュアプリ ① hogeのデータ ちょうだい ② hogeのデータ 持ってない!
33.
リードスルー その2 33
DBキャッシュアプリ ③ hogeのデータ ちょうだい ④ はいはいどうぞ
34.
リードスルー その3 34
DBキャッシュアプリ ⑤ はいどうぞ (キャッシュを残しつつ)
35.
CDP 本⽂文より 35
商⽤用で提供されているキャッシュシステムの多くは、リード スルー⽅方式や、ライトスルー/ライトビハインド⽅方式を提供 しています。 これらのシステムでは、アプリケーションはキャッシュを参 照し、データストアからデータを取り込みます。データが キャッシュにない場合は、ユーザーが意識識することなく透過 的にデータストアからキャッシュに取り込まれます。 キャッシュ内のデータに加えられたすべての修正は、データ ストア内の元データに⾃自動的に書き戻されます。
36.
ライトスルー その1 36
DBキャッシュアプリ ① hogeのデータ とっておいて ② すぐ DB に 書き込もう
37.
ライトスルー その2 37
DBキャッシュアプリ ③ Hoge を 書きこみ完了了 ④ Hoge を 書きこみました
38.
リードスルーとライトスルー • 両⽅方とも操作は同期的に⾏行行われる。
• キャッシュにヒットすれば、読み込みの 性能は向上する。 • 書き込みの性能は向上しない。 – 同期で書き込む =アプリは書き込み完了了まで待たされる =書き込みパフォーマンスは向上しない 38
39.
39 書き込み性能を上げるには? ↓
⾮非同期で書く!
40.
40 それが ライトビハインド!
41.
ライトビハインド その1 41
DBキャッシュアプリ ① hogeのデータ とっておいて ② とっておきました! (まだ書いてないけど)
42.
ライトビハインド その2 42
③ しばらく とっておく DBキャッシュアプリ
43.
ライトビハインド その3 43
④ タイミングが 来たら書く DBキャッシュアプリ
44.
CDP 本⽂文より 44
商⽤用で提供されているキャッシュシステムの多くは、リード スルー⽅方式や、ライトスルー/ライトビハインド⽅方式を提供 しています。 これらのシステムでは、アプリケーションはキャッシュを参 照し、データストアからデータを取り込みます。データが キャッシュにない場合は、ユーザーが意識識することなく透過 的にデータストアからキャッシュに取り込まれます。 キャッシュ内のデータに加えられたすべての修正は、データ ストア内の元データに⾃自動的に書き戻されます。
45.
45 Q. そんな機能
キャッシュサービスに ありましたっけ?
46.
46
47.
47 でも、その機能 本当に必要ですか?
48.
キャッシュの構築 48
49.
Cache-Aside パターン 49
50.
Cache-Aside パターン •
サンプル – MVC Movie アプリと Azure Redis Cache を 15 分で接続 http://blogs.msdn.com/b/windowsazurej/ archive/2014/06/18/blog-mvc-movie-app-with-azure- redis-cache-in-15-minutes.aspx • 読み取りに特化している。 書き込みに関しては考慮していない。 50
51.
結論論から⾔言うと 51 書き込みキャッシュを
⾃自分で実装することは おすすめしません
52.
ハードディスクのキャッシュ 52
53.
書き込みキャッシュの難点 • キャッシュの内容が消える場合を想定する
と、複数ノードへの分散が必要。 – キャッシュしているノードが死ぬとか。 • 書き込み操作の順序を、キャッシュ側で保 証する必要が出てくる。 – 複数インスタンスでアプリケーションとキャッ シュが動作していることを考慮しつつ。 • 永続化のためのコードを、永続化の⼿手段に 応じて⽤用意しなければいけない。 – Webサービス、データベース、ファイル とか 53
54.
54 ほんとにやる? (商⽤用のキャッシュは実際やっていますが…)
55.
発想をかえてみる • 書き込み操作を⾮非同期にできれば、書き
込みキャッシュと同等の効果が出るはず。 – ライトビハインドキャッシュの本質は、⾮非同 期で書き込みを⾏行行うこと。 • 書き込む順序は⼤大事”かも” – 書き込む⼈人が “順序が⼤大事” or “そうでもない” を教えてくれたら解決する問題もある。 55
56.
56 それって もしかして…
57.
Queue なんじゃね? 57
58.
今⽇日のまとめ • 読み込みキャッシュには
Azure Redis Cache を使って Cache-‐‑‒Aside パターンを 実装すればいいと思います。 • 書き込みキャッシュを実装するよりも、 Queue を活⽤用する⽅方向の⽅方が良良いと考え ています。 58
59.
http://www.theregister.co.uk/2010/07/27/integrated_silicon_photonics/ コンピューティングの将来 59
60.
Intel の試作品 60
61.
こんなことをやろうとしてます 61
62.
何のために? 62
63.
本気でやろうとしています 63 \
__ / _ (m) _ ピコーン |ミ| / `´ \ ( ゚∀゚) レジスタを超巨大にしたら ノヽノ | 超高速になるんじゃね? …っていうのに近いことを。
64.
単⼀一レベル記憶 単⼀一レベル記憶(たんいつレベルきおく、英: Single-level
store, Single-level storage, SLS)は、コンピュータが使っている記憶装置について、アプリ ケーションソフトウェアに対して主記憶装置と補助記憶装置の区別を意識識さ せずに、ただ⼀一つの巨⼤大なアドレス空間で管理理する仮想記憶のメモリ管理理技 術である。 ⼊入出⼒力力が⾮非常に⾼高速、プログラム実⾏行行の際に磁気ディスク装置から主記憶装 置へのロードが不不要、ユーザー (やオペレータ) から⾒見見て、磁気ディスク装 置の管理理が単純になる(たとえば、通常の管理理業務では必須となるファイル システムによるフォーマット等を必要とせず、単に新しいディスクを接続す ればシステムの使える資源が増える、といったように)、などの特⻑⾧長がある。 単⼀一レベル記憶は、Multics、IBMの System/38 、AS/400 (およびその後継 システムの eServer iSeries 、System i 、Power Systems i Edition)などで 採⽤用されている。 64
65.
DIMM の形をした SSD
65
66.
不不揮発メモリー 電源を切切っても記憶内容を保持することがで きるメモリのこと。ROMやフラッシュメモリ、
強誘電体メモリ(FRAM)、磁気抵抗メモリ (MRAM)などがこれにあたる。 DRAMやSRAMなどのように外部から電源を 供給しないと記憶が保持できないものを「揮 発メモリ」「揮発性メモリ」という。 66 http://e-‐‑‒words.jp/w/E4B88DE68FAEE799BAE383A1E383A2E383AA.html
67.
Let’s dream and
then let’s build. - Ray Ozzie 冨⽥田 順 (@harutama) http://twitter.com/harutama
Télécharger maintenant