Evolución De Los Entornos Big Data Y Los Retos Para El Arquitecto De Datos

Total Page:16

File Type:pdf, Size:1020Kb

Evolución De Los Entornos Big Data Y Los Retos Para El Arquitecto De Datos EVOLUCIÓN DE LOS ENTORNOS BIG DATA Y LOS RETOS PARA EL ARQUITECTO DE DATOS CARLOS GONZÁLEZ CANTALAPIEDRA Big Data Architect EVERLYN VERGARA SOLER Big Data Consultant Cuando se habla de entornos y aplicaciones Big Data, a menudo nos referimos a Hadoop (1). Se trata de una pieza fundamental en la evolución e implantación de este tipo de tecnologías en el entorno empresarial, pero si nos refiriésemos aBig Data como algo exclusivamente refe- rente a Hadoop, nos estaríamos equivocando. Hadoop fue creado por Doug Cutting para com- HADOOP, UNA PIEZA CLAVE EN EL ORIGEN DEL ECOSISTE- plementar la distribución Nutch, su motor de bús- MA BIG DATA queda basado en Apache Lucene en el año 2004. La primera versión de Hadoop estaba compuesta por En ese mismo año, Google publica su paper (2) dos componentes principales: sobre MapReduce. Google empezaba a tener problemas para poder indexar la web al ritmo al –– HDFS: sistema de archivos distribuidos que permite que ésta iba creciendo y necesitaba encontrar de forma transparente a los desarrolladores alma- una solución para poder acometer el problema. cenar un archivo de datos en diferentes máquinas Esta solución se basaba en un sistema de archivos de un cluster de Hadoop. Cada fichero que se distribuidos, que le proporcionaba la capacidad almacena en HDFS se divide en bloques de un de poder procesar en paralelo grandes cantida- tamaño definido y es cada uno de estos bloques des de información. La solución al problema es lo que se replica en diferentes nodos del cluster. simple, pero a la vez brillante, ya que el sistema –– MapReduce: framework de desarrollo que per- era capaz de distribuir la información a procesar mite a los desarrolladores ejecutar procesos en en diferentes ordenadores que actuaban de for- paralelo dentro de un cluster de Hadoop abstra- ma independiente cada uno de ellos, pero a la yendo la complejidad de dicho procesamiento vez formaban parte de un todo. en paralelo. En el año 2006, Google publica los detalles so- Una de las principales características de Hadoop que bre la tecnología que había desarrollado y esta es ha hecho que la tecnología se expanda es que puede acogida con gran interés por la comunidad Open ejecutarse sobre lo que se denomina «commodity hard- Source, que en septiembre del año 2007 libera la ware», es decir, máquinas baratas. Si a esto sumamos primera versión de Hadoop bajo licencia Apache. que Hadoop es Open Source, parece que es la combi- 405 >Ei 21 C. GONZÁLEZ CANTALAPIEDRA / E. VERGARA SOLER FIGURA 1 ARQUITECTURA YARN Fuente: https://www.edureka.co/blog/introduction-to-hadoop- 2-0-and-advantages-of-hadoop-2-0/ nación perfecta para procesar grandes cantidades de Todos estos nuevos productos nacen cada uno de información a un coste asumible para las empresas. ellos con un propósito muy concreto dentro del ecosis- tema. Por ejemplo, Apache Sqoop nace con el propó- Una vez que la primera versión de Hadoop fue libera- sito de poder comunicar dos mundos muy distintos: las da, numerosas empresas empezaron a vislumbrar los tradicionales bases de datos relacionales con Hadoop. beneficios del uso de esta tecnología. Facebook es Sqoop permite leer datos desde una base de datos re- una de estas primeras empresas que ven el beneficio lacional y escribir dichos datos en HDFS para que pos- en el uso de la tecnología, ya que en el año 2008 (3) teriormente sean procesados por otros productos del se generan cantidades ingentes de información debi- ecosistema. Y también permite la comunicación en el do a las decenas de millones de usuarios que tiene sentido contrario, leyendo datos de HDFS y escribiendo la plataforma y a más del billón de páginas visitadas dichos datos en bases de datos relacionales. diariamente. Facebook necesita almacenar esta in- formación para posteriormente analizarla y ver cómo Otro ejemplo es Apache Oozie, que permite la defini- mejorar la experiencia del usuario. Facebook empie- ción de flujos de trabajo, pudiendo estar escritos cada za a utilizar el paradigma de programación MapRe- uno de ellos basándose en frameworks o productos duce y desarrolla un framework para poder ejecutar diferentes. De esta manera, podemos definir en un sentencias SQL sobre datos que residen en HDFS. Este solo flujo la lectura de datos con Apache Sqoop desde framework será liberado a la comunidad Open Source una base de datos relacional, procesarlos con Apa- posteriormente con el nombre de Hive (4). che Hive, y posteriormente construir un job con Apache Spark (9) para escribir los resultados del proceso en una A partir de este momento, grandes compañías empie- base de datos NoSQL como Apache Cassandra (10). zan a hacer un uso intensivo de esta tecnología y a participar como contribuidores del core de Hadoop. La mayoría de estos productos tienen dependencias Compañías como Facebook, eBay, IBM o Linkedin se con Apache Hadoop e incluso entre ellos mismos, de convierten en contribuidores con más de 200.000 lí- manera que cuando el ecosistema comienza a cre- neas de código. cer, la configuración de estas dependencias entre los distintos componentes añade un grado más de difi- cultad en la instalación y mantenimiento de las plata- LAS DISTRIBUCIONES COMO PARTE DE LA EVOLUCIÓN formas. DEL ECOSISTEMA BIG DATA Para reducir esta complejidad surgen nuevos actores En paralelo al desarrollo y evolución de Hadoop, em- alrededor del ecosistema Hadoop. Empresas como pieza a crearse un ecosistema de productos que se Cloudera (11) o Hortonworks (12) nacen con el propósi- van desarrollando en paralelo. Apache Hive, Apache to de crear distribuciones empaquetadas que faciliten Pig (5), Apache Zookeeper (6), Apache Sqoop (7) o la instalación, configuración y monitorización declus - Apache Oozie (8) son algunos ejemplos claros de ters Hadoop y empiezan a incluir dentro de dichas dis- cómo este ecosistema va creciendo y enriqueciendo tribuciones más productos del ecosistema que facilitan el uso de la plataforma. el almacenamiento y procesamiento de datos. 22 405 >Ei EVOLUCIÓN DE LOS ENTORNOS BIG DATA Y LOS RETOS PARA EL ARQUITECTO DE DATOS y de la complejidad de los algoritmos), ven reducido FIGURA 2 drásticamente su tiempo de ejecución al utilizar este APACHE HADOOP VS APACHE SPARK nuevo framework. Por ejemplo, un algoritmo de regre- sión lógica basado en Apache Hadoop y posterior- mente basado en Apache Spark, arroja la compara- tiva en tiempos de ejecución que muestra la Figura 2. Aparte de la velocidad, Apache Spark aporta una ventaja muy importante desde el punto de vista de un desarrollador de software. Cualquier desarrollador que haya trabajado con el framework MapReduce de Hadoop sabe que es complejo, y la llegada de Apache Spark aporta mayor facilidad en el desarrollo de aplicaciones de este tipo. Esta facilidad viene dada porque Spark provee diferentes APIs para Scala, Java y Python que abstraen al desarrollador de la compleji- Fuente: http://spark.apache.org/images/logistic-regression.png dad a la que estaban acostumbrados al trabajar con el framework MapReduce. Y esto se traduce también En enero de 2012 se produce un hito importante den- en velocidad a la hora de construir aplicaciones. tro de Hadoop. Se libera YARN (Yet Another Resource Negotiator) también conocido como MapReduce v2. Uno de los puntos fuertes de Spark es su librería de strea- YARN es una evolución de MapReduce y su propósito ming o real time. Hay que puntualizar que sería más es desacoplar la gestión de los recursos de la planifi- adecuado hablar de «near real time», ya que Apache cación de las tareas. Por un lado, el ResourceManager Spark no proporciona verdadero tiempo real debido a se encarga de la gestión de los recursos a nivel global la manera que gestiona la consumición de eventos o dentro del cluster y el ApplicationMaster se encarga de información en «tiempo real», ya que realmente lo que la planificación de las tareas por cada una de las apli- hace Apache Spark es la ejecución de procesos deno- caciones que se ejecutan dentro del cluster. La Figura minados micro batch. Estos procesos micro batch es- 1 ilustra la arquitectura de YARN. tán constantemente en ejecución y leen información de la fuente cada un periodo de tiempo establecido A partir de este momento e impulsado en gran me- (en el caso de Apache Spark, un periodo mínimo de dida por las distribuciones de Cloudera y Hortonworks, 0.5 segundos). el ecosistema de productos y las integraciones con entornos Hadoop crece de forma exponencial en el Uno de los grandes aciertos de Apache Spark es su ámbito empresarial. versatilidad para poder ejecutarse sobre distintas pla- taformas, entre ellas YARN. En el momento en el que En este momento, Hadoop era un framework para aparece Apache Spark, muchas de las grandes em- realizar procesamiento de datos en batch, no forma- presas que han empezado a tener plataformas Big ba parte aún de este ecosistema una solución para el Data, basan dichas plataformas en clusters Hadoop. procesamiento de datos en real time o near real time. Al poder ejecutar Spark sobre YARN, las empresas no tienen que desprenderse de sus clusters Hadoop (y de APACHE SPARK Y PROCESAMIENTO EN NEAR REAL TIME las aplicaciones que se ejecutan sobre estos clusters), es más, lo ven como un nuevo elemento complemen- Apache Spark es un framework open source que tario y que les abre un nuevo abanico de posibilidades, permite el análisis de datos de forma distribuida y en sobre todo la posibilidad de procesar información en memoria. La llegada de Apache Spark aporta al eco- near real time, algo de lo que Hadoop carece de for- sistema Big Data capacidades de procesamiento de ma nativa. datos que hasta ese momento se podían conseguir combinando diferentes componentes, y no posible en La aparición de este tipo de frameworks -Apache todos los casos.
Recommended publications
  • Apache Apex: Next Gen Big Data Analytics
    Apache Apex: Next Gen Big Data Analytics Thomas Weise <[email protected]> @thweise PMC Chair Apache Apex, Architect DataTorrent Apache Big Data Europe, Sevilla, Nov 14th 2016 Stream Data Processing Data Delivery Transform / Analytics Real-time visualization, … Declarative SQL API Data Beam Beam SAMOA Operator SAMOA DAG API Sources Library Events Logs Oper1 Oper2 Oper3 Sensor Data Social Databases CDC (roadmap) 2 Industries & Use Cases Financial Services Ad-Tech Telecom Manufacturing Energy IoT Real-time Call detail record customer facing (CDR) & Supply chain Fraud and risk Smart meter Data ingestion dashboards on extended data planning & monitoring analytics and processing key performance record (XDR) optimization indicators analysis Understanding Reduce outages Credit risk Click fraud customer Preventive & improve Predictive assessment detection behavior AND maintenance resource analytics context utilization Packaging and Improve turn around Asset & Billing selling Product quality & time of trade workforce Data governance optimization anonymous defect tracking settlement processes management customer data HORIZONTAL • Large scale ingest and distribution • Enforcing data quality and data governance requirements • Real-time ELTA (Extract Load Transform Analyze) • Real-time data enrichment with reference data • Dimensional computation & aggregation • Real-time machine learning model scoring 3 Apache Apex • In-memory, distributed stream processing • Application logic broken into components (operators) that execute distributed in a cluster •
    [Show full text]
  • The Cloud‐Based Demand‐Driven Supply Chain
    The Cloud-Based Demand-Driven Supply Chain Wiley & SAS Business Series The Wiley & SAS Business Series presents books that help senior-level managers with their critical management decisions. Titles in the Wiley & SAS Business Series include: The Analytic Hospitality Executive by Kelly A. McGuire Analytics: The Agile Way by Phil Simon Analytics in a Big Data World: The Essential Guide to Data Science and Its Applications by Bart Baesens A Practical Guide to Analytics for Governments: Using Big Data for Good by Marie Lowman Bank Fraud: Using Technology to Combat Losses by Revathi Subramanian Big Data Analytics: Turning Big Data into Big Money by Frank Ohlhorst Big Data, Big Innovation: Enabling Competitive Differentiation through Business Analytics by Evan Stubbs Business Analytics for Customer Intelligence by Gert Laursen Business Intelligence Applied: Implementing an Effective Information and Communications Technology Infrastructure by Michael Gendron Business Intelligence and the Cloud: Strategic Implementation Guide by Michael S. Gendron Business Transformation: A Roadmap for Maximizing Organizational Insights by Aiman Zeid Connecting Organizational Silos: Taking Knowledge Flow Management to the Next Level with Social Media by Frank Leistner Data-Driven Healthcare: How Analytics and BI Are Transforming the Industry by Laura Madsen Delivering Business Analytics: Practical Guidelines for Best Practice by Evan Stubbs ii Demand-Driven Forecasting: A Structured Approach to Forecasting, Second Edition by Charles Chase Demand-Driven Inventory
    [Show full text]
  • Pohorilyi Magistr.Pdf
    НАЦІОНАЛЬНИЙ ТЕХНІЧНИЙ УНІВЕРСИТЕТ УКРАЇНИ «КИЇВСЬКИЙ ПОЛІТЕХНІЧНИЙ ІНСТИТУТ імені ІГОРЯ СІКОРСЬКОГО» Факультет інформатики та обчислювальної техніки (повна назва інституту/факультету) Кафедра автоматики та управління в технічних системах (повна назва кафедри) «На правах рукопису» «До захисту допущено» УДК ______________ Завідувач кафедри __________ _____________ (підпис) (ініціали, прізвище) “___”_____________20__ р. Магістерська дисертація зі спеціальності (спеціалізації)126 Інформаційні системи та технології на тему: Система збору та аналізу тексових даних з соціальних мереж________ ____________________________________________________________________ Виконав: студент __6__ курсу, групи ___ІА-з82мп______ (шифр групи) Погорілий Богдан Анатолійович ____________________________ __________ (прізвище, ім’я, по батькові) (підпис) Науковий керівник: завідувач кафедри, д.т.н., професор Ролік О. І. __________ (посада, науковий ступінь, вчене звання, прізвище та ініціали) (підпис) Консультант: _______________________________ __________ (назва розділу) (науковий ступінь, вчене звання, , прізвище, ініціали) (підпис) Рецензент: _______________________________________________ __________ (посада, науковий ступінь, вчене звання, науковий ступінь, прізвище та ініціали) (підпис) Засвідчую, що у цій магістерській дисертації немає запозичень з праць інших авторів без відповідних посилань. Студент _____________ (підпис) Київ – 2019 року 3 Національний технічний університет України «Київський політехнічний інститут імені Ігоря Сікорського» Факультет (інститут)
    [Show full text]
  • Apache Calcite: a Foundational Framework for Optimized Query Processing Over Heterogeneous Data Sources
    Apache Calcite: A Foundational Framework for Optimized Query Processing Over Heterogeneous Data Sources Edmon Begoli Jesús Camacho-Rodríguez Julian Hyde Oak Ridge National Laboratory Hortonworks Inc. Hortonworks Inc. (ORNL) Santa Clara, California, USA Santa Clara, California, USA Oak Ridge, Tennessee, USA [email protected] [email protected] [email protected] Michael J. Mior Daniel Lemire David R. Cheriton School of University of Quebec (TELUQ) Computer Science Montreal, Quebec, Canada University of Waterloo [email protected] Waterloo, Ontario, Canada [email protected] ABSTRACT argued that specialized engines can offer more cost-effective per- Apache Calcite is a foundational software framework that provides formance and that they would bring the end of the “one size fits query processing, optimization, and query language support to all” paradigm. Their vision seems today more relevant than ever. many popular open-source data processing systems such as Apache Indeed, many specialized open-source data systems have since be- Hive, Apache Storm, Apache Flink, Druid, and MapD. Calcite’s ar- come popular such as Storm [50] and Flink [16] (stream processing), chitecture consists of a modular and extensible query optimizer Elasticsearch [15] (text search), Apache Spark [47], Druid [14], etc. with hundreds of built-in optimization rules, a query processor As organizations have invested in data processing systems tai- capable of processing a variety of query languages, an adapter ar- lored towards their specific needs, two overarching problems have chitecture designed for extensibility, and support for heterogeneous arisen: data models and stores (relational, semi-structured, streaming, and • The developers of such specialized systems have encoun- geospatial). This flexible, embeddable, and extensible architecture tered related problems, such as query optimization [4, 25] is what makes Calcite an attractive choice for adoption in big- or the need to support query languages such as SQL and data frameworks.
    [Show full text]
  • Integrazioa Hizkuntzaren Prozesamenduan Anotazio-Eskemak Eta Elkarreragingarritasuna. Testuen Prozesatze Masiboa, Datu Handien T
    EUSKAL HERRIKO UNIBERTSITATEA Lengoaia eta Sistema Informatikoak Doktorego-tesia Integrazioa hizkuntzaren prozesamenduan Anotazio-eskemak eta elkarreragingarritasuna. Testuen prozesatze masiboa, datu handien teknikak erabiliz. Zuhaitz Beloki Leitza Donostia, 2017 EUSKAL HERRIKO UNIBERTSITATEA Lengoaia eta Sistema Informatikoak Integrazioa hizkuntzaren prozesamenduan Anotazio-eskemak eta elkarreragingarritasuna. Testuen prozesatze masiboa, datu handien teknikak erabiliz. Zuhaitz Beloki Leitzak Xabier Artola Zubillagaren eta Aitor Soroa Etxaberen zuzendaritzapean egindako tesiaren txoste- na, Euskal Herriko Unibertsitatean Doktore titulua eskuratzeko aurkeztua. Donostia, 2017. i ii Laburpena Tesi-lan honetan hizkuntzaren prozesamenduko tresnen integrazioa landu du- gu, datu handien teknikei arreta berezia eskainiz. Tresnen integrazioa, izatez, bi mailatan landu dugu: anotazio-eskemen mailan eta prozesuen mailan. Anotazio-eskemen mailako integrazioan tresnen arteko elkarreragingarritasu- na lortzeko lehenbiziko pausoak aurkeztea izan dugu helburu. Horrekin lotu- ta, bi anotazio-eskema aurkeztu ditugu: Anotazio-Amaraunen Arkitektura (AWA, Annotation Web Architecture) eta NLP Annotation Format (NAF). AWA tesi-lan honekin hasi aurretik sortua izan zen, eta orain formalizazio- lan bat egin dugu berarekin, elkarreragingarritasunari arreta berezia jarriz. NAF, bere aldetik, eskema praktikoa eta sinplea izateko helburuekin sortu dugu. Bi anotazio-eskema horietatik abiatuz, eskemarekiko independentea den eredu abstraktu bat diseinatu dugu. Abstrakzio
    [Show full text]
  • Dzone-Guide-To-Big-Data.Pdf
    THE 2018 DZONE GUIDE TO Big Data STREAM PROCESSING, STATISTICS, & SCALABILITY VOLUME V BROUGHT TO YOU IN PARTNERSHIP WITH THE DZONE GUIDE TO BIG DATA: STREAM PROCESSING, STATISTICS, AND SCALABILITY Dear Reader, Table of Contents I first heard the term “Big Data” almost a decade ago. At that time, it Executive Summary looked like it was nothing new, and our databases would just be up- BY MATT WERNER_______________________________ 3 graded to handle some more data. No big deal. But soon, it became Key Research Findings clear that traditional databases were not designed to handle Big Data. BY G. RYAN SPAIN _______________________________ 4 The term “Big Data” has more dimensions than just “some more data.” It encompasses both structured and unstructured data, fast moving Take Big Data to the Next Level with Blockchain Networks BY ARJUNA CHALA ______________________________ 6 and historical data. Now, with these elements added to the data, some of the other problems such as data contextualization, data validity, Solving Data Integration at Stitch Fix noise, and abnormality in the data became more prominent. Since BY LIZ BENNETT _______________________________ 10 then, Big Data technologies has gone through several phases of devel- Checklist: Ten Tips for Ensuring Your Next Data Analytics opment and transformation, and they are gradually maturing. A term Project is a Success BY WOLF RUZICKA, ______________________________ that was considered as a fad and a technology ecosystem that was 13 considered a luxury are slowly establishing themselves as necessary Infographic: Big Data Realization with Sanitation ______ needs for today’s business activities. Big Data is the new competitive 14 advantage and it matters for our businesses.
    [Show full text]
  • Building Streaming Applications with Apache Apex
    Building Streaming Applications with Apache Apex Chinmay Kolhatkar, Committer @ApacheApex, Engineer @DataTorrent Thomas Weise, PMC Chair @ApacheApex, Architect @DataTorrent Nov 15th 2016 Agenda • Application Development Model • Creating Apex Application - Project Structure • Apex APIs • Configuration Example • Operator APIs • Overview of Operator Library • Frequently used Connectors • Stateful Transformation & Windowing • Scalability - Partitioning • End-to-end Exactly Once 2 Application Development Model Directed Acyclic Graph (DAG) Operator er Enriched Filtered Stream Stream Operator Operator Operator Operator Output Tuple Tuple er er er Stream er Filtered Operator Stream Enriched er Stream ▪Stream is a sequence of data tuples ▪Operator takes one or more input streams, performs computations & emits one or more output streams • Each Operator is YOUR custom business logic in java, or built-in operator from our open source library • Operator has many instances that run in parallel and each instance is single-threaded ▪Directed Acyclic Graph (DAG) is made up of operators and streams 3 Creating Apex Application Project chinmay@chinmay-VirtualBox:~/src$ mvn archetype:generate -DarchetypeGroupId=org.apache.apex -DarchetypeArtifactId=apex-app-archetype -DarchetypeVersion=LATEST -DgroupId=com.example -Dpackage=com.example.myapexapp -DartifactId=myapexapp -Dversion=1.0-SNAPSHOT … … ... Confirm properties configuration: groupId: com.example artifactId: myapexapp version: 1.0-SNAPSHOT package: com.example.myapexapp archetypeVersion: LATEST Y: :
    [Show full text]
  • Code Smell Prediction Employing Machine Learning Meets Emerging Java Language Constructs"
    Appendix to the paper "Code smell prediction employing machine learning meets emerging Java language constructs" Hanna Grodzicka, Michał Kawa, Zofia Łakomiak, Arkadiusz Ziobrowski, Lech Madeyski (B) The Appendix includes two tables containing the dataset used in the paper "Code smell prediction employing machine learning meets emerging Java lan- guage constructs". The first table contains information about 792 projects selected for R package reproducer [Madeyski and Kitchenham(2019)]. Projects were the base dataset for cre- ating the dataset used in the study (Table I). The second table contains information about 281 projects filtered by Java version from build tool Maven (Table II) which were directly used in the paper. TABLE I: Base projects used to create the new dataset # Orgasation Project name GitHub link Commit hash Build tool Java version 1 adobe aem-core-wcm- www.github.com/adobe/ 1d1f1d70844c9e07cd694f028e87f85d926aba94 other or lack of unknown components aem-core-wcm-components 2 adobe S3Mock www.github.com/adobe/ 5aa299c2b6d0f0fd00f8d03fda560502270afb82 MAVEN 8 S3Mock 3 alexa alexa-skills- www.github.com/alexa/ bf1e9ccc50d1f3f8408f887f70197ee288fd4bd9 MAVEN 8 kit-sdk-for- alexa-skills-kit-sdk- java for-java 4 alibaba ARouter www.github.com/alibaba/ 93b328569bbdbf75e4aa87f0ecf48c69600591b2 GRADLE unknown ARouter 5 alibaba atlas www.github.com/alibaba/ e8c7b3f1ff14b2a1df64321c6992b796cae7d732 GRADLE unknown atlas 6 alibaba canal www.github.com/alibaba/ 08167c95c767fd3c9879584c0230820a8476a7a7 MAVEN 7 canal 7 alibaba cobar www.github.com/alibaba/
    [Show full text]
  • Introduction to Apache Beam
    Introduction to Apache Beam Dan Halperin JB Onofré Google Talend Beam podling PMC Beam Champion & PMC Apache Member Apache Beam is a unified programming model designed to provide efficient and portable data processing pipelines What is Apache Beam? The Beam Programming Model Other Beam Beam Java Languages Python SDKs for writing Beam pipelines •Java, Python Beam Model: Pipeline Construction Beam Runners for existing distributed processing backends Apache Apache Apache Apache Cloud Apache Apache Apex Flink Gearpump Spark Dataflow Apex Apache Gearpump Apache Beam Model: Fn Runners Google Cloud Dataflow Execution Execution Execution What’s in this talk • Introduction to Apache Beam • The Apache Beam Podling • Beam Demos Quick overview of the Beam model PCollection – a parallel collection of timestamped elements that are in windows. Sources & Readers – produce PCollections of timestamped elements and a watermark. ParDo – flatmap over elements of a PCollection. (Co)GroupByKey – shuffle & group {{K: V}} → {K: [V]}. Side inputs – global view of a PCollection used for broadcast / joins. Window – reassign elements to zero or more windows; may be data-dependent. Triggers – user flow control based on window, watermark, element count, lateness - emitting zero or more panes per window. 1.Classic Batch 2. Batch with 3. Streaming Fixed Windows 4. Streaming with 5. Streaming With 6. Sessions Speculative + Late Data Retractions Simple clickstream analysis pipeline Data: JSON-encoded analytics stream from site •{“user”:“dhalperi”, “page”:“blog.apache.org/feed/7”,
    [Show full text]
  • FROM FLAT FILES to DECONSTRUCTED DATABASE the Evolution and Future of the Big Data Ecosystem
    FROM FLAT FILES TO DECONSTRUCTED DATABASE The evolution and future of the Big Data ecosystem. Julien Le Dem @J_ [email protected] March 2019 Julien Le Dem @J_ Julien Principal Data Engineer • Author of Parquet • Apache member • Apache PMCs: Arrow, Kudu, Heron, Incubator, Pig, Parquet, Tez • Used Hadoop first at Yahoo in 2007 • Formerly Twitter Data platform and Dremio Agenda ❖ At the beginning there was Hadoop (2005) ❖ Actually, SQL was invented in the 70s “MapReduce: A major step backwards” ❖ The deconstructed database ❖ What next? At the beginning there was Hadoop Hadoop Storage: A distributed file system Execution: Map Reduce Based on Google’s GFS and MapReduce papers Great at looking for a needle in a haystack Great at looking for a needle in a haystack … … with snowplows Original Hadoop abstractions Execution Storage Map/Reduce File System Read write locally locally Simple Just flat files M R ● Flexible/Composable Shuffle ● Any binary ● Logic and optimizations ● No schema tightly coupled ● No standard ● Ties execution with M R ● The job must know how to persistence split the data M R “MapReduce: A major step backwards” (2008) Databases have been around for a long time Relational model • First described in 1969 by Edgar F. Codd • Originally SEQUEL developed in the early 70s at IBM SQL • 1986: first SQL standard • Updated in 1989, 1992, 1996, 1999, 2003, 2006, 2008, 2011, 2016 • Universal Data access language Global Standard • Widely understood Underlying principles of relational databases Separation of logic and optimization Standard
    [Show full text]
  • Apache Calcite for Enabling SQL Access to Nosql Data Systems Such As Apache Geode Christian Tzolov Whoami Christian Tzolov
    Apache Calcite for Enabling SQL Access to NoSQL Data Systems such as Apache Geode Christian Tzolov Whoami Christian Tzolov Engineer at Pivotal, Big-Data, Hadoop, Spring Cloud Dataflow, Apache Geode, Apache HAWQ, Apache Committer, Apache Crunch PMC member [email protected] blog.tzolov.net twitter: @christzolov https://nl.linkedin.com/in/tzolov Disclaimer This talk expresses my personal opinions. It is not read or approved by Pivotal and does not necessarily reflect the views and opinions of Pivotal nor does it constitute any official communication of Pivotal. Pivotal does not support any of the code shared here. 2 Big Data Landscape 2016 • Volume • Velocity • Varity • Scalability • Latency • Consistency vs. Availability (CAP) 3 Data Access • {Old | New} SQL • Custom APIs – Key / Value – Fluent APIs – REST APIs • {My} Query Language Unified Data Access? At What Cost? 4 SQL? • Apache Apex • SQL-Gremlin • Apache Drill … • Apache Flink • Apache Geode • Apache Hive • Apache Kylin • Apache Phoenix • Apache Samza • Apache Storm • Cascading • Qubole Quark 5 Geode Adapter - Overview SQL/JDBC/ODBC Parse SQL, converts into relational expression and Apache Calcite optimizes Push down the relational expressions supported by Geode Spring Data API for Enumerable OQL and falls back to the Calcite interacting with Geode Adapter Enumerable Adapter for the rest Convert SQL relational Spring Data Geode Adapter expressions into OQL queries Geode (Geode Client) Geode API and OQL Geode Server Geode Server Geode Server Data Data Data SQL Relational Expressions
    [Show full text]
  • Apache Apex Recommendation Example
    Apache Apex Recommendation Example Made-to-order Silvan blackbirds, his kickers danced crenels thick-wittedly. Aerial Donal begrimed perceptively and narratively, she depredated her imponents reassume lucklessly. Dodecasyllabic Russ bases Byronically, he recruits his scrutinizers very tumidly. Consent for these steps to guarantee it basically means what they have difference between cost and testing, backup or apache apex browser tab of control Apache Apex in a Nutshell Hello and masterpiece to another. Oracle recommends that returns a finite chunks and examples in many benefits to get our dev weekly basis and take about. The apex is set is free html and can technically write code. In apex and examples to address any page. Instance for apache rewrite rule indicates that are called context variable with apache apex recommendation example yourself with its own database as long as. SQL Formatter Settings respository. See meet for examples of mixture to divide an HSTS policy two common web servers. Thus the soql query in the capabilities of that allows developers within the application data requirements before, while kafka streams would. Sql examples are interested in apex listener to example as. This vulnerability since then. Server technology enthusiast who are a beginning and number for server configuration of these cookies to go from student evaluation. API Analysis & News ProgrammableWeb. The success of women business, though, depends on driving the customers and users toward profitable transactions. An list of distributed streaming machine learning framework. To fix this issue, we had to properly set the retention properties in server. This method removes all the leading white spaces from a ingenious and returns it.
    [Show full text]