2. A Small Data Movement
for Developer, Consumers and Business Users
Create simpler, smarter and more responsive
applications
Provide intuitive experiences that are easier to
consume
Reach mobile users
Tools for Data Processing and Analytics leveraging the full .NET stack
3. I/O Blocks
Data Modeling
Database Connectors
Data
Generation
Data Visualization Adaptors
Statistics & Mathematics
Data Cleansing
The Templatized Design Style
The Function Stack
4. I/O Blocks
Data Modeling
Database Connectors
Data
Generation
Data Visualization Adaptors
Statistics & Mathematics
Data Cleansing
The Templatized Design Style
The Function Stack
Add rows based on
shorthand increment
functions
Standard Data input
formats e.g. CSV, TXT, XLS,
ARFF, XLX, HTML, XML,
JSON
RDBMS and NOSQL
connectors e.g. SQL
Server, MongoDB
5. I/O Blocks
Data Modeling
Database Connectors
Data
Generation
Data Visualization Adaptors
Statistics & Mathematics
Data Cleansing
The Templatized Design Style
The Function Stack
All data is transformed
into an internal data
structure representation
6. I/O Blocks
Data Modeling
Database Connectors
Data
Generation
Data Visualization Adaptors
Statistics & Mathematics
Data Cleansing
The Templatized Design Style
The Function Stack
Removing duplicates,
Outlier extraction
Highcharts, Google Charts,
D3.js
7. I/O Blocks
Data Modeling
Database Connectors
Data
Generation
Data Visualization Adaptors
Statistics & Mathematics
Data Cleansing
The Templatized Design Style
The Function Stack
Basic functions like
Median, Range,
Standard deviation,
Kurtosis, etc.
8. Applying the Templatized Design Style
Example #1: Question – Do women tip more than men?
// Load the data
Table tips = DataAcquisition.LoadCSV(@"....tips.csv");
//Add a new column based on a formula
tips.AddColumn(columnName: "tip%", formula:
"[tip]*100/[totbill]", decimalDigits: 3);
tips
//Pick the columns to display
.Pick("sex", "tip%")
//Aggregate the tip% values
.Aggregate("sex", AggregationMethod.Average)
//Round off the result
.RoundOffTo(2)
//Display the result on console
.PrettyDump();
sex tip%
F 16.65
M 15.77
Answer – Yes! Women
do tip more than men.
9. Applying the Templatized Design Style
Example #1: Question – What is the range of the iris dataset?
Table iris = DataAcquisition.LoadCSV(@"iris.csv");
StringBuilder builder = new StringBuilder();
builder.AppendLine("<html>");
builder.AppendLine("<h2>Range</h2>");
builder.AppendLine(iris
.Aggregate("Name", AggregationMethod.Range)
.ToBasicBootstrapHTMLTable(BootstrapTableDecora
tors.BootstrapTableClasses
.Table_Striped)););
builder.AppendLine("</html>");
StreamWriter writer = new
StreamWriter("temp.html");
writer.WriteLine(builder.ToString());
writer.Close();
Answer – Iris-setosa has the least Petal width while
the Iris-virginica has the largest Sepal length.
Name SepalLength SepalWidth PetalLength PetalWidth
Iris-setosa 1.5 2.1 0.9 0.5
Iris-versicolor 2.1 1.4 2.1 0.8
Iris-virginica 3.0 1.6 2.4 1.1
10. Reaching Mobile Users
Integration with Android Devices
Typed Duplex
Message
sender
User Code in
Java
Typed Duplex
Message
receiver
User Code in
C#
Eneter for Android Eneter for .NET
Squirrel Application on Android Squirrel Application on .NET
Send
Requests
Receive
Responses
Send
Messages
Observe
Response
Messages
Observe
Messages
Send
Response
Messages
Receive
Requests
Message
Channel
Send
Responses
• A simple request-response communication
• The Android device is a client to the .NET application as
a service
• Uses Eneter (www.eneter.net) as the messaging
framework
11. What’s coming up?
New and Enhanced features
Table API 1.0.1
(now)
Current
version
Table API 1.1
( 3 months)
• Enhanced Support for
Connectors
• Connect to all relevant
enterprise and
application data and
content sources
• RDBMS, NoSQL,
Hadoop, social media,
machine data, …
Table API 2.0
( 6 months)
• Smart Defaults, e.g.
Sort of weekday
• One API for Data
Visualization
• Charts on Tableau,
Google Charts using
the same API
Table API
3.0
( 1 year)
• Voice Recognition
• Smart Slicing/Dicing
with Voice commands,
Ad-hoc Voice query for
Data Visualization
• Gesture Recognition
• Change, Create Data
Visualization with
Gestures, Zoom, Scale,
…
12. Thank you!
Experiment, Adopt, Collaborate
email to:
sudipto80@yahoo.com or sushant_b@yahoo.com
References
1. Squirrel - https://github.com/sudipto80/Squirrel
2. Small Data and IoT –
a) https://ctovision.com/2015/01/beyond-iot-buzz-new-horizon-embedded-
intelligence-information-flows-seriously-smart-apps/
b) http://smalldatagroup.com/2013/10/18/defining-small-data/