19.1.2 SQL Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
19.1.3 Stored Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . 46
19.1.4 ODBC/JDBC Server Connections . . . . . . . . . . . . . . . . . . 46
19.2 NoSQL Stores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
19.2.1 KeyValue Stores (HBase) . . . . . . . . . . . . . . . . . . . . . . . 46
19.2.2 Document Store HDFS — available . . . . . . . . . . . . . . . . . 46
19.2.3 Document Store MongoDB . . . . . . . . . . . . . . . . . . . . . . 48
19.2.4 Hive Warehouse . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
19.2.5 Impala . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
19.2.6 Kudu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
19.2.7 Time Series Databases . . . . . . . . . . . . . . . . . . . . . . . . 48
19.2.8 MPP Databases (Greenplum) . . . . . . . . . . . . . . . . . . . . 48
20 Data Processing / Analytics - Frameworks 49
20.1 MapReduce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
20.1.1 How does MapReduce work – available . . . . . . . . . . . . . . . 51
20.1.2 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
20.1.3 What is the limitation of MapReduce? – available . . . . . . . . . 53
20.2 Apache Spark . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
20.2.1 What is the difference to MapReduce? – available . . . . . . . . . 54
20.2.2 How does Spark fit to Hadoop? – available . . . . . . . . . . . . . 54
20.2.3 Where’s the difference? . . . . . . . . . . . . . . . . . . . . . . . . 54
20.2.4 Spark and Hadoop is a perfect fit . . . . . . . . . . . . . . . . . . 55
20.2.5 Spark on YARN: . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
20.2.6 My simple rule of thumb: . . . . . . . . . . . . . . . . . . . . . . 56
20.2.7 Available Languages – available . . . . . . . . . . . . . . . . . . . 56
20.2.8 How to do stream processing . . . . . . . . . . . . . . . . . . . . . 56
20.2.9 How to do batch processing . . . . . . . . . . . . . . . . . . . . . 56
20.2.10 How does Spark use data from Hadoop – available . . . . . . . . . 56
20.3 What is a RDD and what is a DataFrame? . . . . . . . . . . . . . . . . . 58
20.4 Spark coding with Scala . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
20.5 Spark coding with Python . . . . . . . . . . . . . . . . . . . . . . . . . . 58
20.6 How and why to use SparkSQL? . . . . . . . . . . . . . . . . . . . . . . . 58
20.7 Machine Learning on Spark? (Tensor Flow) . . . . . . . . . . . . . . . . 58
20.8 MLlib: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
20.9 Spark Setup – available . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
20.10Spark Resource Management – available . . . . . . . . . . . . . . . . . . 59
5