Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Riak && Riak CS

E1923013dacab39eb231a2fffbf7b33c?s=47 UENISHI Kota
December 12, 2012

Riak && Riak CS

第五回クラウドストレージ研究会でのスライド

E1923013dacab39eb231a2fffbf7b33c?s=128

UENISHI Kota

December 12, 2012
Tweet

Transcript

  1. Riak && Riak CS 2012/12/12 Ϋϥ΢υετϨʔδݚڀձ

  2. •্੢߁ଠ @kuenishi •@BashoJapan #riakjp •෼ࢄγεςϜͷݚڀ΍։ൃΛ5೥͘Β͍ •೔ຊ๏ਓ͕9݄ʹͰ͖ͨ •೔ຊޠML riak-users-jp ͓લɺ୭Α

  3. ۓٸΞϯέʔτ • RiakΛฉ͍ͨ͜ͱ͕͋Δ [Y/y]? • Riak CSΛฉ͍ͨ͜ͱ͕͋Δ [Y/n]? • xxxx

    ClusterΛ࢖ͬͨ͜ͱ͕͋Δ [Y/n]? • H**se΍Ca**draͰۤ͠Μͩ͜ͱ͕͋Δ [Y/n]? • AWS S3Λ࢖͍ͨͯ͘΋࢖͑ͳ͍ [Y/n]?
  4. None
  5. • DynamoʹΠϯεύΠϠ͞Εͨ • Consistent HashingʹΑΓਫฏ෼ࢄ͢Δ • Vector ClocksΛ༻͍ͯϨϓϦέʔγϣϯ͠ • Erlang/OTPͰಈ࡞͢Δ

    • ෼ࢄKVSͰ͋Δ WikiPedia: Vector Clocks
  6. Riakͷ͍͍ͱ͜Ζ • ߴՄ༻ੑ • εέʔϧΞ΢τ͢Δ • ӡ༻ָ͕ʢͱ͍ΘΕ͍ͯΔʣ • Ϛελʔ͕͍ͳ͍ •

    ʢNoSQLͷׂʹʣ࣮੷͕͋Δ • ୔ࢁͷΫϥΠΞϯτ(Ruby, Java, Python, PHP, Perl, OCaml, Haskell, .NET, ...) • ErlangͰಈ͘
  7. Riakͷ࢒೦ͳͱ͜Ζ • ଎͘͸ͳ͍ • τϥϯβΫγϣϯͰ͖ͳ͍ • 10000୆ͩͱଟ෼ಈ͔ͳ͍ • ΞϓϦઃܭ͕*SQL΄Ͳ؆୯Ͱͳ͍ •

    ErlangͰॻ͔Ε͍ͯΔ
  8. DEMO 1 • GET, PUT, DELETEͯ͠ΈΔ • ը૾Λͦͷ··ஔ͚Δ

  9. DEMO 2 • SQL୅ΘΓͷMapReduce • JavaScriptͰͦΕͳΓʹ͍Ζ͍ΖͰ ͖Δ • https://gist.github.com/4202161

  10. DEMO 3 • Non-stop upgrade • ίʔυΛॻ͖׵͑ͯࢭΊͣʹߋ৽ • ௨ৗ࣌͸ඇਪ঑͕ͩۓٸ࣌ʹॏๅ •

    ྫ: Scaling Riak in Production
  11. riak_control

  12. ࢖͍Ͳ͜Ζ • 1୆ͷ෺ཧϚγϯʹ ऩ·Βͳ͍έʔε • εϞʔϧελʔτ͠ ͍ͨͱ͖ • Մ༻ੑ͕τοϓཁ݅ ͷ࣌

    • σʔλϞσϧΛKey, ValueʹͰ͖Δͱ͖ • Ad Networks • Digital Media • On-Line Games • Social Networks • Social Analysis • Cloud Operators • Messaging Services • Product Catalogs • Document Management • Health Care Information Management
  13. Health Information Management Danish Health Services Clinical care teams, insurance

    companies, pharmacists, employers will benefit from a more holistic view of someone's current state of health. Creates a comprehensive drug treatment history, available securely to patients, doctors and medical systems on any device, at any time •2012೥1݄ͷDevSummitʹͯAT&T ͕mHealthΛ঺հ •։ൃऀɺΞϓϦɺ୺຤Λܨ͙PaaSͷΤίγεςϜΛ ߏங •Withings, FitBit, MyZeoΛؚΉαʔυύʔςΟ୺຤ •ϢʔβɺτʔΫϯɺΞϓϦέʔγϣϯɺϔϧεϝτ ϦοΫεͳͲΛRiakʹอଘ •HIPAAͱ HL7ʹ४ڌ •550ສਓͷσϯϚʔΫࠃຽͷॲํᝦʹؔ͢Δ৘ใΛอଘ •HIPAAಉ౳ͷίϯϓϥΠΞϯεཁ݅ •OracleιϦϡʔγϣϯʹൺ΂95%҆Ձ •MySQLʹൺ΂4ഒߴ଎ •NoSQLͷ࢖༻Λ༏ઌ͢Δ͜ͱͰDBA͕ෆཁͷͨΊӡ༻ί ετΛ௿ݮ AT&T
  14. Comlplex Event Management Provides advanced malware analysis and protection using

    big data to discover, understand and block malware outbreaks, APTs, and targeted attacks. Ensures Norton On-Line users have an always-on, integrated experience that securely interfaces a device with the cloud maintaining critical data •֦ுੑͱ҆ఆੑͷ໘͔ΒRiakΛબ୒ •RiakͷΞυόϯευػೳʢRiakαʔνɺ2i (ηΧϯ μϦʔΠϯσοΫε)Λ࣮૷ •Ϋϥ΢υϕʔεαʔϏε͸ɺσόΠεΤʔδΣϯ τ͔ΒϚϧ΢ΣΞʹؔ͢ΔσʔλΛऩू •1MBҎԼͷΦϒδΣΫτͷwrite-intensiveॲཧ •ଞͷ஍ҬͷαϙʔτͷͨΊʹ֦ுத •γεςϜμ΢ϯͷഉআͷͨΊʹOracle͔Β Riak΁Ϧϓ Ϩʔε •ϓϥΠϚϦʔαʔϏε͸ɺϢʔβొ࿥σʔλͷอଘɺ ಉظσʔλͷอଘ΍ϙϦγʔσʔλͷอଘͳͲ •ηΧϯμϦʔαʔϏε͸ɺ “event service”ͷͨΊΠϕϯ τϩάͷอଘɺαʔνɻOracle͔ΒͷϚΠάϨʔγϣϯ •֤ςφϯτ͕֤ࣗͷϙϦγʔΛ࣋ͭચ࿅͞Εͨঝೝ؅ ཧΛཁٻ͞ΕΔ Symantec Corp. Sourcefire, Inc.
  15. Erlangͱleveldb, v8, bitcask͕ಈ͚͹େ఍ಈ͘ Packages: FreeBSD, RHEL, Debs, CentOS, Ubuntu, OpenSolaris,

    and a few more. ιʔε͔ΒϏϧυ͢Δ৔߹͸Erlang΍gcc΍Β gmake΍Β͕ඞཁ OS/Platforms/Software
  16. Upgrades • 2ίલ·Ͱͷޓ׵ੑΛςετ (1.2͸1.1, 1.0· Ͱςετ) • ϊʔυΛॱ܁ΓʹΞοϓάϨʔυ͍ͯͩ͘͠ ͚ʢશମΛࢭΊΔඞཁ͸ͳ͍ʣ •

    Puppet΍ChefͰͰ͖Δͱ͔Ͱ͖ͳ͍ͱ͔…
  17. ʲ※ະঝ୚ʳ঎༻൛ •DCؒϨϓϦέʔγϣϯ •SNMP, JMXίϯιʔϧ •͋ͱ͸ಉ͡

  18. None
  19. None
  20. • Amazon S3 ෩ΦϒδΣΫτετϨʔδ • ΄΅ޓ׵ • σʔλ͸શͯRiakʹ֨ೲ͞ΕΔ • ࠷େ5GBͷϑΝΠϧΛ1MBͷνϟϯΫʹ෼ׂ͠

    ͯอଘ
  21. Riak CSͷ͍͍ͱ͜Ζ • εςʔτϑϧͳ৘ใ͸શͯRiakʹอଘ • ϓϩηε͸εςʔτϨε • SPOFతͳϓϩηε͕͍Δ͕εςʔτϨεͳͷ Ͱӡ༻ָ͕ •

    ӡ༻ָ͕ʢͱ͍ΘΕ͍ͯΔʣ • EDSͱซ༻ͯ͠DCؒϨϓϦέʔγϣϯ • ErlangͰಈ͘
  22. Riak CSͷ࢒೦ͳͱ͜Ζ • ޮ཰͸Α͘ͳ͍ • AWSͰͰ͖ΔͷʹCSͰͰ͖ͳ͍ػೳ͸ͦΕͳΓ ʹ͋ΔʢtorrentͳͲʣ • 10000୆ͩͱଟ෼ಈ͔ͳ͍ •

    ErlangͰॻ͔Ε͍ͯΔ
  23. DEMO 1 • GET, PUT, DELETEͯ͠ΈΔ • ը૾Λͦͷ··ஔ͚Δ

  24. S3ʹͳ͍΋ͷ • Provisioning API • POST User - Create a

    user account • Reporting API • GET Usage - Get user access and storage data
  25. WIP •Multipart Upload •Bucket Policy •A lot of minor improvements

  26. Q&A