Srinath Perera

Srinath Perera

Sri Lanka
3K followers 500+ connections

About

I design systems and take apart their designs for a living. I do the same with ideas…

Articles by Srinath

See all articles

Contributions

Activity

Join now to see all activity

Experience

Education

Volunteer Experience

  • University of Moratuwa Graphic

    Board Member, Faculty of Business

    University of Moratuwa

    - Present 7 years 2 months

    Science and Technology

  • Research Scientist

    Lanka Sofware Foundation (LSF)

    - Present 21 years

    Science and Technology

    LSF is a “not for profit” organization with the vision of positioning Sri Lanka as a “global Free and Open Source (FOSS) Research & Development hub”. LSF has successfully incubated global open source projects such as; Apache Axis 2 C++, Apache Axis2 Java; a Disaster Management System by the name of Sahana and we also contributed to Apache Geronimo. From the projects that we incubated, two commercial companies have been formed - WSO2 (www.wso2.com) and Respere (www.respere.com).

  • SLIIT Graphic

    Department Industry Consultative Board (DICB)

    SLIIT

    Education

  • SLASSCOM (Sri Lanka Association for Software and Services Companies) Graphic

    Technical Committee Member

    SLASSCOM (Sri Lanka Association for Software and Services Companies)

    - Present 10 years

    Science and Technology

Publications

  • Hadoop MapReduce v2 Cookbook

    Packt Publishing

    Explore the Hadoop MapReduce v2 ecosystem to gain insights from very large data-sets.

    Other authors
    See publication
  • Wihidum: Distributed complex event processing

    Journal of Parallel and Distributed Computing

    In the last few years, we have seen much interest in data processing technologies. Although initial interests focused on batch processing technologies like MapReduce, people have realized the need for more responsive technologies such as stream processing and complex event processing. Complex event processing has been historically used within a single node or a cluster of tightly interconnected nodes. However, to be effective with Big Data use-cases, CEP technologies need to be able to scale up…

    In the last few years, we have seen much interest in data processing technologies. Although initial interests focused on batch processing technologies like MapReduce, people have realized the need for more responsive technologies such as stream processing and complex event processing. Complex event processing has been historically used within a single node or a cluster of tightly interconnected nodes. However, to be effective with Big Data use-cases, CEP technologies need to be able to scale up to handle large use-cases. This paper presents several approaches to scale complex event processing by distributing it across several nodes. Wihidum discusses how to balance the workload among nodes efficiently, how complex event processing queries can be broken up into simple sub queries, and how queries can be efficiently deployed in the cluster. The paper focuses on three techniques used for scaling queries: pipelining, partitioning and distributed operators. Then it discusses in detail the distribution of few CEP operators: filters, joins, pattern matching, and partitions. Empirical results show that the techniques followed in Wihidum have improved the performance of the CEP solution.

    Other authors
    • Sachini Jayasekara
    • Sameera Kannangara
    • Tishan Dahanayakage
    • Isuru Ranawaka
    • Vishaka Nanayakkara
    See publication
  • The Evolution of MapReduce and Hadoop

    DZone's 2014 Guide to Big Data

    Other authors
    • Adam Diaz
    See publication
  • Solving the Grand Challenge Using an Opensource CEP engine

    8th ACM International conference on Distributed Event Based System (DEBS)

    The DEBS Grand Challenge is an annual event in which different event-based systems compete to solve a real-world problem. The 2014 challenge is to demonstrate scalable real- time analytics using high-volume sensor data collected from smart plugs over a one and a half month period. This paper aims to show how a general-purpose commercially available event-based system - the WSO2 Complex Event Processor (WSO2 CEP) - was used to solve this problem. We achieved 400K throughput for single node and…

    The DEBS Grand Challenge is an annual event in which different event-based systems compete to solve a real-world problem. The 2014 challenge is to demonstrate scalable real- time analytics using high-volume sensor data collected from smart plugs over a one and a half month period. This paper aims to show how a general-purpose commercially available event-based system - the WSO2 Complex Event Processor (WSO2 CEP) - was used to solve this problem. We achieved 400K throughput for single node and came close to one million throughput with four nodes. In addition, we explore areas where we created extensions to the WSO2 CEP engine to better solve the challenge.

    Other authors
    See publication
  • Improved Server Architecture for Highly Efficient Message Mediation

    ACM paper (Accepted. To be presented at IIWAS 2013, Vienna Austria)

    Mediation is an important tool used in systems built by aggregating many components together, and it is considered to be a key element of SOA. Typically, each message mediated by an ESB undergoes several parse and copy operations thereby incurring a severe performance penalty.
    This paper presents several optimizations to ESB design that enable lower-overhead message mediation by reducing processing requirements, eliminating buffer copies, and facilitating network-level data transfers…

    Mediation is an important tool used in systems built by aggregating many components together, and it is considered to be a key element of SOA. Typically, each message mediated by an ESB undergoes several parse and copy operations thereby incurring a severe performance penalty.
    This paper presents several optimizations to ESB design that enable lower-overhead message mediation by reducing processing requirements, eliminating buffer copies, and facilitating network-level data transfers. We also detail the performance gains that we have been able to achieve – close to two orders of magnitude in some cases – in a redesign of a popular implementation.

    Other authors
    See publication
  • Instant MapReduce Patterns

    Packet Publishing

    Instant MapReduce Patterns – Hadoop Essentials How-to is a concise introduction to Hadoop and programming with MapReduce. It is aimed to get you started and give you an overall feel for programming with Hadoop so that you will have a well-grounded foundation to understand and solve all of your MapReduce problems as needed.

    Instant MapReduce Patterns – Hadoop Essentials How-to will start with the configuration of Hadoop before moving on to writing simple examples and discussing MapReduce…

    Instant MapReduce Patterns – Hadoop Essentials How-to is a concise introduction to Hadoop and programming with MapReduce. It is aimed to get you started and give you an overall feel for programming with Hadoop so that you will have a well-grounded foundation to understand and solve all of your MapReduce problems as needed.

    Instant MapReduce Patterns – Hadoop Essentials How-to will start with the configuration of Hadoop before moving on to writing simple examples and discussing MapReduce programming patterns.

    We will start simply by installing Hadoop and writing a word count program. After which, we will deal with the seven styles of MapReduce programs: analytics, set operations, cross correlation, search, graph, Joins, and clustering. For each case, you will learn the pattern and create a representative example program. The book also provides you with additional pointers to further enhance your Hadoop skills.

    See publication
  • Hadoop MapReduce Cookbook

    Packt Publishing

    A one-stop guide to processing large and complex data sets using the Hadoop ecosystem. "Hadoop MapReduce Cookbook" introduces you to simple examples and then dives deep to solve in-depth big data use cases.

    "Hadoop MapReduce Cookbook" presents more than 50 ready-to-use Hadoop MapReduce recipes in a simple and straightforward manner, with step-by-step instructions and real world examples. Start with how to install, then configure, extend, and administer Hadoop. Then write simple examples,…

    A one-stop guide to processing large and complex data sets using the Hadoop ecosystem. "Hadoop MapReduce Cookbook" introduces you to simple examples and then dives deep to solve in-depth big data use cases.

    "Hadoop MapReduce Cookbook" presents more than 50 ready-to-use Hadoop MapReduce recipes in a simple and straightforward manner, with step-by-step instructions and real world examples. Start with how to install, then configure, extend, and administer Hadoop. Then write simple examples, learn MapReduce patterns, harness the Hadoop landscape, and finally jump to the cloud.

    The book deals with many exciting topics such as setting up Hadoop security, using MapReduce to solve analytics, classifications, on-line marketing, recommendations, and searching use cases. You will learn how to harness components from the Hadoop ecosystem including HBase, Hadoop, Pig, and Mahout, then learn how to set up cloud environments to perform Hadoop MapReduce computations.

    Other authors
    See publication
  • Mahasen: Distributed Storage Resource Broker

    IFIP International Conference on Network and Parallel Computing

    Other authors
  • Consider the Apache Cassandra database What are the pros and cons of this NoSQL database?

    IBM Devloperworks

    NoSQL storage provides a flexible and scalable alternative to relational databases, and among many such storages, Cassandra is one of the popular choices. Move beyond the well-known details and explore the less obvious details associated with Cassandra. You'll examine the Cassandra data model, storage schema design, architecture, and potential surprises associated with Cassandra.

    See publication
  • Andes: A Highly Scalable Persistent Messaging System

    IEEE

    A combination of factors: expanding user bases, the ubiquity of mobile communications, and newer technologies such as cloud computing and multi-core computing, are pushing todays systems to grow larger and larger. With their loosely coupled nature, distributed messaging systems often play a key role in such architectures. However, just like other parts of the architecture, those messaging systems also need to scale up, and they need to do so in three dimensions: quantity of messages, number of…

    A combination of factors: expanding user bases, the ubiquity of mobile communications, and newer technologies such as cloud computing and multi-core computing, are pushing todays systems to grow larger and larger. With their loosely coupled nature, distributed messaging systems often play a key role in such architectures. However, just like other parts of the architecture, those messaging systems also need to scale up, and they need to do so in three dimensions: quantity of messages, number of users, and size of messages. Although most current systems handle the first two dimensions, few of them efficiently support the third dimension. This paper proposes a novel method to implement a scalable and persistent broker that supports a publish/subscribe model and distributed queues using a NoSQL database and a coordination framework. We will discuss the design that uses recent advances in scalable database management and distributed coordination middleware, and we will compare the proposed models with other distributed message brokers.

    Other authors
    See publication
  • A tool for exposing Private Services to the Public Cloud with fine-grained Control

    CloudFlow, Shanghai, China, 2012

    The out put of the work done building WSO2 Cloud Gateway.

    Other authors
    See publication
  • Glutter – A Visual Programming Environment for Complex Event Processing

    International Conference on Advanced Computer Science and Information Technology

    Complex event processing typically requires studying the query language of a CEP engine and writing the required queries by hand. This is an overwhelming task, and requires extensive prior knowledge. In addition to that, the coding process becomes complicated with complex requirements and multiple steps involved. Therefore a visual editor which lets users construct CEP programs visually is a highly desirable addition to the CEP community. In this paper, we present an approach to creating a…

    Complex event processing typically requires studying the query language of a CEP engine and writing the required queries by hand. This is an overwhelming task, and requires extensive prior knowledge. In addition to that, the coding process becomes complicated with complex requirements and multiple steps involved. Therefore a visual editor which lets users construct CEP programs visually is a highly desirable addition to the CEP community. In this paper, we present an approach to creating a Visual Editor for construction of CEP programs.

    Other authors
  • Siddhi: A Second Look at Complex Event Processing Architectured

    ACM workshop on Gateway computing environments

    Today there are so much data being available from sources like sensors (RFIDs, Near Field Communication), web activities, transactions, social networks, etc. Making sense of this avalanche of data requires efficient and fast processing. Processing of high volume of events to derive higher-level information is a vital part of taking critical decisions, and Complex Event Processing (CEP) has become one of the most rapidly emerging fields in data processing. e-Science use-cases, business…

    Today there are so much data being available from sources like sensors (RFIDs, Near Field Communication), web activities, transactions, social networks, etc. Making sense of this avalanche of data requires efficient and fast processing. Processing of high volume of events to derive higher-level information is a vital part of taking critical decisions, and Complex Event Processing (CEP) has become one of the most rapidly emerging fields in data processing. e-Science use-cases, business applications, financial trading applications, operational analytics applications and business activity monitoring applications are some use-cases that directly use CEP. This paper discusses different design decisions associated with CEP Engines, and proposes some approaches to improve CEP performance by using more stream processing style pipelines. Furthermore, the paper will discuss Siddhi, a CEP Engine that implements those suggestions. We present a performance study that exhibits that the resulting CEP Engine--Siddhi--has significantly improved performance. Primary contributions of this paper are performing a critical analysis of the CEP Engine design and identifying suggestions for improvements, implementing those improvements through Siddhi, and demonstrating the soundness of those suggestions through empirical evidence.

    Other authors
    See publication
  • 3D Molecular Geometry and Band Structure Modelling of Graphene and Carbon Nanotubes

    International Journal of Simulation Systems, Science & Technology

    This paper is based on developing mathematical models to describe molecular geometries of graphene and carbon nanotubes, examining their geometry dependent electronic band structures and visually representing those relations in a 3D modelling and simulation software. Paper describes equations to derive the coordinates of the atoms, algorithms to derive the orientation of the bonds of the molecular structures, implementation of those algorithms in java3D and derivation of electronic band…

    This paper is based on developing mathematical models to describe molecular geometries of graphene and carbon nanotubes, examining their geometry dependent electronic band structures and visually representing those relations in a 3D modelling and simulation software. Paper describes equations to derive the coordinates of the atoms, algorithms to derive the orientation of the bonds of the molecular structures, implementation of those algorithms in java3D and derivation of electronic band structures. Successful results were obtained after the implementation of the algorithms which are illustrated with few screenshots at the end.

    Other authors
    See publication
  • A Multi-tenant Architecture for Business Process Execution

    9th International Conference on Web Services (ICWS)

    Other authors
  • Finding the Right Data Solution for Your Application in the Data Storage Haystack

    InfoQ

    Thanks to the NoSQL movement, data storage solutions are no longer a solved problem. Many are working hard to build new storage solutions, and even more are willing to use them. On the flip side, if you are a programmer or a solution architect who wants a data storage solution for your application, you have to face the daunting task of weighing and understanding the tradeoffs associated with the application and make a decision. This article explores the data needs of end user applications and…

    Thanks to the NoSQL movement, data storage solutions are no longer a solved problem. Many are working hard to build new storage solutions, and even more are willing to use them. On the flip side, if you are a programmer or a solution architect who wants a data storage solution for your application, you have to face the daunting task of weighing and understanding the tradeoffs associated with the application and make a decision. This article explores the data needs of end user applications and various tradeoffs. It provides guidelines on the criteria for selecting data storage choices enabling the architects and developers to make an informed decision.

    See publication
  • WSO2 Stratos: An Industrial Stack to Support Cloud Computing

    IT: Methods and Applications of Informatics and Information Technology Journal

  • BISSA: empowering web-gadget communication with tuple spaces

    In Proceedings of the 8th International Workshop on Middleware for Grids, Clouds and e-Science (MGC '10)

    Other authors
    See publication
  • Carbon: towards a server building framework for SOA platform

    5th International Workshop on Middleware for Service Oriented Computing (MW4SOC '10)

  • Mooshabaya: mashup generator for XBaya

    8th International Workshop on Middleware for Grids, Clouds and e-Science (MGC '10)

  • Multi-Tenant SOA Middleware for Cloud Computing

    3rd International Conference on Cloud Computing, Florida, 2010

    Enterprise IT infrastructure incurs many
    costs ranging from hardware costs and software
    licenses/maintenance costs to the costs of monitoring,
    managing, and maintaining IT infrastructure. The recent
    advent of cloud computing offers some tangible prospects of
    reducing some of those costs; however, abstractions provided
    by cloud computing are often inadequate to provide major
    cost savings across the IT infrastructure life-cycle.
    Multi-tenancy, which allows a single…

    Enterprise IT infrastructure incurs many
    costs ranging from hardware costs and software
    licenses/maintenance costs to the costs of monitoring,
    managing, and maintaining IT infrastructure. The recent
    advent of cloud computing offers some tangible prospects of
    reducing some of those costs; however, abstractions provided
    by cloud computing are often inadequate to provide major
    cost savings across the IT infrastructure life-cycle.
    Multi-tenancy, which allows a single application to emulate multiple application instances, has been proposed as a
    solution to this problem. By sharing one application across
    many tenants, multi-tenancy attempts to replace many small
    application instances with one or few large instances thus
    bringing down the overall cost of IT infrastructure. In this
    paper, we present an architecture for achieving multi-tenancy
    at the SOA level, which enables users to run their services and
    other SOA artifacts in a multi-tenant SOA framework as well
    as provides an environment to build multi-tenant applications.
    We discuss architecture, design decisions, and problems
    encountered, together with potential solutions when applicable.
    Primary contributions of this paper are motivating multitenancy, and the design and implementation of a multitenant SOA platform which allows users to run their current
    applications in a multi-tenant environment with minimal or no
    modifications

    Other authors
    See publication
  • Understand Geronimo's deployment architecture

    IBM developerWorks

    Geronimo, the Apache Software Foundation's open source Java™ 2 Platform, Enterprise Edition (J2EE) server, integrates dozens of technologies and concepts. Most of them are projects in their own right, each with its own configuration and deployment model. In Geronimo's quest to bring these heterogeneous systems under one umbrella, it boils down the various approaches to configuration and deployment into a single, homogeneous model. Geronimo developer Srinath Perera explains how Geronimo achieves…

    Geronimo, the Apache Software Foundation's open source Java™ 2 Platform, Enterprise Edition (J2EE) server, integrates dozens of technologies and concepts. Most of them are projects in their own right, each with its own configuration and deployment model. In Geronimo's quest to bring these heterogeneous systems under one umbrella, it boils down the various approaches to configuration and deployment into a single, homogeneous model. Geronimo developer Srinath Perera explains how Geronimo achieves this objective and links what Geronimo users see to concepts that underlie the server's architecture.

    See publication

Courses

  • Distributed Systems

    CS5429

  • Parallel and Concurrent Programming

    -

Projects

  • Big Data for Development

    - Present

    LIRNEasia has negotiated access to months of anonymized, temporal and geo-referenced, high velocity, Transaction Generated Information (TGI) from multiple operators in Sri Lanka. These data sets can collectively shed rich insights into the mobility, connectedness and consumption of more than 10 million people in Sri Lanka (i.e. more than 50% of Sri Lanka’s population).

    Such insights from Big Data analytics can positively inform multiple policy domains (transportation and infrastructure…

    LIRNEasia has negotiated access to months of anonymized, temporal and geo-referenced, high velocity, Transaction Generated Information (TGI) from multiple operators in Sri Lanka. These data sets can collectively shed rich insights into the mobility, connectedness and consumption of more than 10 million people in Sri Lanka (i.e. more than 50% of Sri Lanka’s population).

    Such insights from Big Data analytics can positively inform multiple policy domains (transportation and infrastructure policy, urban planning, disaster preparedness, health policy and even social policy).

    Other creators
    See project
  • WSO2 CEP

    - Present

    WSO2 Complex Event Processor identifies the most meaningful events within the event cloud, analyzes their impacts, and acts on them in real time. Built to be extremely high performing and massively scalable, it offers significant time saving and affordable acquisition.

    Other creators
    See project
  • WSO2 Message Broker

    - Present

    Message Brokers enable applications to exchange communications asynchronously or publish messages for timely access by many subscribers. For example, news bureaus can publish different categories of news – business, sports, science and technology, weather – and consumers can subscribe to the latest news that interests them.

    Other creators
    See project
  • Apache Airavatha

    - Present

    Apache Airavata is a software framework for executing and managing computational jobs and workflows on distributed computing resources including local clusters, supercomputers, national grids, academic and commercial clouds. Airavata is dominantly used to build Web-based science gateways and assist to compose, manage, execute, and monitor large scale applications (wrapped as Web services) and workflows composed of these services.

    Other creators
    See project
  • WSO2 Plaform

    - Present

    Integrated and componentized middleware platform that adapts to the specific needs of any enterprise IT project - on premise or in the cloud.

    See project
  • Apache Axis2

    - Present

    http://axis.apache.org/axis2/java/. Axis2 is a web service framework, a middleware that let users write, deploy, run and invoke Web Services. This is a complete redesign of Apache Axis for performance and to capture new usecases. Axis2 is one of the two most widely used Java Web Services frameworks.

    Other creators
    See project
  • Open Grid Computing Environments

    - Present

    The OGCE develops, packages and releases software downloads for building Science Gateways, Grid Portals, and related tools for Web access to Grid and Cloud computing resources.

    Other creators
    See project
  • Apache Axis

    - Present

    Apache Axis2™ is a Web Services / SOAP / WSDL engine, the successor to the widely used Apache Axis SOAP stack.

    Other creators
    See project
  • Ninthi

    -

    Ninithi (Sinhala: නිනිති) is free and open source modelling software that can be used to visualize and analyze carbon materials used in nanotechnology.[1] Users of ninithi can visualize the 3D molecular geometries of graphene/nano-ribbons, carbon nanotubes (both single wall and multi-wall)and fullerenes. Ninithi also provides features to simulate the electronic band structures of graphene and carbon nanotubes

    Other creators
    See project
  • Gajanidu-Distributed Systems Management Framework

    -

    This project aims at developing Distributed Systems Management Framework using Apache Zookeeper and Apache Thrift.

    Management of a large scale distributed system presents several issues such as managing a network of thousands of nodes, keeping the system up to date when nodes are added, deleted, changed and detecting and recovering from failures. With all these challenges, required features of a distributed system vary from organization to organization. Here we present ‘GajaNindu’, a…

    This project aims at developing Distributed Systems Management Framework using Apache Zookeeper and Apache Thrift.

    Management of a large scale distributed system presents several issues such as managing a network of thousands of nodes, keeping the system up to date when nodes are added, deleted, changed and detecting and recovering from failures. With all these challenges, required features of a distributed system vary from organization to organization. Here we present ‘GajaNindu’, a distributed management framework, which facilitates user-defined management rules. This feature provides organizations with the capability of modifying the framework according to their business/organizational needs. Open source technologies (Apache Zookeeper, Apache Thrift and Jboss Drools) have been used to implement a prototype of the concept.

    Other creators
    See project
  • Linked Environments for Atmospheric Discovery

    -

    Linked Environments for Atmospheric Discovery (LEAD) is a collaborative effort to create an integrated, scalable framework for identifying, accessing, preparing, assimilating, predicting, managing, analyzing, mining, and visualizing a broad array of meteorological data and model output, independent of format and physical location.

    It is a 10Million grant to 11 universities by US NSF

    Other creators
    See project
  • Apache Geronimo

    -

    Apache Geronimo is an open source server runtime that integrates the best open source projects to create Java/OSGi server runtimes that meet the needs of enterprise developers and system administrators.

    See project

Honors & Awards

  • Outstanding Contributor to ICT Industry Award

    Computer Science and Engineering Society, University of Moratuwa

  • One of the four finalist teams at DEBS Grand challenge 2014, 2015, 2016, 2017

    ACM Distributed Event based systems conference (DEBS)

    The DEBS grand challenge poses a real world data set and a set of problems that would keep distributed event enthusiastic busy for few months. Select solutions are invited to the conference, and final showdown and announcement happen at the conference.

  • Outstanding Academic Performer Alumni 2013

    Computer Science and Engineering Society, University of Moratuwa, Sri Lanka

    Organised in parallel with the Annual General Meeting of the Computer Science and Engineering Society would recognise the outstanding achievements of the CSE graduates.

  • Merit Certificate at "Engineering, Physical Sciences and IT section"

    Young Scientists Forum (YSF) organised by National Science Foundation

  • Mentored the project Siyapath (P2P Volunteer Computing Framework with Gossip Protocols) that won gold in Tertiary Students category of NBQSA

    National Best Quality Software Awards, British Computing Society

  • Mentored the project "High Performance Complex Event Processing Engine" that won Tertiary, Bronze in NBQSA

    National Best Quality Software Awards, British Computing Society

  • WSO2 Outstanding Contributions 2014

    WSO2 Inc.

Languages

  • English

    Native or bilingual proficiency

  • Sinahala

    Native or bilingual proficiency

Recommendations received

More activity by Srinath

View Srinath’s full profile

  • See who you know in common
  • Get introduced
  • Contact Srinath directly
Join to view full profile

Other similar profiles

Explore collaborative articles

We’re unlocking community knowledge in a new way. Experts add insights directly into each article, started with the help of AI.

Explore More

Others named Srinath Perera in Sri Lanka

Add new skills with these courses