Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Scalaで実装した 分散処理システムの超概要
Search
Takashi Funato
April 11, 2018
Technology
210
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Scalaで実装した 分散処理システムの超概要
Takashi Funato
April 11, 2018
More Decks by Takashi Funato
See All by Takashi Funato
AWS をちょっとわかった気になる / Kinda feel the AWS
tfunato
0
110
人に優しいAWS運用
tfunato
0
93
OSI reference model Layer I
tfunato
0
68
Goで作るWebアプリケーション Echo 編 といいつつGoの説明多い
tfunato
0
120
Docker勉強会
tfunato
1
170
GISとして活用するElasticsearch
tfunato
6
8k
Other Decks in Technology
See All in Technology
Classmethod Company Deck
satoshi7
1
740
1つのリクエストを追って理解する - llm-dのP/D分離
akhino
1
180
Metadata - Section 1: HTML Basics
mohab1
0
130
パスキーの自動テストはどこまでいけるのか
teamlab
PRO
0
300
サブエージェントと Claude Mods で作る独自 Advisor ツールの話
kenichiodo
2
170
What Is JetBrains Air
x5gtrn
PRO
0
110
Getting Started with Google Antigravity
glaforge
0
330
DGX Spark でどこまでハッキングができるのか?
kash1064
3
1.4k
AI駆動で「他アプリの音を加工できる」アプリを作った
satomasahiro2005
0
180
「エーアイ」をバズワードにしないために RPA 導入経験と Kiro 上での Claude モデル利用経験から
kazzpapa3
0
100
宣言型部分更新は何を解決しどこへ向かうのか
shuta13
1
500
データエンジニアの次の戦場は "プロセスエンジニアリング"
sansantech
PRO
1
120
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
4k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
46k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
500
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
31k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
6
1.2k
GraphQLとの向き合い方2022年版
quramy
50
15k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
760
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
520
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.7k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
4
4.4k
30 Presentation Tips
portentint
PRO
1
430
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
570
Transcript
ScalaͰ࣮ͨ͠ ࢄॲཧγεςϜͷ֓ཁ 2018.04.11 ΏΊΈ ᢠށ ོ
հ • tfunato • αʔόαΠυͬͯ·͢ • PHPɺNode.jsɺJavaɺetc
Agenda • ࢄॲཧ • Sparkͷઆ໌ • ͬͨ͜ͱ • ·ͱΊ
ࢄॲཧ
ࢄॲཧ • ̍ͭͷॲཧΛࢄͯ͠ߦ͏͜ͱ
ͱ͍͑ • ॲཧͷ߹ੑ • ͦΕͧΕͷܭࢉ݁Ռͷ߹ੑ • ॲཧͷޮԽ • ॲཧͷׂ •
ॲཧରσʔλͷɺऩूɺूܭ • ௨৴ϓϩτίϧεέʔϥϏϦςΟɺোੑ…. • ઐ͡Όͳ͍ͷͰৄ͘͠…
ॲཧܥ • ѻ͏σʔλ͍ΘΏΔϏοάσʔλ • ेςϥόΠτ ʙ ϖλόΠτ • ηϯαʔɺυΩϡϝϯτɺϩάɺఱจֶɺେؾԽֶɺήϊϜ etc
• ҰൠతͳRDBͰॲཧ͖͠Εͳ͘ͳͬͨ • ઐ༻ͷϋʔυΣΞιϑτΣΞ • ඇৗʹߴՁ • Google͕MapReduceΛൃද • ͦΕΛͱʹHadoop͕࡞ΒΕOSSԽ
Hadoop͔ΒSpark • ॲཧ͕͍ • ͍Θ͚Ͱͳ͍͕ɺޮ͕ѱ͍ • IOΛฒྻԽͯ͠εϧʔϓοτΛ্͍͛ͯΔ͕ɺٯʹIO ͕ϘτϧωοΫʹͳ͖ͬͯͨ • αʔόߏ͕ෳࡶɺ͔ͭӡ༻͕େม
• NameNodeɺJobTrackerɺDataNodeɺTaskTracker
Hadoop͔ΒSpark • SparkHadoopͷMapReduceΛஔ͖͑Δ • SparkॲཧΛۃྗϝϞϦʔʹͤͯߦ͏ • ඞཁʹͳͬͨΒσΟεΫIO͢Δ • HadoopͷMapReduceΑΓ100ഒૣ͍ͱ͔
Spark
Sparkͷઆ໌ - ࣮ • Scala • Java • Python •
R
Sparkͷઆ໌ - σʔλೖग़ྗ • ༷ʑͳσʔλͷೖग़ྗʹରԠ • Hadoop Distributed File System(HDFS)
• Cassandra • MongoDB • Couchbase • Amazon S3 • RDBʢJDBCͰଓͰ͖ΔͷͰ͋Εʣ • IOपΓͷࣗ࡞
Sparkͷઆ໌ - ѻ͏σʔλܗࣜ • ༷ʑͳσʔλܗࣜʹରԠ • CSVʢTSVʣ • JSON •
Text • ParquetɺORC • ΧϥϜφϑΥʔϚοτʢྻํσʔλʣ • ReadɺWriteΛࣗ࡞
Sparkͷઆ໌ - ॲཧͷجຊ1 • ॲཧͷجຊ • Read • σʔλΛಡΈࠐΉ෦ •
Write • σʔλΛॻ͖ࠐΉ෦
Sparkͷઆ໌ - ॲཧͷجຊ2 • SQLϥΠΫͳΠϯλʔϑΣʔε͕༻ҙ͞Ε͍ͯΔ • Spark SQL • Readͨ͠σʔλʹରͯ͠Ճ
• FilterɺGroupByɺAvgɺOrderByɺMaxɺMinɺCount • JoinɺUnion • ෳͷಡΈࠐΜͩσʔλʹରͯ͠ • https://spark.apache.org/docs/latest/api/scala/ index.html#org.apache.spark.sql.Dataset
Sparkͷઆ໌ - ॲཧͷجຊ̐ • Write • ॻ͖ࠐΈઌͱϑΥʔϚοτΛࢦఆ͢Δ͚ͩ
ͬͨ͜ͱ
ΞʔΩςΫνϟ Amazon Redshift Amazon EMR Amazon S3 104σʔλ 4QBSL
ϩʔΧϧ։ൃڥ • Redshiftͱޓੑͷ͋ΔPostgreSQLΛDocker Ͱىಈ • IntelliJ IDEA͔ΒSparkΛ࣮ߦ • local࣮ߦϞʔυ͕͋Δ •
ϩʔΧϧʹϑΝΠϧग़ྗ
ͬͨ͜ͱ • Redshift͔ΒSQLΛ͛ͯରσʔλऔಘ • ඞཁ࠷খݶͷσʔλΛऔಘ͢Δ • POSσʔλΛूܭͯ͠ϙΠϯτΛ༩͢Δ • ݁ՌΛCSVͱͯ͠S3ʹอଘ
ͬͨ͜ͱ • JenkinsΛδϣϒεέδϡʔϥͱͯ͠༻ • ͔ͭϩάΛCloudWatchʹసૹͯ͠ࢹ • ͔̍̍͠ಈ͔ͳ͍ͷͰৗ࣌ىಈͷΫϥελͱ͠ͳ͍ͰɺऴΘͬ ͨΒΫϥελΛআ • ݁ߏେ͖͍ΠϯελϯεΛ༻ͯ͠େֹͨۚ͠ʹͳΒͳ͍
• ϩάS3ʹग़ྗ͞ΕΔͷͰ֬ೝ͍͢͠ • sbtʹcryptɺdecryptλεΫΛՃͯ͠ڥใΛ҉߸Խ
·ͱΊ
·ͱΊ • ΦʔόʔεϖοΫ͔ͩͬͨ͠Εͳ͍ • ͏ͪΐͬͱςετΛॻ͖͍ߏʹ͖͢ ͩͬͨ • Spark͍͍Α • Scala͍͍Α