Building a CQL driver

63
#CASSANDRAEU CASSANDRASUMMITEU Theo Hultberg | Chief Architect, Burt Building a CQL driver

description

Cassandra Summit Europe 2013

Transcript of Building a CQL driver

Page 1: Building a CQL driver

#CASSANDRAEU CASSANDRASUMMITEU

Theo Hultberg | Chief Architect, Burt

Building a CQL driver

Page 2: Building a CQL driver

#CASSANDRAEU @ICONARA

Theo HultbergChief Architect at

Page 3: Building a CQL driver

#CASSANDRAEU @ICONARA

Page 4: Building a CQL driver

#CASSANDRAEU @ICONARA

I LIKE RUBYAND I LIKE CASSANDRA

Page 5: Building a CQL driver

#CASSANDRAEU @ICONARA

start_native_transport: true

Page 6: Building a CQL driver

#CASSANDRAEU @ICONARA

JUSTOPEN ASOCKET

Page 7: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 2a 01 00 00 00 1600 01 00 0b 43 51 4c 5f56 45 52 53 49 4f 4e 0005 33 2e 30 2e 30

Page 8: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 2a 01 00 00 00 1600 01 00 0b 43 51 4c 5f56 45 52 53 49 4f 4e 0005 33 2e 30 2e 30

81 00 2a 02 00 00 00 00

Page 9: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 2a 01 00 00 00 1600 01 00 0b 43 51 4c 5f56 45 52 53 49 4f 4e 0005 33 2e 30 2e 30

81 00 2a 02 00 00 00 00

Page 10: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 2a 01 00 00 00 1600 01 00 0b 43 51 4c 5f56 45 52 53 49 4f 4e 0005 33 2e 30 2e 30

81 00 2a 02 00 00 00 00

0000 0001

1000 0001

Page 11: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 2a 01 00 00 00 1600 01 00 0b 43 51 4c 5f56 45 52 53 49 4f 4e 0005 33 2e 30 2e 30

81 00 2a 02 00 00 00 00

Page 12: Building a CQL driver

#CASSANDRAEU @ICONARA

02 00 2a 01 00 00 00 1600 01 00 0b 43 51 4c 5f56 45 52 53 49 4f 4e 0005 33 2e 30 2e 30

82 00 2a 02 00 00 00 00

Page 13: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 2a 01 00 00 00 1600 01 00 0b 43 51 4c 5f56 45 52 53 49 4f 4e 0005 33 2e 30 2e 30

81 00 2a 02 00 00 00 00

Page 14: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 2a 01 00 00 00 1600 01 00 0b 43 51 4c 5f56 45 52 53 49 4f 4e 0005 33 2e 30 2e 30

81 00 2a 02 00 00 00 00

Page 15: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 2a 01 00 00 00 1600 01 00 0b 43 51 4c 5f56 45 52 53 49 4f 4e 0005 33 2e 30 2e 30

81 00 2a 02 00 00 00 00

Page 16: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 2a 01 00 00 00 1600 01 00 0b 43 51 4c 5f56 45 52 53 49 4f 4e 0005 33 2e 30 2e 30

81 00 2a 02 00 00 00 00

Page 17: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 2a 01 00 00 00 1600 01 00 0b 43 51 4c 5f56 45 52 53 49 4f 4e 0005 33 2e 30 2e 30

81 00 2a 02 00 00 00 00

Page 18: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 2a 01 00 00 00 1600 01 00 0b 43 51 4c 5f56 45 52 53 49 4f 4e 0005 33 2e 30 2e 30

81 00 2a 02 00 00 00 00

Page 19: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 2a 01 00 00 00 1600 01 00 0b 43 51 4c 5f56 45 52 53 49 4f 4e 0005 33 2e 30 2e 30

81 00 2a 02 00 00 00 00

Page 20: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 2a 01 00 00 00 1600 01 00 0b 43 51 4c 5f56 45 52 53 49 4f 4e 0005 33 2e 30 2e 30

81 00 2a 02 00 00 00 00

Page 21: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 2a 01 00 00 00 1600 01 00 0b C Q L _ V E R S I O N 0005 33 2e 30 2e 30

81 00 2a 02 00 00 00 00

Page 22: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 2a 01 00 00 00 1600 01 00 0b 43 51 4c 5f56 45 52 53 49 4f 4e 0005 33 2e 30 2e 30

81 00 2a 02 00 00 00 00

Page 23: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 2a 01 00 00 00 1600 01 00 0b 43 51 4c 5f56 45 52 53 49 4f 4e 0005 33 2e 30 2e 30

81 00 2a 02 00 00 00 00

Page 24: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 2a 01 00 00 00 1600 01 00 0b 43 51 4c 5f56 45 52 53 49 4f 4e 0005 3 . 0 . 0

81 00 2a 02 00 00 00 00

Page 25: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 2a 01 00 00 00 1600 01 00 0b 43 51 4c 5f56 45 52 53 49 4f 4e 0005 33 2e 30 2e 30

81 00 2a 02 00 00 00 00

Page 26: Building a CQL driver

#CASSANDRAEU @ICONARA

STARTUP

READY

Page 27: Building a CQL driver

#CASSANDRAEU @ICONARA

READY

{“CQL_VERSION”: “3.0.1”}

Page 28: Building a CQL driver

#CASSANDRAEU @ICONARA

OPTIONS

SUPPORTED

STARTUP

READY

Page 29: Building a CQL driver

#CASSANDRAEU @ICONARA

OPTIONS

{“CQL_VERSION”: [“3.0.0”, ...]}

STARTUP

READY

Page 30: Building a CQL driver

#CASSANDRAEU @ICONARA

OPTIONS

SUPPORTED

STARTUP

AUTHENTICATE

CREDENTIALS

READY

Page 31: Building a CQL driver

#CASSANDRAEU @ICONARA

QUERY

RESULT

Page 32: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 00 07 00 00 00 19 00 00 00 13 53 45 4c 4543 54 20 2a 20 46 52 4f 4d 20 75 73 65 72 73 0004

81 00 00 08 00 00 00 bf 00 00 00 02 00 00 00 0100 00 00 03 00 0a 6d 79 6b 65 79 73 70 61 63 6500 05 75 73 65 72 73 00 09 75 73 65 72 5f 6e 616d 65 00 0d 00 05 65 6d 61 69 6c 00 0d 00 08 7061 73 73 77 6f 72 64 00 03 00 00 00 02 00 00 0004 70 68 69 6c 00 00 00 0d 70 68 69 6c 40 69 6e74 65 72 2e 6e 65 74 00 00 00 20 5e b6 3b bb e01e ee d0 93 cb 22 bb 8f 5a cd c3 00 00 00 03 7375 65 00 00 00 0d 73 75 65 40 69 6e 74 65 72 2e6e 65 74 00 00 00 20 32 7b 6f 07 43 58 11 23 9bc4 7e 15 44 35 32 73

Page 33: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 00 07 00 00 00 19 00 00 00 13 53 45 4c 4543 54 20 2a 20 46 52 4f 4d 20 75 73 65 72 73 0004

81 00 00 08 00 00 00 bf 00 00 00 02 00 00 00 0100 00 00 03 00 0a 6d 79 6b 65 79 73 70 61 63 6500 05 75 73 65 72 73 00 09 75 73 65 72 5f 6e 616d 65 00 0d 00 05 65 6d 61 69 6c 00 0d 00 08 7061 73 73 77 6f 72 64 00 03 00 00 00 02 00 00 0004 70 68 69 6c 00 00 00 0d 70 68 69 6c 40 69 6e74 65 72 2e 6e 65 74 00 00 00 20 5e b6 3b bb e01e ee d0 93 cb 22 bb 8f 5a cd c3 00 00 00 03 7375 65 00 00 00 0d 73 75 65 40 69 6e 74 65 72 2e6e 65 74 00 00 00 20 32 7b 6f 07 43 58 11 23 9bc4 7e 15 44 35 32 73

Page 34: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 00 07 00 00 00 19 00 00 00 13 53 45 4c 4543 54 20 2a 20 46 52 4f 4d 20 75 73 65 72 73 0004

81 00 00 08 00 00 00 bf 00 00 00 02 00 00 00 0100 00 00 03 00 0a 6d 79 6b 65 79 73 70 61 63 6500 05 75 73 65 72 73 00 09 75 73 65 72 5f 6e 616d 65 00 0d 00 05 65 6d 61 69 6c 00 0d 00 08 7061 73 73 77 6f 72 64 00 03 00 00 00 02 00 00 0004 70 68 69 6c 00 00 00 0d 70 68 69 6c 40 69 6e74 65 72 2e 6e 65 74 00 00 00 20 5e b6 3b bb e01e ee d0 93 cb 22 bb 8f 5a cd c3 00 00 00 03 7375 65 00 00 00 0d 73 75 65 40 69 6e 74 65 72 2e6e 65 74 00 00 00 20 32 7b 6f 07 43 58 11 23 9bc4 7e 15 44 35 32 73

Page 35: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 00 07 00 00 00 19 00 00 00 13 S E L E C T * F R O M U S E R S 0004

81 00 00 08 00 00 00 bf 00 00 00 02 00 00 00 0100 00 00 03 00 0a 6d 79 6b 65 79 73 70 61 63 6500 05 75 73 65 72 73 00 09 75 73 65 72 5f 6e 616d 65 00 0d 00 05 65 6d 61 69 6c 00 0d 00 08 7061 73 73 77 6f 72 64 00 03 00 00 00 02 00 00 0004 70 68 69 6c 00 00 00 0d 70 68 69 6c 40 69 6e74 65 72 2e 6e 65 74 00 00 00 20 5e b6 3b bb e01e ee d0 93 cb 22 bb 8f 5a cd c3 00 00 00 03 7375 65 00 00 00 0d 73 75 65 40 69 6e 74 65 72 2e6e 65 74 00 00 00 20 32 7b 6f 07 43 58 11 23 9bc4 7e 15 44 35 32 73

Page 36: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 00 07 00 00 00 19 00 00 00 13 53 45 4c 4543 54 20 2a 20 46 52 4f 4d 20 75 73 65 72 73 0004

81 00 00 08 00 00 00 bf 00 00 00 02 00 00 00 0100 00 00 03 00 0a 6d 79 6b 65 79 73 70 61 63 6500 05 75 73 65 72 73 00 09 75 73 65 72 5f 6e 616d 65 00 0d 00 05 65 6d 61 69 6c 00 0d 00 08 7061 73 73 77 6f 72 64 00 03 00 00 00 02 00 00 0004 70 68 69 6c 00 00 00 0d 70 68 69 6c 40 69 6e74 65 72 2e 6e 65 74 00 00 00 20 5e b6 3b bb e01e ee d0 93 cb 22 bb 8f 5a cd c3 00 00 00 03 7375 65 00 00 00 0d 73 75 65 40 69 6e 74 65 72 2e6e 65 74 00 00 00 20 32 7b 6f 07 43 58 11 23 9bc4 7e 15 44 35 32 73

Page 37: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 00 07 00 00 00 19 00 00 00 13 53 45 4c 4543 54 20 2a 20 46 52 4f 4d 20 75 73 65 72 73 0004

81 00 00 08 00 00 00 bf 00 00 00 02 00 00 00 0100 00 00 03 00 0a 6d 79 6b 65 79 73 70 61 63 6500 05 75 73 65 72 73 00 09 75 73 65 72 5f 6e 616d 65 00 0d 00 05 65 6d 61 69 6c 00 0d 00 08 7061 73 73 77 6f 72 64 00 03 00 00 00 02 00 00 0004 70 68 69 6c 00 00 00 0d 70 68 69 6c 40 69 6e74 65 72 2e 6e 65 74 00 00 00 20 5e b6 3b bb e01e ee d0 93 cb 22 bb 8f 5a cd c3 00 00 00 03 7375 65 00 00 00 0d 73 75 65 40 69 6e 74 65 72 2e6e 65 74 00 00 00 20 32 7b 6f 07 43 58 11 23 9bc4 7e 15 44 35 32 73

Page 38: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 00 07 00 00 00 19 00 00 00 13 53 45 4c 4543 54 20 2a 20 46 52 4f 4d 20 75 73 65 72 73 0004

81 00 00 08 00 00 00 bf 00 00 00 02 00 00 00 0100 00 00 03 00 0a 6d 79 6b 65 79 73 70 61 63 6500 05 75 73 65 72 73 00 09 75 73 65 72 5f 6e 616d 65 00 0d 00 05 65 6d 61 69 6c 00 0d 00 08 7061 73 73 77 6f 72 64 00 03 00 00 00 02 00 00 0004 70 68 69 6c 00 00 00 0d 70 68 69 6c 40 69 6e74 65 72 2e 6e 65 74 00 00 00 20 5e b6 3b bb e01e ee d0 93 cb 22 bb 8f 5a cd c3 00 00 00 03 7375 65 00 00 00 0d 73 75 65 40 69 6e 74 65 72 2e6e 65 74 00 00 00 20 32 7b 6f 07 43 58 11 23 9bc4 7e 15 44 35 32 73

Page 39: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 00 07 00 00 00 19 00 00 00 13 53 45 4c 4543 54 20 2a 20 46 52 4f 4d 20 75 73 65 72 73 0004

81 00 00 08 00 00 00 bf 00 00 00 02 00 00 00 0100 00 00 03 00 0a 6d 79 6b 65 79 73 70 61 63 6500 05 75 73 65 72 73 00 09 u s e r _ n a m e 00 0d 00 05 e m a i l 00 0d 00 08 p a s s w o r d 00 03 00 00 00 02 00 00 0004 70 68 69 6c 00 00 00 0d 70 68 69 6c 40 69 6e74 65 72 2e 6e 65 74 00 00 00 20 5e b6 3b bb e01e ee d0 93 cb 22 bb 8f 5a cd c3 00 00 00 03 7375 65 00 00 00 0d 73 75 65 40 69 6e 74 65 72 2e6e 65 74 00 00 00 20 32 7b 6f 07 43 58 11 23 9bc4 7e 15 44 35 32 73

Page 40: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 00 07 00 00 00 19 00 00 00 13 53 45 4c 4543 54 20 2a 20 46 52 4f 4d 20 75 73 65 72 73 0004

81 00 00 08 00 00 00 bf 00 00 00 02 00 00 00 0100 00 00 03 00 0a 6d 79 6b 65 79 73 70 61 63 6500 05 75 73 65 72 73 00 09 75 73 65 72 5f 6e 616d 65 00 0d 00 05 65 6d 61 69 6c 00 0d 00 08 7061 73 73 77 6f 72 64 00 03 00 00 00 02 00 00 0004 70 68 69 6c 00 00 00 0d 70 68 69 6c 40 69 6e74 65 72 2e 6e 65 74 00 00 00 20 5e b6 3b bb e01e ee d0 93 cb 22 bb 8f 5a cd c3 00 00 00 03 7375 65 00 00 00 0d 73 75 65 40 69 6e 74 65 72 2e6e 65 74 00 00 00 20 32 7b 6f 07 43 58 11 23 9bc4 7e 15 44 35 32 73

Page 41: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 00 07 00 00 00 19 00 00 00 13 53 45 4c 4543 54 20 2a 20 46 52 4f 4d 20 75 73 65 72 73 0004

81 00 00 08 00 00 00 bf 00 00 00 02 00 00 00 0100 00 00 03 00 0a 6d 79 6b 65 79 73 70 61 63 6500 05 75 73 65 72 73 00 09 75 73 65 72 5f 6e 616d 65 00 0d 00 05 65 6d 61 69 6c 00 0d 00 08 7061 73 73 77 6f 72 64 00 03 00 00 00 02 00 00 0004 p h i l 00 00 00 0e p h i l @ i n t e r . n e t 00 00 00 20 5e b6 3b bb e01e ee d0 93 cb 22 bb 8f 5a cd c3 00 00 00 03 s u e 00 00 00 0d s u e @ i n t e r . n e t 00 00 00 20 32 7b 6f 07 43 58 11 23 9bc4 7e 15 44 35 32 73

Page 42: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 00 07 00 00 00 19 00 00 00 13 53 45 4c 4543 54 20 2a 20 46 52 4f 4d 20 75 73 65 72 73 0004

81 00 00 08 00 00 00 bf 00 00 00 02 00 00 00 0100 00 00 03 00 0a 6d 79 6b 65 79 73 70 61 63 6500 05 75 73 65 72 73 00 09 75 73 65 72 5f 6e 616d 65 00 0d 00 05 65 6d 61 69 6c 00 0d 00 08 7061 73 73 77 6f 72 64 00 03 00 00 00 02 00 00 0004 70 68 69 6c 00 00 00 0d 70 68 69 6c 40 69 6e74 65 72 2e 6e 65 74 00 00 00 20 5e b6 3b bb e01e ee d0 93 cb 22 bb 8f 5a cd c3 00 00 00 03 7375 65 00 00 00 0d 73 75 65 40 69 6e 74 65 72 2e6e 65 74 00 00 00 20 32 7b 6f 07 43 58 11 23 9bc4 7e 15 44 35 32 73

Page 43: Building a CQL driver

#CASSANDRAEU @ICONARA

QUERY

ERROR

Page 44: Building a CQL driver

#CASSANDRAEU @ICONARA

PREPARE

RESULT

EXECUTE

RESULT

EXECUTE

RESULT

EXECUTE

Page 45: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 03 09 00 00 00 2a 00 00 00 26 53 45 4c 4543 54 20 2a 20 46 52 4f 4d 20 75 73 65 72 20 5748 45 52 45 20 75 73 65 72 5f 6e 61 6d 65 20 3d20 3f

81 00 03 08 00 00 00 3e 00 00 00 04 00 10 ca 487f 1e 7a 82 d2 3c 4e 8a f3 35 51 71 a5 2f 00 0000 01 00 00 00 01 00 0a 6d 79 6b 65 79 73 70 6163 65 00 05 75 73 65 72 73 00 09 75 73 65 72 5f6e 61 6d 65 00 0d

Page 46: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 03 09 00 00 00 2a 00 00 00 26 53 45 4c 4543 54 20 2a 20 46 52 4f 4d 20 75 73 65 72 20 5748 45 52 45 20 75 73 65 72 5f 6e 61 6d 65 20 3d20 3f

81 00 03 08 00 00 00 3e 00 00 00 04 00 10 ca 487f 1e 7a 82 d2 3c 4e 8a f3 35 51 71 a5 2f 00 0000 01 00 00 00 01 00 0a 6d 79 6b 65 79 73 70 6163 65 00 05 75 73 65 72 73 00 09 75 73 65 72 5f6e 61 6d 65 00 0d

Page 47: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 03 09 00 00 00 2a 00 00 00 26 S E L E C T * F R O M u s e r W H E R E u s e r _ n a m e = ?

81 00 03 08 00 00 00 3e 00 00 00 04 00 10 ca 487f 1e 7a 82 d2 3c 4e 8a f3 35 51 71 a5 2f 00 0000 01 00 00 00 01 00 0a 6d 79 6b 65 79 73 70 6163 65 00 05 75 73 65 72 73 00 09 75 73 65 72 5f6e 61 6d 65 00 0d

Page 48: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 03 09 00 00 00 2a 00 00 00 26 53 45 4c 4543 54 20 2a 20 46 52 4f 4d 20 75 73 65 72 20 5748 45 52 45 20 75 73 65 72 5f 6e 61 6d 65 20 3d20 3f

81 00 03 08 00 00 00 3e 00 00 00 04 00 10 ca 487f 1e 7a 82 d2 3c 4e 8a f3 35 51 71 a5 2f 00 0000 01 00 00 00 01 00 0a 6d 79 6b 65 79 73 70 6163 65 00 05 75 73 65 72 73 00 09 75 73 65 72 5f6e 61 6d 65 00 0d

Page 49: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 03 09 00 00 00 2a 00 00 00 26 53 45 4c 4543 54 20 2a 20 46 52 4f 4d 20 75 73 65 72 20 5748 45 52 45 20 75 73 65 72 5f 6e 61 6d 65 20 3d20 3f

81 00 03 08 00 00 00 3e 00 00 00 04 00 10 ca 487f 1e 7a 82 d2 3c 4e 8a f3 35 51 71 a5 2f 00 0000 01 00 00 00 01 00 0a 6d 79 6b 65 79 73 70 6163 65 00 05 75 73 65 72 73 00 09 75 73 65 72 5f6e 61 6d 65 00 0d

Page 50: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 03 09 00 00 00 2a 00 00 00 26 53 45 4c 4543 54 20 2a 20 46 52 4f 4d 20 75 73 65 72 20 5748 45 52 45 20 75 73 65 72 5f 6e 61 6d 65 20 3d20 3f

81 00 03 08 00 00 00 3e 00 00 00 04 00 10 ca 487f 1e 7a 82 d2 3c 4e 8a f3 35 51 71 a5 2f 00 0000 01 00 00 00 01 00 0a 6d 79 6b 65 79 73 70 6163 65 00 05 75 73 65 72 73 00 09 75 73 65 72 5f6e 61 6d 65 00 0d

Page 51: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 03 09 00 00 00 2a 00 00 00 26 53 45 4c 4543 54 20 2a 20 46 52 4f 4d 20 75 73 65 72 20 5748 45 52 45 20 75 73 65 72 5f 6e 61 6d 65 20 3d20 3f

81 00 03 08 00 00 00 3e 00 00 00 04 00 10 ca 487f 1e 7a 82 d2 3c 4e 8a f3 35 51 71 a5 2f 00 0000 01 00 00 00 01 00 0a 6d 79 6b 65 79 73 70 6163 65 00 05 75 73 65 72 73 00 09 u s e r _ n a m e 00 0d

Page 52: Building a CQL driver

#CASSANDRAEU @ICONARA

01 00 03 09 00 00 00 2a 00 00 00 26 53 45 4c 4543 54 20 2a 20 46 52 4f 4d 20 75 73 65 72 20 5748 45 52 45 20 75 73 65 72 5f 6e 61 6d 65 20 3d20 3f

81 00 03 08 00 00 00 3e 00 00 00 04 00 10 ca 487f 1e 7a 82 d2 3c 4e 8a f3 35 51 71 a5 2f 00 0000 01 00 00 00 01 00 0a 6d 79 6b 65 79 73 70 6163 65 00 05 75 73 65 72 73 00 09 75 73 65 72 5f6e 61 6d 65 00 0d

Page 53: Building a CQL driver

#CASSANDRAEU @ICONARA

STREAM 0b

STREAM 0c

STREAM 0d

STREAM 0e

STREAM 07

STREAM 08

STREAM 09

STREAM 0a

STREAM 0f

STREAM 10

STREAM 06

STREAM 04

Page 54: Building a CQL driver

#CASSANDRAEU @ICONARA

STREAM ff EVENT

Page 55: Building a CQL driver

#CASSANDRAEU @ICONARA

THE HARD PARTIS NOT THE PROTOCOL

Page 56: Building a CQL driver

#CASSANDRAEU @ICONARA

THE DISTRIBUTED SYSTEM INCLUDES THE CLIENT

Page 57: Building a CQL driver

#CASSANDRAEU @ICONARA

×

×

Page 58: Building a CQL driver

#CASSANDRAEU @ICONARA

I GET BUGREPORTS

Page 59: Building a CQL driver

#CASSANDRAEU @ICONARA

Map: a [short] n indicating the size of the map, followed by n entries. Each entry is composed of two [short bytes] representing the key and the value of the entry map.

Page 60: Building a CQL driver

#CASSANDRAEU @ICONARA

RUBY PERFORMANCE(WAIT FOR IT)

Page 61: Building a CQL driver

#CASSANDRAEU @ICONARA

GO WRITEYOUR OWNDRIVERS

Page 62: Building a CQL driver

#CASSANDRAEU @ICONARA

github.com/iconara/cql-rb

Page 63: Building a CQL driver

#CASSANDRAEU CASSANDRASUMMITEU

Theo Hultberg | Chief Architect, Burt

Building a CQL driver