Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Yuki Morishita
Search
CassandraCommunityJP
May 13, 2015
Technology
0
150
Yuki Morishita
Cassandra Summit Tokyo 2015
CassandraCommunityJP
May 13, 2015
Tweet
Share
More Decks by CassandraCommunityJP
See All by CassandraCommunityJP
Azure Managed Instance for Apache Cassandra
cassandracommunityjp
0
230
Cassandra on Kubernets- K8ssandra
cassandracommunityjp
0
600
Transaction Management on Cassandra
cassandracommunityjp
0
340
運用中システムにおける6億レコードのデータ移行に関する課題と解決
cassandracommunityjp
0
350
Cassandraの活用とその事例
cassandracommunityjp
0
520
Microsoft Azureを基盤としたライフサイエンス業界事例でのCassandra / DataStax Enterpriseの活用
cassandracommunityjp
0
220
Microsoft Azure で実現する Cassandra とその活用事例
cassandracommunityjp
0
380
Troubleshooting Apache Cassandra
cassandracommunityjp
0
350
Cassandra Summit Tokyo 2017 Keynote
cassandracommunityjp
0
450
Other Decks in Technology
See All in Technology
フィンテック養成勉強会#56
finengine
0
140
Snowflakeの生成AI機能を活用したデータ分析アプリの作成 〜Cortex AnalystとCortex Searchの活用とStreamlitアプリでの利用〜
nayuts
1
460
Aurora DSQLはサーバーレスアーキテクチャの常識を変えるのか
iwatatomoya
1
720
Agile PBL at New Grads Trainings
kawaguti
PRO
1
390
Django's GeneratedField by example - DjangoCon US 2025
pauloxnet
0
120
職種の壁を溶かして開発サイクルを高速に回す~情報透明性と職種越境から考えるAIフレンドリーな職種間連携~
daitasu
0
140
研究開発と製品開発、両利きのロボティクス
youtalk
1
510
品質視点から考える組織デザイン/Organizational Design from Quality
mii3king
0
190
ChatGPTとPlantUML/Mermaidによるソフトウェア設計
gowhich501
1
130
LLMを搭載したプロダクトの品質保証の模索と学び
qa
0
1k
COVESA VSSによる車両データモデルの標準化とAWS IoT FleetWiseの活用
osawa
1
260
DevIO2025_継続的なサービス開発のための技術的意思決定のポイント / how-to-tech-decision-makaing-devio2025
nologyance
1
370
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
KATA
mclloyd
32
14k
How STYLIGHT went responsive
nonsquared
100
5.8k
RailsConf 2023
tenderlove
30
1.2k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Agile that works and the tools we love
rasmusluckow
330
21k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
GraphQLの誤解/rethinking-graphql
sonatard
72
11k
Facilitating Awesome Meetings
lara
55
6.5k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
Transcript
Apache Cassandra ϓϩδΣΫτʹ ඈͼࠐ͏ Cassandra Summit Tokyo 2015
Լ ༤و Apache Cassandraίϛολʔɻ DataStaxͰಇ͘ιϑτΣΞσϕϩούʔɻ ςΩαεभΦʔεςΟϯʹͯɺຖ΄΅100% Cassandra ͷίʔυΛॻ͘ࣄΛ͍ͯ͠·͢ɻ twitter: @yukim
github: https://github.com/yukim freenode: yukim
Apache Cassandra ίϛϡχςΟʔʹࢀՃͯ͠ ϓϩδΣΫτʹߩݙ͠·ͤΜ͔?
ϓϩδΣΫτʹߩݙ͢Δ != ίʔυΛॻ͘
ίʔυҎ֎Ͱͷߩݙ ίʔυΛॻ͘͜ͱҎ֎ʹϓϩδΣΫτʹߩݙ Ͱ͖·͢ • όάϨϙʔτ/վળཁ • ϔϧϓ • ࣄྫհ
None
None
ίʔυΛॻ͘ͷ͕͖ͳਓ • όάͷमਖ਼ • ৽ػೳͷՃ • पลπʔϧͷ։ൃ
ߩݙͯ͠Կ͕خ͍͠ͷ? ϓϩδΣΫτશମͱͯ͠... • όάͷݮগ • ৽ػೳ • ϊϋͷੵ • ...
ߩݙͯ͠Կ͕خ͍͠ͷ? ݸਓͱͯ͠ • τϥϒϧγϡʔτʹڧ͘ͳΔ o ίϛϡχςΟͷ׆༻ o ιʔείʔυͷཧղ • ੈք༗ͷαʔϏεΛؒతʹࢧ͍͑ͯΔ
o AppleɺNetflixɺPlaystation Network
ߩݙͯ͠Կ͕خ͍͠ͷ? • ͓څྉ? http://stackoverflow.com/research/developer-‐survey-‐2015
ίϛϡχςΟʔʹࢀՃ͢Δ
ίϛϡχέʔγϣϯ • userϝʔϦϯάϦετ o ΞʔΩςΫνϟσʔλϞσϦϯάͷ࣭ o ӡ༻ͷΞυόΠε o Τϥʔใࠂ •
JIRA o όάͷใࠂ o ৽ػೳͷཁ o ։ൃͷத৺ • IRC o ϝʔϦϯάϦετͷϦΞϧλΠϜ൛ o ͕࣌ࠩ
ίϛϡχέʔγϣϯ • ·ͣϝʔϦϯάϦετʹࢀՃͯ͠ΈΑ͏ o user-‐
[email protected]
ʹۭϝʔϧΛૹΔ ͚ͩɻ֬ೝϝʔϧ͕དྷͨΒฦ৴ϘλϯΛԡͯ͠ฦ ৴ɻ • ݄ʹ500௨Ҏ্ͷϝʔϧ
• ΄΅ͯ͢ͷϝʔϧʹฦ৴͋Γ
ͦ͏ݴͬͯӳޠͷน͕... • ׳ΕΔ o ϝʔϦϯάϦετΛோΊଓ͚Δ o ຖͪΐͬͱ͕ͣͭେࣄ • ਅࣅΔ o
ӳޠͰॻ͘ͱ͖ଞͷਓͷਅࣅΛ͢Δ • ؒҧ͑ؾʹ͠ͳ͍ o ੍࣌ɺ3୯ݱΑؒ͘ҧ͑Δ o ಡΜͰΔਓͷωΠςΟϒ͡Όͳ͍ o ωΠςΟϒͩͬͯؒҧ͑Δ
None
ͰͬͺΓຊޠͰ... • ຊCassandraίϛϡχςΟ o https://groups.google.com/forum/#!forum/cassandra-‐jp • ݟͯ·͢! ඞͣฦ৴͢ΔͷͰΑΖ͓͘͠ئ͍
͠·͢!
ͰͬͺΓຊޠͰ... • Qiita o http://qiita.com/tags/cassandra
ͰͬͺΓຊޠͰ... • stackoverflowຊޠ൛ o http://ja.stackoverflow.com/questions/tagged/cassandra
CassandraΛϋοΫ͢Δ
ඞཁͳπʔϧ • Java SDK o 2.1͔Β8ͰίϯύΠϧՄೳ • git • Apache
Ant • (Python 2.x) o ςετπʔϧΛಈ͔͢ͱ͖
։ൃऀ͚ ίϛϡχέʔγϣϯνϟϯωϧ • ϝʔϦϯάϦετ o
[email protected]
§ σΟεΧογϣϯ § ϦϦʔεථ
o
[email protected]
§ JIRA § git ίϛοτ • IRC o #cassandra-dev
ιʔείʔυͷऔಘͱϏϧυ • ApacheͷϨϙδτϦ͔Β $ git clone ɹhttps://git-‐wip-‐ us.apache.org/repos/asf/cassandra.git
• ϏϧυAntΛར༻ $ ant
IDEͷηοτΞοϓ • Eclipse $ ant generate-‐eclipse-‐files • IntelliJ
IDEA $ ant generate-‐idea-‐files
ίʔυΛॻ͘લʹ • CassandraͷΞʔΩςΫνϟΛཧղ͢Δ o جຊతͳߟ͑ํมΘ͍ͬͯͳ͍ § CommitLog, Memtable, SSTable etc.
o ຊޠυΩϡϝϯτ http://docs.datastax.com/ja/cassandra-jajp/2.0/cassandra/architecture/ architectureTOC.html
ίʔυΛॻ͘લʹ • ιʔείʔυΛಡΉ o ΞʔΩςΫνϟͱରԠͤ͞ͳ͕ΒಡΈਐΊΔ § ॻ͖ࠐΈ/ಡΈࠐΈ • StorageProxy.java Λىʹ
§ ΦϖϨʔγϣϯܥ • StorageService.java Λىʹ § ΫϥελϦϯά • o.a.c.locator/o.a.c.dht ύοέʔδ • cassandra-2.0 ϒϥϯν͕͓͢͢Ί o ࠷ۙύϑΥʔϚϯεΞοϓͷͨΊͷςΫχοΫ͕ ຬࡌ
ίʔσΟϯάͱςετ • CassandraίʔσΟϯάن o http://wiki.apache.org/cassandra/CodeStyle • Ϣχοτςετ o
test/unit ҎԼ͕Ϣχοτςετιʔείʔυ o Ant Λͬͯ֬ೝ $ ant test $ ant test -‐Dtest.name=CompactionsTest
ࢄڥͰͷγεςϜςετ • CassandraࢄγεςϜɻ Ͳ͏ͬͯςετ͢Δ? o ccm (Cassandra Cluster Manager) o
cassandra-dtest
ccm https://github.com/pcmanus/ccm • CassandraΫϥελΛίϚϯυϥΠϯͱ Python͔Βૢ࡞͢Δ $ ccm create -‐n
3 test_cluster $ ccm node1 stress $ ccm node2 stop
cassandra-dtest https://github.com/riptano/cassandra-‐dtest • ccmΛ༻͍ͨcassandraΫϥελςετεΠ ʔτ • ࣮ߦʹ `nose`ςετπʔϧ͕ඞཁ $
pip install nose $ nosetests repair_test.py
“Low-Hanging Fruit” • қΊͷJIRAνέοτɻ • ·ͣ LHF ͔Β͡ΊͯݟΑ͏ɻ https://issues.apache.org/jira/browse/CASSANDRA-‐8817?jql=project %20%3D%20CASSANDRA%20AND%20labels%20%3D%20%22lhf%22%20AND
%20resolution%20%3D%20Unresolved
·ͱΊ • ίʔυΛॻ͔ͳͯ͘Apache Cassandraϓ ϩδΣΫτʹߩݙͰ͖·͢ o ӳޠ͕μϝͳΒຊޠͰ! • ॻ͚ΔਓͥͻνϟϨϯδͯ͠Έͯͩ͘͞ ͍ɻ
o “LHF” ͋ΔΑ! ͓ख͍͠·͢ɻ
[email protected]