Functional Programming I
Functional Programming I
Contents
1. Introduction 358
1.1 Data Integration 358
2. Programming Paradigm 360
2.1 Polyglot Programming 363
3. Polyglot Persistence 365
4. Polyglot Persistence and NoSQL 366
4.1 NoSQL Databases Access Techniques 368
5. Big Data and Polyglot Persistence 370
5.1 Polyglot Processing 373
5.2 Polyglot-Persistent Databases 373
6. Polyglot Persistence in e-Commerce 374
6.1 REST and e-Commerce Polyglot Persistence 377
7. Polyglot Persistence in Healthcare 378
8. Research Trends in Polyglot Persistence 380
9. Conclusion 382
Glossary 383
References 384
Further Reading 389
About the Author 389
Abstract
Polyglot persistence facilitates use of most suitable database technology based on the
requirement of an application. There are lots of use cases as well as huge potential for
Polyglot Persistence in e-Commerce web portals, Search Engines, and Healthcare Infor-
mation Ecosystem applications. But, designing and implementation of an application in
a Polyglot environment is not a straightforward task, since adding more data storage
technologies increases complexity in programming. Further knowledge of multiple pro-
gramming languages, maintainability of the Polyglot application, and tool support for
Polyglot persistence are the challenges of Polyglot Persistence. This chapter discusses
the various aspects of Polyglot persistence with a focus on NoSQL database.
1. INTRODUCTION
Polyglot persistence facilitates use of most suitable database technology
based on the requirement of an application. There are lots of use cases as well
as huge potential for Polyglot Persistence in e-Commerce Web portals, Sea-
rch Engines, and Healthcare Information Ecosystem applications. The survey
by research agency has revealed that the market value of retail e-Commerce
sales worldwide will be 4058 billion US dollars by 2020. Another survey by
451 Research commissioned by Oracle revealed that the market value of
DBaaS will reach $19.0 billion by 2020. Polyglot persistence application
development strategy will facilitate taking the benefits of Virtualization
Technology and Cloud Computing. This chapter discusses the Polyglot
Persistence as a data integration technology with a focus on NoSQL
database.
Data source A
Data
warehouse
Data source B ETL
Data source C
2. PROGRAMMING PARADIGM
Before discussing about the Polyglot persistence, the concept of
Polyglot programming is discussed in this section to build the foundation
of Polyglot persistence in the mind of the readers.
Following are the various programming paradigms:
(a) Functional programming
(b) Object-oriented programming
(c) Aspect-oriented programming
(d) Hybrid functional programming
Application of NoSQL Database for Polyglot Persistence Application 361
An object contains both data and methods that manipulate data. For
example in C# everything is an object. Similar example of object-
oriented programming language includes Objective-C, Java, C++,
Python, and Smalltalk.
Out of all the object-oriented programming language Java and C++
are the mostly used. However, both of them are related with certain
advantage and disadvantages.
The following features available in C++ are not available in Java:
• Pointer
• Multiple inheritance
• Operator overloading
• GOTO statement
• Structure and union data structure
(c) Aspect-oriented programming (AOP) is similar to event handling.
The “events” are defined outside the code spanning over many
unrelated modules. In AOP crosscutting (spanning multiple software
modules) functionalities are implemented in Aspects instead of fusing
them into core modules. Aspects are an additional unit of modularity,
which can be reused for reducing code. An “Aspect weaver” takes the
aspects and the core modules and composes the final system.
The AOP programming language AspectJ provides additional keywords
and constructs to write Aspects. Aspects operate with reference to features
in the standard Java code. An aspect can have ordinary Java code, i.e.
• Member variables and methods
• Can implement interfaces
• There is also aspect inheritance
The AspectJ compiler produces standard Java byte code executable on any
Java Virtual Machine. The runtime library “aspectjrt.jar” is required to run
any AspectJ program. AspectJ and C# also derive a set of features from C and
C++ except pointers.
Another important feature of AspectJ (using the JDBC library) and C#
(using the ADO.NET library) is Database interaction. However, C# has
more features for supporting functional programming than AspectJ [6].
C# is suitable for mixing OOP and declarative style using Microsoft
LINQ (language-integrated query) services, especially for querying database
and XML files [6] (Table 2).
(d) F# and Scala are Hybrid Functional programming languages, i.e., a
mixture of object-oriented programming and functional programming
[7]. The object-oriented programming reduces the gap between the
Application of NoSQL Database for Polyglot Persistence Application 363
3. POLYGLOT PERSISTENCE
Polyglot persistence is a hybrid approach enabling usage of multiple
databases in a single application/software. A Software that is capable of using
more than one type of data storage is referred to as Polyglot-persistent
software.
It is beneficial to use a variety of data models suitable for different parts of
huge software. For instance, use relational database to store/handle struc-
tured, tabular data; a document database such as MongoDB for unstructured,
object-like data; a key–value store such as Riak for a hash table; and a graph
database like Neo4j for highly linked referential data [14].
Fig. 2 shows a typical Polyglot persistence use case.
An example of Polyglot-persistent software is e-Commerce applications.
An e-Commerce application deals with multiple types of data, such as shop-
ping cart, inventory, customers’ orders, etc. To store all these data of an
e-Commerce application in one database will require lots of data conversion
work to make the data compatible originating from various sources [15].
Furthermore, implementing business transactions that maintain consistency
across multiple services is another challenge. Since, transactions are short-
lived session involving comparatively less data, hence NoSQL databases
Session data,
shopping carts
Key/Value
Product catalog,
user accounts,
MongoDB domain objects
e-Commerce application
Payment
RDBMS systems,
reporting
Graph
Social data,
recommendations
are suitable. However, once the transaction is over the buyer Account must
be Debited and sellers Account must be created. Here ACID transaction is
used for which SQL database (RDBMS) are the best fit [16].
A similar example of Polyglot persistence is microservices-based applica-
tions. These applications often use a mixture of SQL and NoSQL databases [16].
Polyglot-persistent application deployed on-premise relying on local
database or using multiple databases in the cloud using Database-as-a-
Service (DBaaS) offers of cloud service providers. However, implementing
Polyglot persistence in a distributed data management environment is a big
challenge. Furthermore, since NoSQL does not enforce data integrity,
hence data integration becomes the application’s concern for using NoSQL
database for e-Commerce applications. However, some of NoSQL data-
bases are ACID compliant at the cost of price and complexity. Hence DBaaS
will be the affordable and convenient option for developing applications/
software using multiple databases.
Java was used to develop the source code of four NoSQL database, one
Search Engine and one data grid cloud. Java runs on any platform by running
a JVM. Groovy, JavaScript, Python, Ruby, Perl, and PHP can all run on Java
platforms.
368 Ganesh Chandra Deka
MarkLogic uses single C++ core to solve the data management problem
across many data types from Text to RDF and XML to Binary. Neo4j Doc
Manager enables Polyglot persistence for Neo4j and MongoDB [18].
The D2R declarative language describes mappings between relational
database schemas and the OWL (web ontology language). The mappings
are used by the D2R processor to export data from a relational database into
RDF [19].
Another use case of Polyglot persistence is Force.com integrating and
optimizing varieties of data persistence technologies to deliver transparent
Polyglot persistence. With Force.com, coding a single API is sufficient
for a given situation irrespective of the degree of complexity of the prob-
lem/application. Force.com has both RESTful API and web services
(SOAP-based) APIs as well as Salesforce Object Query Language (SOQL)
for constructing powerful database queries for Polyglot persistence [20].
Kundera is a JPA 2.1 ( Java Persistence API) compliant object data store
mapping library for NoSQL databases. Kundera currently supports Cassan-
dra, HBase, MongoDBand MySQL (a relational database) [21].
Amazon DynamoDB DBaaS supports both document and Key–value
NoSQL data store models for easy development of web, Gaming, and
IoT (Internet of Things) in particular.
In an identical Polyglot persistence scenario, a MongoDB (document
database) can be used as the principal storage (master database) and Redis
(an in-memory database) as a caching layer to accelerate the writes.
Similarly, LAMP (Linux, Apache (open source web server software),
MySQL (also MongoDB), and Perl/PHP/Python) an open source solution
stack of software that enables rapid development of dynamic websites and
web applications [22,23]. Once all the components are installed in a server,
the final requirement is Installing Dependencies depending upon the pro-
gramming language and OS (operating system) used. For example,
mod_wsgi to be installed for Apache and Python to work together, sim-
ilarly mysqliclass is used as interface between MySQL and PHP [24].
The following are the advantages and disadvantages of Polyglot persis-
tence [25] (Table 7).
A Polyglot application stack might include Redis as a caching layer,
MongoDB for collecting logs, Postgres for metadata, and Elasticsearch for
indexing and search. This use case will require the technical knowledge of
all the three databases and one search engine associated with the system if
maintained by an organization [26]. The cost effective solution for such type
of the disadvantages of Polyglot persistence is migration to cloud base DBaaS.
370 Ganesh Chandra Deka
Hadoop
• Programming model for large-scale data processing
MapReduce
Applications
Price
updates
most preferred database options for e-Commerce websites (all having JOSN
APIs to act as a mediator).
To conclude, a feasible e-Commerce solution may:
• Use of one RDBMS (SQL database) for durable financial transactions
• For various unstructured data uses
(i) Cloud-based NoSQL databases services DBaaS
(ii) Third party REST API for communication/integration between data-
bases and applications. However, lots of NoSQL have their inbuilt
REST APIs. The web service receives and sends requests through REST
and serializes data in a well-understood and portable format like JSON.
Application of NoSQL Database for Polyglot Persistence Application 377
Computing, IoT, and Big Data Analytics. The application of IoT in food
factories converts the machines to cyber-physical systems with embedded
intelligence and local data processing directly communicating with other
machines [67].
IoT devices will be generating huge volume of unstructured Time Series
Data. Pushed by geographically distributed devices in milliseconds/nano-
seconds deployed in healthcare, e-Agriculture and other areas. In healthcare,
the telemetric and wearable IoT devices will be gathering the real-time
information on health metrics for risk assessment for premium calculation
of insurance company and health practitioners. Processing these huge
amount of data in real-time is possible through cloud services which act
as concentrators to capture and store data.
Big data analytics tool will unlock value/insight hidden in Zettabyte
(1 Zettabyte ¼ 270 bytes) of real-time data generated IoT devices/sensors.
These data are to be stored in Low cost/Open source NoSQL database such
as a Key–value store or a Column family database. Graph NoSQL databases
using relation are the natural choice for managing the connected IoT
devices. Open source Column family database, like Cassandra or HBase
can be used for storage of IoT devices generated data [68].
382 Ganesh Chandra Deka
9. CONCLUSION
The real world applications require the data integrity offered by an
RDBMS in addition to the benefits offered by NoSQL databases. None
of the database meets all the requirements of a web-based application. Hence
Application of NoSQL Database for Polyglot Persistence Application 383
GLOSSARY
Scripting Languages are used for smaller applications, but can also be used in large
applications.
XML an embedded configuration language widely used in Java and .NETworld. XML text
format encodes DOM (document-object models) which is a data structure for web pages.
SAX (simple API for XML) is an alternative “lightweight” way to process XML. A SAX
parser generates a stream of events as it parse the XML file.
Polyglot persistence refers continued or prolonged existence of something using several lan-
guages. The Polyglot-persistent application uses multiple data storage, i.e., RDBMS,
NoSQL, BLOB, file in a single (minimum) application that best suits the requirements
of an application. The parameter which plays a vital role in the development of Polyglot-
persistent application are Portability, Flexibility, and strong RDBMS integration.
Nonnetworked type of Polyglot programming where the different languages are in the same
file.
384 Ganesh Chandra Deka
JSON (JavaScript object notation) is a commonly used in web to describe the data being
exchanged between systems. JSON is a simple schema less language created to support
web pages. JSON object enters database as a text string which is parsed to discover its
fields and types.
YAML (Yet Another Markup Language) represents data in human-readable notation, almost
a superset of JSON.
NewSQL systems are relational databases designed to provide real-time OLTP (online trans-
action processing) and conventional SQL-based OLAP (online analytical processing) in
big data environments.
Bitcoin—A protocol that supports a decentralized, pseudoanonymous, peer-to-peer digital
currency. The blockchain is the fundamental data structure of the Bitcoin protocol.
REFERENCES
[1] C. Boylan, Data Integration (Database Integration). Retrieved January 23, 2017, from
http://www.informationbuilders.com/database-integration, n.d.
[2] K.K. Mohan, A.K. Verma, A. Srividya, R.K. Gedela, QoS Considerations for
Integration-Enterprise Service Bus, Communications in Dependability and Quality
Management—An International Journal 12 (1) (2009) 47–56. doi: UDC 004.421.2:
519.6, CDQM.
[3] TrustRadius, Data Integration Overview—What Is Data Integration Software?
Retrieved January 24, 2017, from, https://www.trustradius.com/data-integration,
2016. 11921 North MopacExpy, Suite 330, Austin, TX 78759.
[4] R. Pethuru, Cloud Enterprise Architecture, CRC Press, 2012. http://www.crcpress.
com/product/isbn/9781466502321.
[5] E. Letuchy, Facebook Chat, Retrieved January 21, 2017, from, http://www.facebook.
com/note.php?note_id¼14218138919&id¼9445547199&index¼1, 2008.
[6] Rabah, S., Li, J., Liu, M., & Lai, Y. (2010). Comparative Studies of 10 Programming
Languages within 10 Diverse Criteria—a Team 7 COMP6411-S10 Term Report.
arXiv preprint arXiv:1009.0305.
[7] D. Pountain, Functional Programming Comes of Age, 2006. BYTE.com (August
1994). Archived from the original on 2006-08-27. Retrieved January 24, 2017.
[8] Wikimedia Foundation Inc., Polyglot (Computing), Retrieved January 21, 2017, from:
https://en.wikipedia.org/wiki/Polyglot_(computing), 2016. Available under the Crea-
tive Commons Attribution-ShareAlike License.
[9] R. Diana, The Big List of 256 Programming Languages-Check Out a List of 256 Pro-
gramming Languages, From ABC to Z Shell, Retrieved January 24, 2017, from,
DZone/Java Zone, 2013. https://dzone.com/articles/https://dzone.com/articles/big-
list-256-programmingbig-list-256-programming.
[10] M. Wrangler, Polyglot Programming. Retrieved January 24, 2017, from http://
nealford.com/memeagora/2006/12/05/Polyglot_Programming, Thought Works, a
software company and a community of passionate, purpose-led individuals, n.d.
[11] B. Kullbach, A. Winter, P. Dahm, J. Ebert, in: Program Comprehension in Multi-
Language Systems. Reverse Engineering, 1998, Proceedings. Fifth Working Confer-
ence on, 135–143, 1998. Available from, http://ieeexplore.ieee.org/iel4/5867/
15624/00723183.pdf?tp¼&arnumber¼723183&isnumber¼15624.
[12] H. Fjeldberg, Polyglot Programming-A business perspective (Master’s thesis), Norwe-
gian University of Science and Technology, Department of Computer and Information
Science, Trondheim, Norway, 2008, Norwegian University of Science and
Application of NoSQL Database for Polyglot Persistence Application 385
[30] S. Edlich, N*SQL, Retrieved January 24, 2017, from, http://nosql-database.org, 2011.
Owned by: Prof. Dr. Stefan Edlich Stubenrauchstr.9c 14167 Berlin Gemany.
[31] A. Fowler, NoSQL For Dummies (India ed.), Wiley India Pvt. Ltd. A Wiley Brand,
New Delhi, 2015.
[32] MongoDB, Inc, MongoDB Connector for BI, Retrieved February 18, 2017, from,
https://www.mongodb.com/products/bi-connector, 2017.
[33] (a) ReactiveCouchbase, 2017. ReactiveCouchbase/repository. Retrieved August 24,
2017, from https://github.com/ReactiveCouchbase/repository/blob/master/snap-
shots/org/reactivecouchbase; (b) R. Zicari, New Gartner Magic Quadrant for Opera-
tional Database Management Systems. Interview with Nick Heudecker, Retrieved
February 18, 2017, from, http://www.odbms.org/blog/2016/11/new-gartner-
magic-quadrant-for-operational-database-management-systems-interview-with-nick-
heudecker/, 2016 ODBMS.org.
[34] D. Feldman, Avoiding the Franken-Beast: Polyglot Persistence Done Right.Retrieved
January 24, 2017, from http://www.marklogic.com/blog/polyglot-persistence-done-
right/, MarkLogic®/Agile Development, Data Management, n.d.
[35] OrientDB Ltd, Why Orientdb?Graph/Document Multi-Model Database. Retrieved
January 26, 2017, from http://orientdb.com/why-orientdb/, OrientDB Open Source
Project. n.d.
[36] 451 Research, NoSQL, NewSQL and Beyond: The Drivers and Use-Cases for Data-
base Alternatives, Retrieved January 23, 2017, from, http://www.bing.com/cr?
IG¼548773F8E30444D19B7B1B3FA576F38F&CID¼365A0BE5B3476EDE2F1A01
F6B2766FB1&rd¼1&h¼g47O96F_f6AXs9xLPkf6FUjtDHpwEH142OcqpiMER6w
&v¼1&r¼https%3a%2f%2f2.zoppoz.workers.dev%3a443%2fhttps%2f451research.com%2freport-long%3ficid%3d1389&p¼Dev
Ex, 2011. 5083.1, The 451 Group: Commercial Adoption of Open Source.
[37] M. Stonebraker, New SQL: An Alternative to NoSQL and Old SQL for New OLTP
Apps, Retrieved February 16, 2017, from, http://cacm.acm.org/blogs/blog-cacm/
109710-new-sql-an-alternative-to-nosql-and-old-sql-for-new-oltp-apps/fulltext, 2011.
[38] K. Grolinger, W.A. Higashino, A. Tiwari, M.A.M. Capretz, Data Management in Cloud
Environments: NoSQL and NewSQL Data Stores, Retrieved February 16, 2017, from,
http://journalofcloudcomputing.springeropen.com/articles/10.1186/2192-113X-2-22,
2013. Journal of Cloud Computing.
[39] M. Pezzini, D. Feinberg, N. Rayner, R. Edjlali, Hybrid Transaction/Analytical
Processing Will Foster Opportunities for Dramatic Business Innovation, Retrieved
February 15, 2017, from, Gartner, Inc., 2014. https://www.gartner.com/doc/
2657815/hybrid-transactionanalytical-processing-foster-opportunities.
[40] Statista Inc., Global retail e-commerce sales 2014-2020, Retrieved January 26, 2017,
from, https://www.statista.com/statistics/379046/worldwide-retail-e-commerce-sales/,
2014Worldwide; eMarketer; 2014 to 2016.
[41] A. Maccioni, O. Cassanon, Y. Luo, J. Castrejon-Castillo, G. Vargas-Solar NoXperanto:
Crowdsourced Polyglot Persistence. [Research Report] RRLIG-047, 2014, http://
basho.com/use-cases/iot-sensor-device-data/.
[42] Basho, IoT/Sensor/Device Data. Retrieved January 29, 2017, from http://basho.com/
use-cases/iot-sensor-device-data/, n.d.
[43] A Database for Internet of Things (IoT) Data, Retrieved January 29, 2017, from http://
db4iot.com/. n.d.
[44] The OpenTSDB Authors, OpenTSDB—A Distributed, Scalable Monitoring System,
Retrieved January 29, 2017, from, http://opentsdb.net, 2016. OpenTSDB 2.3.0.
[45] VoltDB, Inc, IoT Sensors, Retrieved January 29, 2017, from, https://www.voltdb.
com/solutions/verticals/iot-sensors, 2016.
Application of NoSQL Database for Polyglot Persistence Application 387
[46] Dataversity, UnQL: A Standardized Query Language for NoSQL Databases, Retrieved
January 22, 2017, from, http://www.dataversity.net/unql-a-standardized-query-
language-for-nosql-databases/, 2013. Dataversity Education, LLC.
[47] Microsoft Developer Network, JSON Data (SQL Server), Retrieved January 26, 2017,
from, https://msdn.microsoft.com/en-us/library/dn921897.aspx, 2016.
[48] XML DB Developer’s Guide, 39 JSON in Oracle Database. Retrieved January 26,
2017, from http://docs.oracle.com/database/121/ADXDB/json.htm#ADXDB6246,
Oracle, n.d.
[49] DataStax, Inc, Inserting JSON Data Into a Table, Retrieved January 26, 2017, from,
https://docs.datastax.com/en/cql/3.3/cql/cql_using/useInsertJSON.html, 2017.
[50] Microsoft, Convert JSON Data to Rows and Columns With OPENJSON (SQL
Server), Retrieved February 19, 2017, from, https://msdn.microsoft.com/en-us/
library/dn921879.aspx, 2017. SQL Server 2016 and later.
[51] Oracle, Database as a Service (DBaaS): Use Cases and Adoption Patterns A Report on
Research Commissioned by Oracle, Retrieved January 26, 2017, from, http://www.
oracle.com/us/products/database/451-report-dbaas-3038788.pdf, 2016. 451 Research,
LLC and/or its Affiliates.
[52] International Telecommunication Union, Harnessing the Internet of Things for Global
Development, Retrieved February 5, 2017, from, A Contribution to The UN Broad-
band Commission for Sustainable Development, 2016. https://www.itu.int/en/action/
broadband/Documents/Harnessing-IoT-Global-Development.pdf.
[53] (a) MemSQL Inc, Real-Time Solutions for IoT. Retrieved February 05, 2017, from
http://www.memsql.com/solutions/internet-of-things/, n.d.; (b) R. Das, 2016, April
26, Five Technologies that Will Disrupt Healthcare By 2020. Retrieved August 31,
2017, from https://www.forbes.com/sites/reenitadas/2016/03/30/top-5-technologies-
disrupting-healthcare-by-2020/#51b467e16826.
[54] D. Erg€ urel, Virtual Reality Healthcare Systems Market to Reach $2.5 Billion by 2020,
Retrieved March 05, 2017, from, https://haptic.al/healthcare-virtual-reality-market-
9d23a2cc9cd6#.ze5plsida, 2016. Haptical.
[55] W. Lyon, NoSQL Polyglot Persistence: Tools and Integrations With Neo4j, Retrieved
January 23, 2017, from, Neo Technology, Inc, 2016. https://neo4j.com/blog/nosql-
polyglot-persistence-tools-integrations/#why-polyglot-persistence.
[56] S. Gulati, Thinking Beyond RDBMS: Building Polyglot Persistence Java Applications.
Retrieved January 25, 2017, from http://events.linuxfoundation.org/sites/events/files/
slides/Thinking%20Beyond%20RDBMS%20–%20Building%20Polyglot%20Persistence
%20Java%20Applications.pdf, The Linux Foundation®, n.d.
[57] Gartner, Gartner Says by 2020, Retrieved January 28, 2017, from, STAMFORD,
Conn., 2016. http://www.gartner.com/newsroom/id/3384720.
[58] L. Person, NoSQL Market by Type (Key–Value Store, Document Databases, Col-
umn Based Stores and Graph Database) and Application (Data Storage, Metadata
Store, Cache Memory, Distributed Data Depository, e-Commerce, Mobile
Apps, Web Applications, Data Analytics and Social Networking)—Global
Opportunity Analysis and Industry Forecast, 2013–2020, Retrieved January 28,
2017, from, Allied Market Research, 2015. https://www.alliedmarketresearch.
com/NoSQL-market.
[59] Home, Healthcare Analytics Market Worth 24.55 Billion USD by 2021. Retrieved
January 28, 2017, from http://www.marketsandmarkets.com/PressReleases/healthcare-
data-analytics.asp, n.d.
[60] M. A. Malik, Internet of Things (IoT) Healthcare Market by Component (Implantable
Sensor Devices, Wearable Sensor Devices, System and Software), Application (Patient
388 Ganesh Chandra Deka
[74] The Windows Club, Blockchain Technology & Microsoft’s Blockchain as a Service
Strategy, Retrieved February 19, 2017, from, http://www.thewindowsclub.com/
blockchain-microsoft-plans-develop-service, 2016.
[75] O. Ogundeji, Blockchain News, Retrieved February 18, 2017, from, https://
cointelegraph.com/tags/blockchain, 2017.
FURTHER READING
[76] D.G. Chandra, M.D. Borah, in: Cost benefit analysis of cloud computing in education,
In Computing, Communication and Applications (ICCCA), 2012 International Con-
ference on, IEEE, 2012, pp. 1–6.
[77] Deka, G. C. (2014). A survey of cloud database systems IT Professional, 16(2), 50–57.
https://doi.org/10.1109/MITP.2013.1, Survey of 15 popular NoSQL Databases.
[78] D.G. Chandra, BASE analysis of NoSQL database, Future Gener. Comput. Syst.
52 (2015) 13–21.
[79] G.C. Deka, Handbook of Research on Securing Cloud-Based Databases With Biomet-
ric Applications, IGI Global, 2014.
[80] G.C. Deka, P.K. Das, An Overview on the Virtualization Technology. Handbook of
Research on Cloud Infrastructures for Big Data Analytics, IGI Global, 2014,
pp. 289–321.
[81] G.S. Tomar, N.S. Chaudhari, R.S. Bhadoria, G.C. Deka, The Human Element of Big
Data: Issues, Analytics, and Performance, CRC Press, 2016.
[82] Deka, G. C., Siddesh, G. M., Srinivasa, K. G., &Patnaik, L. M. (2016). Emerging
Research Surrounding Power Consumption and Performance Issues in Utility Com-
puting. Information Science Reference.
[83] Deka, G. C., Zain, J. M., & Mahanti, P., ICT’s role in e-Governance in India and
Malaysia: a review, (2012) arXiv Preprint arXiv:1206.0681.
member of editorial board and reviewer for various Journals and International
conferences.
He is the co-author for four text books in fundamentals of computer sci-
ence. He has edited seven books (three IGI Global, USA, three CRC Press,
USA, one Springer) on Bigdata, NoSQL, and Cloud Computing in general as
of now.
He is Member of IEEE, the Institution of Electronics and Telecommunication
Engineers, India and Associate Member, the Institution of Engineers, India.