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
140
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
210
Cassandra on Kubernets- K8ssandra
cassandracommunityjp
0
550
Transaction Management on Cassandra
cassandracommunityjp
0
310
運用中システムにおける6億レコードのデータ移行に関する課題と解決
cassandracommunityjp
0
310
Cassandraの活用とその事例
cassandracommunityjp
0
470
Microsoft Azureを基盤としたライフサイエンス業界事例でのCassandra / DataStax Enterpriseの活用
cassandracommunityjp
0
200
Microsoft Azure で実現する Cassandra とその活用事例
cassandracommunityjp
0
340
Troubleshooting Apache Cassandra
cassandracommunityjp
0
320
Cassandra Summit Tokyo 2017 Keynote
cassandracommunityjp
0
390
Other Decks in Technology
See All in Technology
AWS re:Invent 2024 Recap in ZOZO - Serverless で好きなものをしゃべってみた
chongmyungpark
0
470
Oracle Cloud Infrastructure:2024年12月度サービス・アップデート
oracle4engineer
PRO
1
340
【re:Invent 2024 アプデ】 Prompt Routing の紹介
champ
1
280
多領域インシデントマネジメントへの挑戦:ハードウェアとソフトウェアの融合が生む課題/Challenge to multidisciplinary incident management: Issues created by the fusion of hardware and software
bitkey
PRO
2
130
組織に自動テストを書く文化を根付かせる戦略(2024冬版) / Building Automated Test Culture 2024 Winter Edition
twada
PRO
21
6.2k
スタートアップで取り組んでいるAzureとMicrosoft 365のセキュリティ対策/How to Improve Azure and Microsoft 365 Security at Startup
yuj1osm
0
250
10個のフィルタをAXI4-Streamでつなげてみた
marsee101
0
180
スケールし続ける事業とサービスを支える組織とアーキテクチャの生き残り戦略 / The survival strategy for Money Forward’s engineering.
moneyforward
0
120
LINEスキマニにおけるフロントエンド開発
lycorptech_jp
PRO
0
360
Oracle Cloudの生成AIサービスって実際どこまで使えるの? エンジニア目線で試してみた
minorun365
PRO
4
320
Wantedly での Datadog 活用事例
bgpat
2
850
Fearsome File Formats
ange
0
390
Featured
See All Featured
The Cult of Friendly URLs
andyhume
78
6.1k
Faster Mobile Websites
deanohume
305
30k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
26
1.9k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
1
120
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
Learning to Love Humans: Emotional Interface Design
aarron
274
40k
A Philosophy of Restraint
colly
203
16k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.1k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.5k
Bash Introduction
62gerente
609
210k
Fireside Chat
paigeccino
34
3.1k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
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]