Presentation is loading. Please wait.

Presentation is loading. Please wait.

Use the Fork Luke. Who Cares About ANSI? 2005 OSCON -> 1/(20+)

Similar presentations

Presentation on theme: "Use the Fork Luke. Who Cares About ANSI? 2005 OSCON -> 1/(20+)"— Presentation transcript:

1 Use the Fork Luke

2 Who Cares About ANSI?

3 2005 OSCON -> 1/(20+)

4 Custom Advisory Board 2005 (the customers who cared about 5.0 were Embedded)

5 Do Not Live in the Past

6 Master Plan

7 Rethink Everything

8 Do not assume everything was bad.

9 Focus

10 Drop ERP (90s style applications) Drop Data Warehousing Drop Analytic

11 Focus On Web Applications

12 MySQL Market is now just entering 16 Core.

13 Do not play catchup. Leap forward.

14 Library of Congress is just 26 Terabytes.

15 The world is 64bit, and there is a lot of RAM. (SSD will be common in two years.)

16 MicroKernel Move code to the Edge No new features in core To add interfaces you have to remove == amount of code

17 Multi-Core No new locks Remove old locks Think today: Burn memory (copy on write) Messages scales.

18 (Dont lose or corrupt data) ACID Compliant Transactional

19 Innodb is our Default Engine (If Maria or PBXT turn out to be faster, we will switch. Transactional/Performance matter.)

20 We have no... Stored Procedures Views Triggers No Query Cache

21 We may though...

22 SPs through Real Languages

23 Views are useful, but not when materialized

24 Triggers no, but maybe Callbacks...

25 Prepared Statements are out. (no one uses them, they blow up the server)

26 What we are doing... No required authentication (think http) Round Trip Serialized SQL Make SQL Injection harder

27 Dump ACL We authenticate in clouds. KISS PAM (Pluggable Authentication Modules) No cost authentication

28 Authorization is coming...

29 Do people really sort blobs?

30 Field Types Less primitives We just now have blob Weakly Typed. 3 byte int? (See Slashdot Comment Problem) Think UUID/IPV4(6)/SERIAL... ENUM tosses an error if a wrong value is inserted.

31 Интернет является UTF-8. Web UTF - 8 The Web is UTF-8.

32 UTF-8 Protocol is UTF-8. We store in UTF-8. (default collation is still up for grabs)

33 Recycle (be lazy, re-use libraries)

34 Reuse many eyeballs PCRE today (not REGEX) No shipped libraries Maybe ICU? libatomic-ops? Intel Building Blocks? talloc()? glib()? Proto-buffers.

35 Maintenance Matters (Refactoring is valuable and necessary)

36 In with the New C99 (types for C++ code) Posix Package-lib STL is in.

37 TABLE != Table (we are going from C+ to C++)

38 How big is it? 6.0.5-alpha:1,128,112 5.1.25-rc: 1,009,108 5.0.51b: 999,382 Drizzle: 315,560 generated using David A. Wheeler's 'SLOCCount'.

39 Performance Matters (we all want race cars)

40 Scale Out Optimizer (OLTP) Execution Engine

41 Transparency + Edge

42 LaunchPad Forking is good, no emailed patches. Anyone can create an account. Transparency by Launchpad staff.

43 Buildbot 26 Active platforms. Anyone can sign up a new platform. Completely distributed.

44 Open Source All internal and external contributors are equal. Captains handle trees, karma gets you in Those who commit are Janitors. Those who only work on their own code are not Captains. Changes are sent to mailing list. Fuzzy ++ system used (negatives are weighed more heavily)

45 30+ Languages (within 3 months)

46 Code Drives Decisions

47 Requirement for Release All Incompatible Changes are completed. (and more require upgrades to version) All tests work. New code additions are fine (think Linux Kernel)

48 Where is the Money? Support Embedded Non-Recurring Engineering Periphery (no crippleware) Hardware

49 Innovation Happens Elsewhere

50 Patrick Galbraith (Principle Engineer/Lycos) Antony Curtis (Google) Transactional Multi-System Integrated Performance Federated X

51 Transport Eric Day (Architect XO) Asynchronous Multi-protocol Partionalable

52 Distributed Query Cache Toru Maesake (Research Engineer/ Non-locking Cloud Distributed (Memcached) Pluggable

53 Where are we going?

54 Today Client2ClientN Connection Thread Pool Parser Query101101 Client1 Optimizer Storage Engines InnoDB MyISAM MERGE MEMORY ARCHIVE Query Cache

55 Tomorrow Client2ClientN Routing Proxies Parser Query101101 Client1 Optimizer Query Memcached Cache Parser Query101101 Optimizer Storage Routing SQL & REST

56 So how do I get involved? bzr branch lp:drizzle (mailing list) Freenode #drizzle

Download ppt "Use the Fork Luke. Who Cares About ANSI? 2005 OSCON -> 1/(20+)"

Similar presentations

Ads by Google