Tuesday, 8 November 2016

Scala Interview Questions And Answers

Explain what is Scala?
Scala is an object functional programming and scripting language for general software applications designed to express solutions in a concise manner.
What is a ‘Scala set’? What are methods through which operation sets are expressed?
Scala set is a collection of pairwise elements of the same type.  Scala set does not contain any duplicate elements.  There are two kinds of sets, mutable and immutable.
What is a ‘Scala map’?
Scala map is a collection of key or value pairs.  Based on its key any value can be retrieved.  Values are not unique but keys are unique in the Map.
What is the advantage of Scala?
Less error prone functional style
High maintainability and productivity
High scalability
High testability
Provides features of concurrent programming
In what ways Scala is better than other programming language?
The arrays uses regular generics, while in other language, generics are bolted on as an afterthought and are completely separate but have overlapping behaviours with arrays.
Scala has immutable “val” as a first class language feature. The “val” of scala is similar to Java final variables.  Contents may mutate but top  reference is immutable.
Scala lets ‘if blocks’, ‘for-yield loops’, and ‘code’ in braces to return a value. It is more preferable, and eliminates the need for a separate ternary operator.
Singleton has singleton objects rather than C++/Java/ C# classic static.  It is a cleaner solution
Persistent immutable collections are the default and built into the standard library.
It has native tuples and a concise code
It has no boiler plate code
What are the Scala variables?
Values and variables are two shapes that come in Scala. A value variable is constant and cannot be changed once assigned.  It is immutable, while a regular variable, on the other hand, is mutable, and you can change the value.
The two types of variables are
var  myVar : Int=0;
val   myVal: Int=1;
Mention the difference between an object and a class ?
A class is a definition for a description.  It defines a type in terms of methods and composition of other types.  A class is a blueprint of the object. While, an object is a singleton, an instance of a class which is unique. An anonymous class is created for every object in the code, it inherits from whatever classes you declared object to implement.
What is recursion tail in scala?
‘Recursion’ is a function that calls itself. A function that calls itself, for example, a function ‘A’ calls function ‘B’, which calls the function ‘C’.  It is a technique used frequently in functional programming.  In order for a tail recursive, the call back to the function must be the last function to be performed.
What is ‘scala trait’ in scala?
‘Traits’ are used to define object types specified by the signature of the supported methods.  Scala allows to be partially implemented but traits may not have constructor parameters.  A trait consists of method and field definition, by mixing them into classes it can be reused.
When can you use traits?
There is no specific rule when you can use traits, but there is a guideline which you can consider.
 If the behaviour will not be reused, then make it a concrete class. Anyhow it is not a reusable behaviour.
In order to inherit from it in Java code, an abstract class can be used.
If efficiency is a priority then lean towards using a class
Make it a trait if it might be reused in multiple and unrelated classes. In different parts of the class hierarchy only traits can be mixed into different parts.
You can use abstract class, if you want to distribute it in compiled form and expects outside groups to write classes inheriting from it.
What is Case Classes?
Case classes provides a recursive decomposition mechanism via pattern matching, it is a regular classes which export their constructor parameter. The constructor parameters of case classes can be accessed directly and are treated as public values.
What is the use of tuples in scala?
Scala tuples combine a fixed number of items together so that they can be passed around as whole. A tuple is immutable and can hold objects with different types, unlike an array or list.
What is function currying in Scala?
Currying is the technique of transforming a function that takes multiple arguments into a function that takes a single argument Many of the same techniques as language like Haskell and LISP are supported by Scala. Function currying is one of the least used and misunderstood one.
What are implicit parameters in Scala?
Implicit parameter is the way that allows parameters of a method to be “found”.  It is similar to default parameters, but it has a different mechanism for finding the “default” value.  The implicit parameter is a parameter to method or constructor that is marked as implicit.  This means if a parameter value is not mentioned then the compiler will search for an “implicit” value defined within a scope.
What is a closure in Scala?
A closure is a function whose return value depends on the value of the variables declared outside the function.
What is Monad in Scala?
A monad is an object that wraps another object. You pass the Monad mini-programs, i.e functions, to perform the data manipulation of the underlying object, instead of manipulating the object directly.  Monad chooses how to apply the program to the underlying object.
What is Scala anonymous function?
In a source code, anonymous functions are called ‘function literals’ and at run time, function literals are instantiated into objects called function values.  Scala provides a relatively easy syntax for defining anonymous functions.
For more info on Scala click here

Friday, 28 October 2016

Expression Transformation in Informatica

Expression transformations are used for row-wise manipulation. For any type of manipulation you wish to perform on an individual record, use an Expression transformation. The Expression transformation accepts the row-wise data, manipulates it, and passes it to the target. The transformation receives the data from the input port and sends the data out from output ports.
This is of type passive transformation which allows you to calculate the expressions for each record. An expression transformation in Informatica supports to write expression either in variable ports or only in output ports. In this Informatica Tutorial for Beginners, we will learn about Expression Transformation, it uses and examples. We will also learn about Rank Index and Rank Transformation in other posts.

Informatica Expression Transformation Uses

Use an Expression Transformation to derive the new attributes to change the inconsistent data into consistent format.
Use Expression Transformations for any row-wise calculation, such as if you want to concatenate the names, get the total salary, and convert it to uppercase
An expression transformation is created with following types of ports.
  • Input port (I)
  • Output Port (O)
  • Variable Port (V)
Variable Ports
A transformation variable is created by creating a port and selecting the V check box. When V is checked, the I and O check boxes are grayed out. This indicates that a variable port is neither an input nor an output port.Variables Ports are not visible in Normal view, only in Edit view.
1) Simplify complex expressions e.g. extract month from a date for use in several output ports
2) Provide temporary storage
3) Improve efficiency
4)Variables are initialized (numeric to 0, string to “”) when the Mapping logic is processed
Ports are evaluated in the order
1) All input ports
2) Variable ports in the display order (expressions can refer to input ports and variable ports that appear earlier in the port list)
3) Output ports (expressions can reference input and variable ports
Advanced Properties for Expression Transformation
Tracing Level Amount of detail that appears in the log for this transformation. You can choose terse, normal, verbose initialization, or verbose data. Default is normal.

Thursday, 27 October 2016

Data Storage Properties in EssBase

DATA STORAGE PROPERTIES

There are six properties available in Essbase Database. Those are
  • Store Data “S”
  • Dynamic Calc “X”
  • Dynamic calc and store “V”
  • Label only “O”
  • Shared members “H”
  • Never Share “N”

Store Data:

By Default the storage type of any member is store data. That means data is stored for that member combinations. If it is a parent member, the member is calculated from it’s children and gets stored in database(i.e. in page files)

Dynamic Calc:

When we tag a parent member as Dynamic calc the member gets calculated during retrieval time and Analytic a\services don’t reset the storage space for the member combinations. During default calculations, the member won’t get calculated; installed it will get calculated during retrieval only.

Advantages:

Storage space will be reduced and default calculation time will get reduced

Disadvantages:

Retrieval time may increase now.

Note: We cannot Dynamic calc on a level 0 member. We can tag on level 0 member, only if it has a formula attached to it.

QTR1 2007(Dynamic calc)
JAN 2007
FEB 2007
MAR 2007
Right click on any member and click Edit Member properties. Click Data storage. A drop down appears and Select Dynamic calc.

Dynamic calc and store:

When we tag a parent member as Dynamic calc and store, the member calculated during retrieval time and Analytic services don’t reserve the storage space for the member combinations. During default calculations, the member won’t get calculated; instead it will get calculated during first retrieval only and it writes the data into Essbase data base. Only first user may face some issues with retrieval time. For subsequent users, it is same as Store Data only.

Advantages:

Default calculations time will get reduced.

Disadvantages:

Retrieval time may increase now for the first user only. If two many concurrent users are there, it’s better of use Dynamic calc instead of Dynamic calc and store.
Note: We cannot tag Dynamic calc and store on level 0 member. We can tag on level 0 member, only if it has a formula attached to it.
QTR1 2007(Dynamic calc and store)
JAN 2007
FEB 2007
MAR 2007
Right click on any member and click Edit Member properties. Click Data storage. A drop down appears and Select Dynamic calc and store.

Label Only:

We can tag Label only non-Level 0 members only. When we tag parent member as label only, the parent will not get calculated from it’s child and time is no storage space reserved for the parent member also. We can save some time during default calculations and also we can save some storage space. Apart from the table only mainly eases navigation in report. It’s a dummy parent which is used to group together some members.
In the below example, cards related is a parent which is used to group related members
Measures dimension is the best example for Label only
Measures (Label Only)
 For more info click here

Wednesday, 26 October 2016

How Does Tableau Work



While Tableau lets you analyze databases and spreadsheets like never before, you don’t need to know anything about databases to use Tableau. In fact, Tableau is designed to allow business people with no technical training to analyze their data efficiently.

Tableau is based on three simple concepts:

Connect

Connect Tableau to any database that you want to analyze. Note that Tableau does not import the data. Instead it queries to the database directly.

Analyze

Analyzing data means viewing it, filtering it, sorting it, performing calculations on it, reorganizing it, summarizing it, and so on.
Using Tableau you can do all of these things by simply arranging fields of your data source on a Tableau worksheet. When you drop a field on a worksheet, Tableau queries the data using standard drivers and query languages (like SQL and MDX) and presents a visual analysis of the data.

Share

You can share results with others either by sharing workbooks with other Tableau users, by pasting results into applications such as Microsoft Office, printing to PDF or by using Tableau Server to publish or embed your views across your organization.

Thursday, 13 October 2016

Learn Devops Online Training Course

Tekslate is the globally professional in IT courses training which emphasize on hands-on experience with examples from real-time scenarios by experts.

About Course:

DevOps integrates tools for an advanced Software Delivery Pipeline emphasis on quality, automation and results. DevOps replace a displaced establishing an open communication and intended approach to selecting tools. DevOps can be compared to other IT automation initiatives such as ITSM and ITIL but it is not advised as the same, and is particular in the types and amount of automation that are indicated.

Course Curriculum:

Introduction to DevOps and its Necessities
Understand Common Infrastructure Servers
Implement Automated Installations and Deployments
Understand Performance tuning aspects and basic Security for Infrastructure
Basics of Bash/Python Scripting
Basics of Virtualization and it’s Concepts
Monitoring And Logging 
The Useful DevOps Tools & Commands      

Key Features:

·         Flexible Timings
·         Certified & Industry Experts Trainers
·         Multiple Training Delivery Models
·         Customize Course
·         24/7 Support
·         Hands On Experience
·         Real Time Use Cases
·         Q&A with Trainers
·         Small Batches (1to5)
·         Flexible Payments
·         Job Support
·         Placement Assistance

About Tekslate:

Tekslate is the largest provider of high quality online training courses. It is conceptualized and initiated by several multidisciplinary and ingenious software technocrats having a combined experience of more than 10 yrs in the industry.

Contact Details:

INDIA: +91 954 262 2288 , USA: +1 973-910-5725
Email: info@Tekslate.com
Website: http://tekslate.com/

Live MongoDB Online Training

MongoDB is one of the new open source databases that focus on the ideas of the NoSQL (Not Only SQL) approach. This database is employed to handle documents in a free schema design that gives to the developer great flexibility to store and use data.

Course Curriculum:

Introduction, Architecture and Installation
CRUD Operations
Schema Design and Data Modelling
Administration
Application Engineering and MongoDB Tools
Indexing and Aggregation Framework
Project, Additional Concepts and Case Studies
     
Key Features:

·         Flexible Timings
·         Certified & Industry Experts Trainers
·         Multiple Training Delivery Models
·         Customize Course
·         24/7 Support
·         Hands On Experience
·         Real Time Use Cases
·         Q&A with Trainers
·         Small Batches (1to5)
·         Flexible Payments
·         Job Support
·         Placement Assistance

About Tekslate:

Tekslate is the largest provider of high quality online training courses. It is conceptualized and initiated by several multidisciplinary and ingenious software technocrats having a combined experience of more than 10 yrs in the industry.

Contact Details:

INDIA: +91 954 262 2288 , USA: +1 973-910-5725
Email: info@Tekslate.com
Website: http://tekslate.com/

Tuesday, 11 October 2016

Best Tableau Online Training

Tableau is one of the fastest evolving business intelligence and data visualization tool. It is fast to deploy, easy to learn and very intuitive to use. Tableau can connect with various data sources such as text, excel files, relational databases. It has multiple options to represent data in different views, applying filters, groups, drill down formatting, forecasting.

Course Curriculum:

Tableau Fundamentals
Tableau Advanced
Tableau Visual Analytics
Tableau Server Comprehensive
Tableau Administration     

Friday, 7 October 2016

Best Open Stack Online Training

OpenStack lets users expand other instances and virtual machines which handle particular tasks for operating cloud environment on the fly. It composes horizontal scaling easy, which means that tasks which use from running accordingly can easily serve less or more users on the fly by just spinning up more instances. A set of experts from infrastructure, platform and applications teams would then put the example together and get a working solution tailored to the needs of the organization.

Best Hadoop Online Course

Hadoop Online Course is designed to gain the knowledge on how to validate for the HDFS daemons and generating Test Data in HDFS.

Thursday, 6 October 2016

Learn Cassandra Online Training

Cassandra originated at Facebook in 2007 to solve that company’s inbox search problem, in which they had to deal with large volumes of data in a way that was difficult to scale with traditional methods. Specifically, the team had requirements to handle huge volumes of data in the form of message copies, reverse indices of messages, and many random reads and many simultaneous random writes.