Future platform for internet of things

38
Future platform for Future platform for Internet of things Internet of things Dmitry Namiot Dmitry Namiot [email protected] [email protected] Lomonosov Moscow State Lomonosov Moscow State University University BCFIC 2011 BCFIC 2011

description

Future platform for internet of things and development tools - presentation from bcfic.org

Transcript of Future platform for internet of things

  • 1. Future platform for Internet of things Dmitry Namiot [email protected] Lomonosov Moscow State University BCFIC 2011
  • 2. Future platform
    • As per Wikipedia, the Internet of Things (also known as the Internet of Objects) refers to the networked interconnection of everyday objects
    • It is generally imagined as a self-configuring wireless network of sensors whose purpose would be to interconnect all things.
  • 3. Future platfrom
    • It is simply a paradigm changing. From anytime, any place connectivity for anyone, we will now have connectivity for anything
    • T he number of communications-enabled devices will run into tens of billions. One widely quoted statistic is a figure of 50 billion devices by 2010 versus 6.5 billion people.
  • 4. Future platform
  • 5. Future platform
    • There are more than enough futuristic scenarios but one question is constantly missed
    • Developers, development tools and deployment
    • Who and how will put that in production?
  • 6. Future platform
    • Microsoft CEO Steve Ballmer's famous video " Developers, Developers, Developers! "
    • CEO of Nokia Elop: Developers bring the ecosystem to life and allow us to compete effectively all over the world."
  • 7. Future platform
    • the only thing you can save is a time Karl Marx, Capital
  • 8. Future platform
    • time to market ( TTM ) is the length of time it takes from a product being conceived until its being available for sale. (Wikipedia)
    • Key indicator: how does our development tool affect TTM for the products
  • 9. Future platform
    • Some recent examples:
    • Parlay solves interoperability, does not affect (or even negative affect) TTM no chances to survive
    • HTML5 vs. native applications. Speed of development (deployment) vs. access to the rich features
  • 10. Future platform
    • CTO of Facebook: Facebook has been feeling some pain in supporting so many different platforms. If the company wants to roll out a new feature, it has to add it on Facebook.com, across its various mobile and tablet websites, and across its multiple mobile applications
  • 11. Future platform
    • Over the long term, most people really view HTML5 as the future platform that were going to be looking to
    • What is saved here actually: it is time again
    • So let us review the existing (and demanded) tools keeping this criteria in mind
  • 12. Future platform
    • The modern mobile phones are simple and small examples of that ubiquitous computing only.
    • With the connectivity for anything we need to scale the whole systems dramatically.
  • 13. Future platofrm
    • Nowadays we have people posted data into social networks (and getting information from the same networks).
    • And what happened when/if some (many, all) things around become social too?
    • They (things, devices) need to be social. We as the human in the modern Internet (old internet) are getting more and more information via the social networks. So there is simply no other way for things they should go social too.
  • 14. Future platform
    • And very important: it is not about the traffic. Traffic is an issue for video. But there are no processing just streaming.
    • And social network is not only traffic. It is (on the technical level) about the programming connections, social graphs etc.
    • It is where we need development tools
  • 15. Future platform
    • Sometimes people are talking about two types of tasks Internet of things, as a net of devices and Semantic web as a set of readable data (including data from devices too).
  • 16. Future platform
    • From this point of view Internet of things is mostly about connections and Semantic web is mostly about data and addressing of things.
    • I think it is not correct. They (data) should not be separated. Internet of things is not about networking at all .
  • 17. Future platform
    • It is all about getting data from things and make them available for everyone everywhere
    • And what is important not only available via some predefined applications but also available for the future custom processing. Even the processing we unaware about at this moment.
  • 18. Future platform
    • Lets us see to the requirements from the future services from the technical point of view.
    • Internet of things is by the definition the connection of many separate devices that could be either pulled for the new data or publish some new data (e.g. measurements) by themselves.
  • 19. Future platform
    • From the technical point of view it means only one thing - scalability.
    • Our future architecture and its implementation should be ready at the first hand to support more requests; it should be able to work on the much more requests per seconds levels.
  • 20. Future platform
    • The key moment the scalability for all.
    • Right now: site -> scalable solution (cluster) -> application platform
    • Futute: platform for all. By default. The whole web is an application platform
  • 21. Future platform
    • As soon we entering into our system some artificial elements (e.g. measurement devices, sensors etc.) we can predict much higher level of requests but:
    • we can not predict the stable levels for those new request. We simple need to expect that the level of requests could be varied in the relatively big boundaries.
  • 22. Future platform
    • Today DDOS
    • Tomorrow just a peak for sensors in the network
    • Detection should be automated
  • 23. Future platform
    • In the most cases our system will get write requests for saving raw data from our things.
    • And it will get read requests from the analytical systems either for getting raw data for the future processing or for the updating some analytical information.
  • 24. Future platform
    • What kind of actions caused the main loading for the current social networks?
    • Any forms of status changing from the participants (user writes a new message, sends friends requests, posted photo, changed place etc.)
    • We will see absolutely the same picture with our sensors. Just with the big multiplications.
  • 25. Future platform
    • The main difference from the current state: lack of the predefined structures.
    • We will have many different things in our system the task for presenting/saving data within some common (one size fits all) schema is absolutely useless.
    • We have to have deal with the schema-less data.
  • 26. Future platform
    • Because our data is schema-less and they will present completely different systems (think for example about the different sensors) we need some solutions for describing metadata.
    • Simply, having in our persistent store a lot of various measurements for example we should be able to say what means what, what kind of measurements we have in our store etc.
  • 27. Future platform
    • And as soon as new set of sensors (read -measurements) could be connected any time we need some way to describe that new set of data.
    • It means that our data should be self-descriptive - each record/chunk of records contains not only raw data but a metadata too
  • 28. Future platform
    • Now let us talk about the possible processing for data.
    • As soon as we spoke above about socializing connected things we should think about the same types of the processing (on the abstract level) the modern social networks have right now.
  • 29. Future platform
    • Right now there are two main things: requests over the social graph and open API for data access.
    • Mapping these things to our net of connected devices we can define two elements: request mashups for measured data and again open API for data access.
  • 30. Future platform
    • Wikipedia highlights the clear benefits of mashups.
    • In Web development, a mashup is a Web page or application that uses and combines data, presentation or functionality from two or more sources to create new services.
  • 31. Future platform
    • Most of the modern web development examples are mashups
    • There is simply no other way to go for the future platform
  • 32. Future platform
    • The term implies easy, fast integration, frequently using open APIs (an interface implemented by a software program that enables it to interact with other software) and data sources to produce enriched results that were not necessarily the original reason for producing the raw source data .
  • 33. Future platform
    • Yahoo Pipes
    • The simplest mashups platform
    • Underestimated by the community
    • Could be a great prototype
  • 34. Future platform
    • As per API. Here we will practically stay on the same level, just because the education for developers is much more conservative.
    • We will see the same REST based approach, where JSON based data will prevail. And the main advantages that will drive JSON - simplicity for its processing in the most languages
  • 35. Future platform
    • Server side: Hadoop and all the associated solution (like Hbase, Hive and similar projects) will thrive. Measurements data are always good candidates for the MapReduce relatively simple, independent and good adopted for the parallel processing. Like the current classical examples with log files processing.
  • 36. Future platform
    • Cloud computing.
    • Getting out of the marketing things is a way for obtaining resources dynamically. If we are talking about the web applications is a way for obtaining either extra CPU cycles needed for serving exceeding requests or extra memory for saving exceeding data.
  • 37. Future platform
    • Leading platforms:
    • - Amazon (EC2 for CPU cycles, S3 for storage, Cloudfront for Content Distribution etc.)
    • - Google App Engine
    • Amazons things are easy to use, where Googles approach could be more flexible, but requires more programming.
    • There are no high level tools for both approaches!
  • 38. Summary
    • Point attention to the problem: future platform creates a demand for new development tools too
    • Todays social networks programming and implementations as prototypes
    • Role of mashups
    • Telecom and Internet companies are in equal positions