Presentation is loading. Please wait.

Presentation is loading. Please wait.

Alternatives to the shackles of limited scale in data solutions Andy Cross Windows Azure MVP Elastacloud.

Similar presentations


Presentation on theme: "Alternatives to the shackles of limited scale in data solutions Andy Cross Windows Azure MVP Elastacloud."— Presentation transcript:

1 Alternatives to the shackles of limited scale in data solutions Andy Cross Windows Azure MVP Elastacloud

2

3 The Cloud for Modern Business Grab your benefit aka.ms/azuretry Deploy fast in the cloud, scale elastically and minimize test cost Activate your Windows Azure MSDN benefit at no additional charge aka.ms/msdnsubs cr

4

5

6

7

8 IBM have been a leader in Big Data for years. Wikimedia commons

9

10

11

12

13

14

15

16

17

18

19

20 C# integration Remote Data & Jobs Hive in C# Serialization

21 public class SwedishSessionsJob : HadoopJob { public override HadoopJobConfiguration Configure(ExecutorContext context) { var config = new HadoopJobConfiguration() { InputPath = "\"/AllSessions/*.gz\"", OutputFolder = "/SwedishSessions/" }; return config; }

22 public class SwedishSessionsMapper : MapperBase { public override void Map(string inputLine, MapperContext context) { if (inputLine.Contains("Country=Sweden") { context.IncrementCounter("SwedishSession"); context.EmitKeyValue(“SE", "1"); }

23 public class SessionsReducer : ReducerCombinerBase { public override void Reduce(string key, IEnumerable values, ReducerContext context) { context.EmitKeyValue(key, values.Count()); }

24 var inputData = "Country=Sweden&Name=Magnus"; var result = StreamingUnit.Execute (new[]{inputData}); Assert.AreEqual("SE\t1", result.ReducerResult.First());

25 Your existing development team can immediately realise value The frameworks facilitate deterministic testing for highly reliable queries Complex logic is best expressed in programmatic form

26 Provision Execute De-provision

27 * Tools are great but not friendly

28

29 { "_id" : ObjectId("51fccc57f82352d76653bdae"), "Name" : { "FirstName" : "Owen", "LastName" : "Grzegorek" }, "Company" : "Howard Miller Co", "Address" : { "Line1" : "15410 Minnetonka Industrial Rd", "Line2" : "Minnetonka", "Line3" : "Hennepin", "Line4" : "MN", "Line5" : "55345" }, "ContactDetails" : { "Phone" : "952-939-2973", "Fax" : "952-939-4663", "Email" : "owen@grzegorek.com", "Web" : "http://www.owengrzegorek.com" } { "_id" : ObjectId("51fccc57f82352d76653bdae"), "Name" : { "FirstName" : "Owen", "LastName" : "Grzegorek" }, "Company" : "Howard Miller Co", "Address" : { "Line1" : "15410 Minnetonka Industrial Rd", "Line2" : "Minnetonka", "Line3" : "Hennepin", "Line4" : "MN", "Line5" : "55345" }, "ContactDetails" : { "Phone" : "952-939-2973", "Fax" : "952-939-4663", "Email" : "owen@grzegorek.com", "Web" : "http://www.owengrzegorek.com" } { "_id" : ObjectId("51fccc57f82352d76653bdae"), "Name" : { "FirstName" : "Owen", "LastName" : "Grzegorek" }, "Company" : "Howard Miller Co", "Address" : { "Line1" : "15410 Minnetonka Industrial Rd", "Line2" : "Minnetonka", "Line3" : "Hennepin", "Line4" : "MN", "Line5" : "55345" }, "ContactDetails" : { "Phone" : "952-939-2973", "Fax" : "952-939-4663", "Email" : "owen@grzegorek.com", "Web" : "http://www.owengrzegorek.com" } { "_id" : ObjectId("51fccc57f82352d76653bdae"), "Name" : { "FirstName" : "Owen", "LastName" : "Grzegorek" }, "Company" : "Howard Miller Co", "Address" : { "Line1" : "15410 Minnetonka Industrial Rd", "Line2" : "Minnetonka", "Line3" : "Hennepin", "Line4" : "MN", "Line5" : "55345" }, "ContactDetails" : { "Phone" : "952-939-2973", "Fax" : "952-939-4663", "Email" : "owen@grzegorek.com", "Web" : "http://www.owengrzegorek.com" } { "Name" : { "FirstName" : "Owen", "LastName" : "Grzegorek" }, "Company" : "Howard Miller Co", "Address" : { "Line1" : "15410 Minnetonka Industrial Rd", "Line2" : "Minnetonka", "Line3" : "Hennepin", "Line4" : "MN", "Line5" : "55345" }, "ContactDetails" : { "Phone" : "952-939-2973", "Fax" : "952-939-4663", "Email" : "owen@grzegorek.com", "Web" : "http://www.owengrzegorek.com" } { "Name" : { "FirstName" : "Owen", "LastName" : "Grzegorek" }, "Company" : "Howard Miller Co", "Address" : { "Line1" : "15410 Minnetonka Industrial Rd", "Line2" : "Minnetonka", "Line3" : "Hennepin", "Line4" : "MN", "Line5" : "55345" }, "ContactDetails" : { "Phone" : "952-939-2973", "Fax" : "952-939-4663", "Email" : "owen@grzegorek.com", "Web" : "http://www.owengrzegorek.com" } { "Name" : “Richard Conway", “Books Published” : “12”, “Specialises in” : “Data Science” } { "Name" : “Andy Cross", “Hometown" : “Blackpool“ } { "Name" : “Isaac Abraham", “Age" : “33“ “Football Team” : “Tottenham” “Icon” : }

30

31

32

33 There are many different way to connect with MongoDB from a.net project. Official Wrapper Alternative Tool

34 public class Book { public string Author { get; set; } public string Title { get; set; } } // "entities" is the name of the collection var books = database.GetCollection ("books"); Book book = new Book { Author = "Ernest Hemingway", Title = "For Whom the Bell Tolls" }; books.Insert(book);

35 BsonDocument person = new BsonDocument { { "name", "John Doe" }, { "address", new BsonDocument { { "street", "123 Main St." }, { "city", "Centerville" }, { "state", "PA" }, { "zip", 12345} }} }; var people = database.GetCollection ("people"); people.Insert(person);

36

37

38

39

40 http://www.apcjones.com/arrows/#

41

42 Open source Neo4j Client

43 var query = neo4Jclient.Cypher.Start(new { sweden = Node.ByIndexLookup("countryIdx", "country", "sweden") }).Match("sweden-[:FRIENDS]->friend-[:FRIENDS]->friendoffriend").Return >("friendoffriend");

44

45

46 Info@elastacloud.com


Download ppt "Alternatives to the shackles of limited scale in data solutions Andy Cross Windows Azure MVP Elastacloud."

Similar presentations


Ads by Google