07 Oct

Evolution of a Data Platform

Evolution of a Data Platform

Being a startup is “great” as a feeling. Startup culture is filled with so much positive energy to get the things done. In this process of getting things done, one thing we miss is the proper design in a data platform. It is understandable that people start with a simple data platform and evolve it over the time. Starting with the perfect data platform is less practical when we consider the cost involved and the lack of domain knowledge in initial stages. We should all admit that proper data platform costs a lot, which sometimes not efficient for a startup. My personal opinion is to start small and to evolve with time. Here we will talk about common problems that we faced in a start-up data platform.

Lacking Scalability

Evolution of a Data Platform

Scalability issues impact in several ends. Startup systems are not meant to scale until the end of time. Sometimes they become impossible to scale, sometimes scaling requires so much additional effort that they need a separate team working on scaling the data platform. Sometimes scaling is involved with a large cost that is rapidly increasing. Sometimes scaling increases the overall system complexity and reduce maintainability. If I summarize main impact area of scalability costs, it will be as follows,

  • Being impossible to scale
  • High Cost of scaling
  • Increasing manual tasks of Scaling
  • Increase in system complexity while scaling
  • Reduction of system maintainability

Proper data platform design should answer above concerns. Proper design should be scalable beyond the foreseeable future. While scaling it should minimize the cost additions, remove any complexity additions and should involve minimal or no manual effort.

Read More

17 Aug

Negombo Toastmasters Club 8th Installation Ceremony for year 2017/2018

Negombo Toastmasters Club 8th Installation Ceremony for year 2017/2018

Negombo Toastmasters held its eighth Executive Committee Installation Ceremony for 2017/2018 on 12 August 2017 at Paradise Beach Hotel, Negombo. The Chief Guest was DTM Arjuna ⁠⁠⁠Jayadarshana and the Guest of Honor was TM Sudath Fernando who is a charter member of Negombo Toastmasters Club. Area Director for District 89 Area H4 Sudath Ranaweera was also present at the occasion. Another two of our charter members TM Mohammed Marzook, Division Director TM Anura Perera also joined us on this important day.

Negombo Toastmasters Club 8th Installation Ceremony for year 2017/2018

The following officers for 2017/2018 were installed at the ceremony.

  • President – TM Tony Ukwattage
  • Vice President/Education – TM Bavanitha Rajagugan
  • Vice President/Membership – TM Gihan Wijayatilake
  • Vice President/Public Relations – TM Romesh Malinga Perera
  • Secretary – TM Tissera Maduranga
  • Treasurer – TM Buddika Liyanage
  • Sergeant-at-Arms – TM Shehan Gunasinghe

Read More

10 Aug

Performance evaluation between different Druid roll-up levels

Introduction

In most datasets with a large number of events, going through individual events is less important. Most of the data use cases are around the summarized data. Druid summarizes this raw data at ingestion time using a process refer to as “roll-up”. Roll-up is the highest granularity of the data and will be able to query only up to the roll-up granularity. However, there are some scenarios where it’s important to have more granular data. However keeping more granular data comes at a cost. We did a small experiment to identify how different roll-up levels affect performance.

Rolling up data can dramatically reduce the size of data that needs to be stored (up to a factor of 100). Druid will roll up data as it is ingested to minimize the amount of raw data that needs to be stored. This storage reduction does come at a cost; as we roll up data, we lose the ability to query individual events. Phrased another way, the rollup granularity is the minimum granularity you will be able to explore data at and events are floored to this granularity. Hence, Druid ingestion specs define this granularity as the queryGranularity of the data. The lowest supported queryGranularity is millisecond. -http://druid.io

Dataset and Setup

We choose a CSV data set with millions (150M+) of records which contain sales data spanning across 2 years. CSV file was around 6 GB in physical size. This is a narrow data set with 3 dimensions and 2 metrics. We had 2 servers where all the components are deployed.

m4 large – Coordinator, Brokers, Overload nodes
r3 large – Middle managers and Historical nodes

Read More

02 Jul

Suzuki WagonR Hybrid (Stingray) – Fuse design (Identifying and changing the blown fuse)

Suzuki WagonR Hybrid (Stingray) – Fuse design (Identifying and changing the blown fuse)

Introduction

We all come across some situations where some electronic features are not working suddenly. Most of the time it relates to a blown fuse. In this article, we talk about how to identify and replace a blown fuse. When doing this, it is always recommended to have a good idea about what functionalities relate to each fuse. So mainly in this article, we will talk about Suzuki WagonR Hybrid fuse design.

Where can we find the fuses in Suzuki WagonR Hybrid?

Mainly fuses found in five places. However, we are talking about three out five places where you will find fuses related to electronic accessories.

Under the Steering Wheel

Suzuki WagonR Hybrid (Stingray) – Fuse design - Under the Steering wheel Suzuki WagonR Hybrid (Stingray) – Fuse design - Under the Steering wheel

Fuse design

Suzuki WagonR Hybrid (Stingray) – Fuse design - Under the Steering wheel

Read More

07 Jan

Sri Lanka Holidays Calendar 2017 for office365, Google etc. in ics format

Sri Lanka Holidays Calendar 2016 for Outlook & Google As Everyone requested I added the Sri Lankan Holiday calendar for 2017 . Seems like this year is a good year in the terms of holidays (only till May 🙁 ).  This will allow you to add the Sri Lanka Holidays Calendar 2016 to your digital calendar (Most of the online digital calendars that we use these days don’t have in built option to add the holiday calendar for Sri Lanka). Download ICS format 2017 Sri Lankan holiday calendar .

Adding to office365

  1. Add calendar
  2. From file (don’t go to holiday calendar, Sri Lanka is not available there)
  3. Select file to upload and a calendar that holidays will be added (Create a separate new calendar is recommended. Use RED color)
  4. Save

Read More

02 Oct

Suzuki WagonR Hybrid (Stingray) – Tyre pressure / Air Pump

Suzuki WagonR Hybrid (Stingray)

Introduction

If you are searching for this you might be checking the tyre pressure for the first time and trying to use your air pump for the first time. This article target the information related to this operation. Most of these information can be found in the manual (section 8-5)

Recommended tire pressure

Type Size Pressure Remarks
Standard (Stingray) 155/65R14 75S 280 kPa (around 40 psi) In manual it recommends tyre pressure of 41.6 Psi. This is mainly targeting the highways in Japan. However in Sri Lanka we face lot of rough road conditions and higher temperatures. So it is good to keep the tyre pressure around 35 Psi.
Standard 165/55R15 75V 240 kPa (around 35 psi) Same as above

This information is stickered on the car body near driver side door

Suzuki WagonR Hybrid (Stingray) - Tyre pressure / Air Pump Read More

25 Sep

Application Aware Sharding for a MySQL Database

Application Aware Sharding for a MySQL Database

Introduction

When MySQL databases get too large, it become extremely hard to maintain as well as it reaches physical limits. Under maintainability issues we normally came across,

  1. Taking too much time to ALTER a table
  2. Became impossible to take dumps
  3. Have to move tables to separate disks time to time
  4. Etc.

If someone is looking for a database sharding as a solution, this maintainability issue must have exhausted him. In this article, I am going to share my personal experience in sharding a large MySQL database in real life. With the hands on experience on this large project, I am aware of lot of things related to sharding and organization level issue, concerns and limitations when you are going ahead with this project. This attempt is to go through the project from end to end so anyone who is about to do something similar can get benefit of my knowledge.
Before going to the article, I must share several things with you.

  1. After this project, do not expect any performance gain on your day-to-day queries. This might actually add an additional overhead on your queries as your data will be shattered among multiple places. However, this will greatly improve the maintainability and will make sure that your data architecture survive in the fullness of time.
  2. What I am going to talk about is application aware sharding and there are few other ways to do sharding in the data layer, which will be seamless to the applications. However, at the time of writing I did not find and tool that supports MySQL sharding in the DB level. Existing options are either not reliable or adds a large overhead on queries.
  3. Sharding itself might not be the full answer for the problem. Sharding might need be accompanied with several sub projects that will supplement shading to reach its potential. This is feather explained the next section (“Problem and Solution”). I will be concentrating on the sharding project and will not explain much on the other supplementary projects.
  4. You must be in a real need to do this project and you must have identified this as the only way to solve this problem before proceed because what you are going to start is a big project.
  5. I have skipped some sensitive information as it relates to the company I am working for.

Problem and Solution

Problem: Data was growing in our MySQL database in rapid rates and we needed to make it constant as it lead to so many maintainability issues. With the amount of data grew bigger and number of queries per second was increased, there was even a possibility of downtimes. We needed to make the data volume in the MySQL a constant and keep it in a maintainable level.
Solution: We thought of partitioning the data and in the same time purging the old data to make size of data in one database somewhat constant. Therefore, there were two supplement projects carried out with the sharding project. One is to purge old data (purging project), and master data management (MDM project, moved some selected set of data to a central location). Data that could not be sharded due to various reasons and which global to the company was moved out, in the MDM project.

sharding-architecture, Application Aware Sharding for a MySQL Database

Read More

09 Jul

Toastmasters Round Robin session, Round Robin Master Role and New ideas

Round robin master - Harshana

What is round robin session and who is round robin master

Round Robin Session has been developed by the Toastmasters in Sri Lanka. This is a warm-up session that happens just after the introduction of the role players and just before the prepared speeches. Aim of this session is to improve the Speaking Skill and Listening Skill of members.

Round Robin Master is the person who leads this session by presenting a topic or a rolling story and handles its flow to make sure everyone gets the chance to speak up. This is highly important as this might be the only time that everyone gets the chance to speak up.

Read More

04 Apr

Redis Sorted Object Set (Sorted Hashes)

Redis Sorted Object Set (Sorted Hashes)

We all know that best way to store object in Redis is through, Redis hashes. And Redis sorted sets are used to keep a sorted set with a give score for each value. What if we need a sorted set of objects? What we need is a “Sorted set of Objects” . Which Redis does not support by default. We came up with a hybrid, simple data structure that a allows sorted object using Redis Hashes and Redis Sorted-sets.

Read More

01 Jan

Sri Lanka Holidays Calendar 2016 for office365, Google etc. in ics format

Sri Lanka Holidays Calendar 2016 for Outlook & Google

Its really important to track the holidays when you plan work ahead. But most of the online digital calendars that we use these days don’t have in built option to add the holiday calendar for Sri Lanka. Add the Sri Lanka Holidays Calendar 2016 to your digital calendar. Download ICS format SRI-LANKA-HOLIDAYS-2016 .

Adding to office365

  1. Add calendar
  2. From file (don’t go to holiday calendar, Sri Lanka is not available there)
  3. Select file to upload and a calendar that holidays will be added (Create a separate new calendar is recommended. Use RED color)
  4. Save

Read More