Material Big Data

Lanzados ppts informativos de tecnologías BigData: Hadoop, Hbase, Hive, Zookeeper...

Apuntate al Curso de PowerBI. Totalmente práctico, aprende los principales trucos con los mejores especialistas

Imprescindible para el mercado laboral actual. Con Certificado de realización!!

Pentaho Analytics. Un gran salto

Ya se ha lanzado Pentaho 8 y con grandes sorpresas. Descubre con nosotros las mejoras de la mejor suite Open BI

LinceBI, la mejor solución Big Data Analytics basada en Open Source

LinceBI incluye Reports, OLAP, Dashboards, Scorecards, Machine Learning y Big Data. Pruébala!!

17 oct. 2019

Los 9 problemas a los que se enfrentan las empresas que trabajan con datos


Muy interesante esta presentación que indica de forma muy clara cuales son los problemas a los que se enfrentan las empresas cuando realizan proyectos e iniciativas de datos que, de forma general, podemos plantear como de Transformación Digital


Big Data Olap con Superset (AirBnB)



Os venimos contando desde hace ya un tiempo, el potencial del mundo Big Data y OLAP Business Intelligence, con diferentes tecnologías. Hoy, os contamos la arquitectura usando Superset, creado por AirBnB

Nuestros compañeros de Stratebi han creado un entorno de prueba para que lo veas, además, en funcionamiento

Información publicada recientemente sobre el tema:

x50 faster 'near real time' Big Data OLAP Analytics Architecture
Comparacion de sistemas Open Source OLAP para Big Data
Use Case “Dashboard with Kylin (OLAP Hadoop) & Power BI”
Cuadros de mando con Tableau y Apache Kylin (OLAP con Big Data)
BI meet Big Data, a Happy Story
7 Ejemplos y Aplicaciones practicas de Big Data
Analysis Big Data OLAP sobre Hadoop con Apache Kylin
Real Time Analytics, concepts and tools
Hadoop Hive y Pentaho: Business Intelligence con Big Data (Caso Practico)



Arquitectura:



En el caso de estudio que presentamos, hacemos uso de las herramientas Apache Kylin y Apache Superset para dar soporte al análisis mediante Cuadros de Mando de un almacén de datos (Data Warehouse, DW) que contiene datos con características Big Data (Volumen, Velocidad y Variedad).
Se trata de un gran Volumen de datos académicos, relativos a los últimos 15 años de una universidad de gran tamaño. A partir de esta fuente de datos, se ha diseñado un modelo multidimensional para el análisis del rendimiento académico. En él contamos con unos 100 millones de medidas cómo los créditos relativos a asignaturas aprobadas, suspendidas o matriculadas. Estos hechos se analizan en base a distintas dimensiones o contextos de análisis, como el Sexo, la Calificación o el Año Académico.
Dado que este Volumen de datos es demasiado grande para analizarlo con un rendimiento aceptable con los sistemas OLAP (R-OLAP y M-OLAP) tradicionales, hemos decidido probar la tecnología Apache Kylin, la cual promete tiempos de respuesta de unos pocos segundos para Volúmenes que pueden superar los 10 billones de filas en la tabla de hechos o medidas.
Además, para hacer posible la exploración de los datos del cubo de Kylin mediante lenguaje SQL y la creación de cuadros de mando que podamos compartir con los usuarios finales de los datos, hemos hecho uso de la herramienta Superset.
Apache Superset es una herramienta de visualización desarrollada por AirBnb de reciente creación. Facilita la creación de cuadros de mando de forma intuitiva y destaca por ofrecer una gran variedad de representaciones gráficas tanto para la exploración como para la visualización de los datos.
La herramienta Superset incluye de serie conectores para Sqlite y Druid pero dispone de una serie de paquetes para realizar conexiones con otras fuentes de datos. El uso del estándar SQLAlchemy permite realizar consultas en diferentes orígenes de datos, siempre que se disponga del conector correspondiente. Mediante el uso del conector con Kylin (kylinpy), es posible enviar consultas a Kylin utilizando SQL.
Superset incluye un entorno de consultas (SQL Lab) que permite desarrollar consultas SQL sobre una fuente de datos para dar soporte a una representación gráfica. Por otra parte, Superset permite crear cuadros de mandos a partir de las gráficas generadas (que parten de las consultas SQL realizadas). Tras crear el cuadro de mandos, es necesario gestionar los permisos para conceder acceso al mismo a los usuarios autorizados. En este caso se ha configurado Superset para permitir el acceso público a este cuadro de mandos.


Desarrollada por eBay y posteriormente liberada como proyecto Apache open source, Kylin es una herramienta de código libre que da soporte al procesamiento analítico en línea (OLAP) de grandes volúmenes de datos con las características del Big Data (Volumen, Velocidad y Variedad).
Sin embargo, hasta la llegada de Kylin, la tecnología OLAPestaba limitada a las bases de datos relacionales o, en el mejor de los casos, con optimizaciones para el almacenamiento multidimensional, tecnologías con importantes limitaciones para enfrentarse al Big Data.
Apache Kylin, construida sobre la base de distintas tecnologías del entorno Hadoop, proporciona una interfaz SQL que permite la realización de consultas para el análisis multidimensional de un conjunto de datos, logrando unos tiempos de consulta muy bajos (segundos) para hechos de estudio que pueden llegar hasta los 10 billones de filas o más.
Las tecnologías del entorno Hadoop fundamentales para Kylin son Apache Hive y Apache HBase. El almacén de datos (Data Warehouse, DW) se crea en forma de modelo estrella y se mantiene en Apache Hive. A partir de este modelo y mediante la definición de un modelo de metadatos del cubo OLAP, Apache Kylin, mediante un proceso offline, crea un cubo multidimensional (MOLAP) en HBase. Se trata de una estructura optimizada para su consulta a través de la interfaz SQL proporcionada por Kylin.
De esta forma cuando Kylin recibe una consulta SQL, debe decidir si puede responderla con el cubo MOLAP en HBase (en milisegundos o segundos), o sí por el contrario, no se ha incluido en el cubo MOLAP, y se ha ejecutar una consulta frente al esquema estrella en Apache Hive (minutos), lo cual es poco frecuente.
Por último, gracias al uso de SQL y la disponibilidad de drivers J/ODBC podemos conectar con herramientas de Business Intelligence como Tableau, Apache Zeppelin o incluso motores de consultas MDX como Pentaho Mondrian, permitiendo el análisis multidimensional en sus formas habituales: vistas o tablas multidimensionales, cuadros de mando o informes.



Superset es una herramienta de visualización de código abierto desarrollada por AirBnb y liberada como proyecto Apache. Se trata de un proyecto de reciente creación que se encuentra en proceso de desarrollo. 
Esta herramienta destaca por disponer de un amplio abanico de representaciones para la exploración y visualización de datos, posibilitando la creación de cuadros de mando así como por su sencillez de uso y alta disponibilidad, siendo diseñado para funcionar bien tanto en ordenadores personales como en entornos distribuidos.
Por otra parte, Superset utiliza SQLAlchemy para facilitar la integración con diferentes gestores de bases de datos relacionales (como MySQL, PostgreSQL, Oracle, etc.) así como otros gestores de datos no relacionales orientados al Big Data (como Kylin, Druid o Vertica). Para realizar la conexión de Superset con alguna de estas fuentes de datos, se necesita instalar un paquete que actúa como middleware y configurar la conexión con SQLAlchemy.
Otras funcionalidades por destacar de Superset son la seguridad y autenticación que permite el uso de fuentes como LDAP, OAuth o OpenID. Se pueden utilizar diferentes usuarios y roles con permisos específicos de acceso, creación o modificación de fuentes de datos, gráficas, cuadros de mando etc.

Sí estas interesado en hacer tu proyecto con esta tecnología no dudes en solicitar presupuesto en StrateBI.

New Data Connectors in LinceBI



LinceBI, an open source based Big Data Analytics solution, with a free license model with professional support, recently increase the number of data connectors

Now, you have a complete set of data connectors in order to make easier data injection. 

Recently, we give you some details about LinceBi functionalities

Even more, it includes a predefined industry oriented models, dashboads, KPIS, reports and Analysis... so deploy a 'ready to use' Analytics solution is very easy

16 oct. 2019

Introducción a Metabase





Metabase es una herramienta de software libre que permite crear cuadros de mando a partir de múltiples fuentes de datos. La construcción de cuadro de mandos es bastante intuitiva ya que permite elaborar consultas mediante un asistente que utiliza lenguaje natural.

Para mostrar mejor las posibilidades de Metabase, hemos creado un caso de uso, para la creación de un Dashboard. El cual podéis acceder desde aquí



Metabase proporciona un amplio catálogo de gráficas: progresos, tablas enriquecidas, líneas, áreas, barras, filas, dispersión, pastel, mapas, tarjetas y embudos. 



Es importante, antes de comenzar con la explotación de datos, definir un concepto importante de Metabase llamado colección, que hace referencia a la agrupación de métricas, elementos visuales y cuadros de mandos que se definen en Metabase.

Como funciona Internet of Things



Las 7 C del Internet of Things (IoT)



Vaya, se trataba de buscar otra letra para concretar puntos importantes de una tecnología de moda. Ahora tenemos las 7 Cs del Internet of Things, y lo dice Forbes: 1 — Consumption: The first stage of the IoT is always consumption. We could also use the word ‘ingestion’ here i.e. we need to build devices that are capable of producing operational data so that we can consume it into our IT structures. 2– Connection: The existence of smart connections...


List of Open Source solutions for Smart Cities - Internet of Things projects



Increasingly projects are carried on so-called 'Smart Cities', supported by Big Data, Internet of Things... and the good news is that most of them are made with Open Source technologies. We can share, from TodoBI.com our insights about these technologies Making a city “smart” involves a set of areas we will outline below: Without IOT (Internet Of Things), there will be no Smart City.  Since automatic collected data is the most efficient...


Cuadros de Mando y Business Intelligence para Ciudades Inteligentes



Cada vez son más las ciudades que están implementando soluciones de Ciudades Inteligentes, Smart Cities... en donde se abarcan una gran cantidad de aspectos, en cuando a tecnologías, dispositivos, analítica de datos, etc... Lo principal en todos ellos es que son soluciones que deben integrar información e indicadores diversos de todo tipo de fuentes de datos: bases de datos relacionales tradicionales, redes sociales, aplicaciones móviles, sensores......


35 Open Source Tools para Internet of Things (IoT)


Cada vez hay más relación entre el Business Intelligence, el Big Data, el Open Source e Internet of Things. Sobre todo de la mano de los proyectos y desarrollos SmartCity, en los que cada vez se emplean más estas tecnologías, como nos cuentan nuestros compañeros de Stratebi. La buena noticia es que hay una gran variedad de teconologías open source que nos lo permiten. Echadle un vistazo: 1. Arduino 2. Eclipse IoT Project 3. Kinoma 4. M2MLabs Mainspring 5. Node-RED Hardware 6. Arduino Yún 7. BeagleBoard 8. Flutter 9....

Comparacion entre Talend y Pentaho



Hace un tiempo os poníamos una primera Comparación entre Pentaho Data Integration Talend Open Studio. Hoy traemos otra comparación interesante:
  • Talend: Talend is an open-source data integration tool whereas Pentaho Kettle is a commercial open-source data integration tool
  • Talend offers limited connectivity to concurrent databases, and other forms of data but has a dependency factor of Java drivers to connect to the data sources whereas Pentaho offers a wide range of connectivity to extensive databases, and other forms of data
  • Talend has its support which exists majorly in the US whereas Pentaho its support which not only exists in the US, and also targets the UK, Asia Pacific markets

Although both Talend and Pentaho tools carry similar characteristics, here one needs to understand the GUI which Pentaho Kettle holds a slight advantage.
Below we see the salient characteristics and prominent offerings of the Pentaho Kettle to Talend:
  • Pentaho kettle is twice faster when compared to Talend
  • Pentaho kettle’s GUI is easier to run when compared to Talend’s GUI Adapts well to the system
  • Can easily deal with different data clusters
  • Can be used as a slave server on many machines while transformation processing
  • Cost of ownership

Talend is more useful when there is an existing system where a Java program is already running/being implemented.
Listed below are the advantages of Talend code generation approach
  • Easy deployment (for standalone Java application)
  • Saves time
  • Cost-effective


Visto en Educba

15 oct. 2019

A Federated Information Infrastructure that Works: Video and Paper

Take a look at this interesting presentation by our former colleague Xavier Gumara, good friend and great specialist in data and analytics.

Highly recommended!!




ABOUT THE TALK

Large companies are pretty much distributed/organized by business divisions or geographies that became part of the enterprise as new launches or via mergers and acquisitions. In this situation, it can be challenging to provide “one source of truth” for core business information at enterprise scale.

PAPER:



At Adevinta, after learning from our decentralization and centralization implementations, we evolved towards a federated information infrastructure that, while having some inefficiencies, ended up being successful for data collection, storage, exploration, transformation and aggregation at enterprise scale.

In this talk you will learn about:

- Our enterprise BI architecture and governance model and how we got there
- How are we leveraging central and local truths with Athena and Redshift Spectrum
- Our framework to easily calculate business metrics built in Scala and Spark

Comparacion Scala vs Python para Apache Spark




Para todos aquellos que usan el framework de Apache Spark, sabrán que hay desarrolladores que se decantan por Scala y otros por Python. Os dejamos una comparación que os puede ayudar a decidiros





Visto en Kdnuggets

14 oct. 2019

Por que muchos Data Scientist estan dejando sus trabajos?


Muy revelador lo que nos cuentan en este articulo del Towards Data Science, y que coincide con muchas situaciones y casos reales que conocemos y que se están produciendo.

La frustración con el día a día del trabajo de los Data Scientist, respecto a las expectativas es importante (muchos conocéis que es llamado 'el trabajo más atractivo del siglo XXI'). La realidad es que muchos abandonan sus puestos de trabajo en grandes compañías, cuando parecían ser lo más deseados


Estas son las razones:

1. Las expectativas no coinciden con la realidad



Cuando son contratados, los Data Scientist creen que van a estar resolviendo problemas muy complejos y cruciales para la compañía, con algoritmos novedosos y sofisticados.
La realidad es que se encuentran que a la compañía lo que le importa es que tipo de gráfico debe aparecer en los informes o cuadros de mando del próximo comité de dirección, en mayor proporción que optimizar el mejor algoritmo

Creen que van a ser muy importantes en la compañía y salvo que ésta se dedique especificamente a 'Machine Learning' (muy pocas), serán solo un empleado más, por muy grande o multinacional que sea la compañía


2. Las relaciones en la empresa son más importantes



Por mucho que piensen los Data Scientist que van a ser valorados por conocer hasta el algortimo más complejo (y esto les haga tener más relevancia en las compañias), la realidad es que será más importante ayudar a las personas de negocio que pidan realizar tareas más sencillas y repetitivas como cargar ficheros de datos, hacer limpieza de los mismos y crear algunos informes, como forma de progresar en la misma


3. Te van a ver como 'el de los datos', en general



Da igual que expliques la diferencias, el nivel de conocimiento que como 'Data Scientist' tienes de Spark, Hadoop, Hive, Pig, SQL, Neo4J, MySQL, Python, R, Scala, Tensorflow, A/B Testing, NLP anything machine learning... tu eres el experto en datos, por lo que la mayor parte de tu tiempo, los responsables de estas grandes empresas te pedirán informes, por que no cuadran los datos, un bonito dashboard, cargar tablas o CSVs, etc....


4. Trabajar en equipos especializados y solitarios no siempre funciona




Los Data Scientist pueden ser muy buenos con premios ganados en Kaggle, conocer muchos algoritmos y trabajar bien en equipos pequeños.
Pero para las grandes organizaciones los resultados de un Data Scientist o su equipo es solo una pieza dentro de un gran puzzle que son los objetivos empresariales y, por tanto, es importante ir alineados con el resto de áreas y departamentos, lo que necesita de 'mano izquierda' o saber manejarse con las personas en las empresas, algo frustrante para muchos Data Scientist




STDashboard, a free license way to create Dashboards



The improvements in this version of STDashboard are focused on user interface for panel and dashboard and also some enhancement in performance and close some old bugs. It works with Pentaho and embeded in web applications

You can see it in action in this Pentaho Demo Online and as a part of LinceBI suite

STDashboard doesn´t requiere anual license, you can manage unlimited users and it´s open source based. 

STDashboard includes professional services (training, support and maintenance, docs and bug resolution - so, you have high enterprise level guaranteed -)

Interested? contact Stratebi or LinceBI




See a Video Demo:


About UI improvements:

 - New set of predefined dashboard templates. We have designed a new way to manage dashboard panels that allow you to shape the dashboard in almost any combination of size, proportion and amount of panel you want to have. For this reason we have created a set of different layouts for most common cases.




- Embed in any web application. This sample shows STDashboard in LinceBI




 - Self managed panel. Add and remove panels, now in stdashboard you can add or remove panels easily using the button inside each panel header.



 - New layout management. Now an stashboard layout is composed of a list panel container, the containers in this list are stacked vertically in the page. There are two types of such containers; horizontal and vertical, each one stores a list of real panels (the ones where the graph are drawn) in an horizontal or vertical flow, in this ways you can combine those panels to achieve almost any layout you can imagine.





 - Resizable panels. We have included the possibility of resize the panel horizontally or vertically, keeping the proportion of graph inside it in correspondence with horizontal adjacent panels without making an horizontal scroll in the page, that means if you shrink a panel horizontally and there is another panel in the same row, the other panels also shrink an a proportional way to allow all panels in a row fit the horizontal size of the window. 

Is interesting to note here that we have implemented this functionality using pure GWT API, to avoid external dependencies and ensure portability between browsers.

 - Draggable panels. Each panel in the entire dashboard can be dragged to any parent container. In the header of each single panel the is a handle that allow dragging the panels to any panel container in the dashboard.



 - Responsive Dashboard. The ability to resize dynamically the panels and graph when the window's dimensions change, or when a user make zoom in the page is now implemented, also in most phones the dashboard can be seen proportionally and keeping the original layout.

 - Persistent state of the layout. When you save a dashboard to a file, we are saving the visual state of it and store it in the file. Then, when you open the dashboard, all the details of visual interface are hold and you can see the dashboard exactly the same previous to saved, that means panels size, locations are restored effectively.



About performance:

 - In some points of the application an specific query was causing performance problem. To know if a member has child or not in a multilevel hierarchy, the previous code issued a query to list all the sons of that member and check if the size is greater than 0, our solutions in this case for this type of query was simply check the level of the current member and in this way answer that boolean query.

 - Connection to cubes using the new MondrianOlap4jDriver java class. This improve the connection performance and stability because is designed for mondrian connections, the previous code was using an standard JDBC connection.


About new enhacements:

- Date configuration for filters. Date dimension are special dimensions, because almost any cube has at least one defined and are very used for make range query over fact table, to allow dynamic filter in panels, we had to enable a .property file that allow the user to define their date dimension and configure the way they want to use it in queries.



Added the Pentaho File Explorer to allows the users navigation through the files stored in pentaho, like reports, documents, etc and embeed it inside a panel in the dashboard



11 oct. 2019

From Big Data to Fast Data



Muy buen articulo de Raul Estrada. Principales puntos:

1. Data acquisition: pipeline for performance

In this step, data enters the system from diverse sources. The key focus of this stage is performance, as this step impacts of how much data the whole system can receive at any given point in time.


  • Technologies
    For this stage you should consider streaming APIs and messaging solutions like:
    • Apache Kafka - open-source stream processing platform
    • Akka Streams - open-source stream processing based on Akka
    • Amazon Kinesis - Amazon data stream processing solution
    • ActiveMQ - open-source message broker with a JMS client in Java
    • RabbitMQ - open-source message broker with a JMS client in Erlang
    • JBoss AMQ - lightweight MOM developed by JBoss
    • Oracle Tuxedo - middleware message platform by Oracle
    • Sonic MQ - messaging system platform by Sonic
For handling many of these key principles of data acquisition, the winner is Apache Kafka because it’s open source, focused on high-throughput, low-latency, and handles real-time data feeds.


2. Data storage: flexible experimentation leads to solutions

There are a lot of points of view for designing this layer, but all should consider two perspectives: logical (i.e. the model) and physical data storage. The key focus for this stage is "experimentation” and flexibility.


  • Technologies
    For this stage consider distributed database storage solutions like:
    • Apache Cassandra - distributed NoSQL DBMS
    • Couchbase - NoSQL document-oriented database
    • Amazon DynamoDB - fully managed proprietary NoSQL database
    • Apache Hive - data warehouse built on Apache Hadoop
    • Redis - distributed in-memory key-value store
    • Riak - distributed NoSQL key-value data store
    • Neo4J - graph database management system
    • MariaDB - with Galera form a replication cluster based on MySQL
    • MongoDB - cross-platform document-oriented database
    • MemSQL - distributed in-memory SQL RDBMS
For handling many of key principles of data storage just explained, the most balanced option is Apache Cassandra. It is open source, distributed, NoSQL, and designed to handle large data across many commodity servers with no single point of failure.


3. Data processing: combining tools and approaches

Years ago, there was discussion about whether big data systems should be (modern) stream processing or (traditional) batch processing. Today we know the correct answer for fast data is that most systems must be hybrid — both batch and stream at the same time. The type of processing is now defined by the process itself, not by the tool. The key focus of this stage is "combination."


  • Technologies
    For this stage, you should consider data processing solutions like:
    • Apache Spark - engine for large-scale data processing
    • Apache Flink - open-source stream processing framework
    • Apache Storm - open-source distributed realtime computation system
    • Apache Beam - open-source, unified model for batch and streaming data
    • Tensorflow - open-source library for machine intelligence
For managing many of the key principles of data storage just explained, the winner is a tie between Spark (micro batching) and Flink (streaming).


4. Data visualization

Visualization communicates data or information by encoding it as visual objects in graphs, to clearly and efficiently get information to users. This stage is not easy; it’s both an art and a science.

Technologies


  • For this layer you should consider visualization solutions in these three categories:
  • Comparacion de sistemas Open Source OLAP para Big Data

    Ya os hemos hablado en este blog mucho de nuestra solucion Open Source OLAP para Big Data preferida, que es Apache Kylin:





    -x50 faster 'near real time' Big Data OLAP Analytics Architecture
    Use Case “Dashboard with Kylin (OLAP Hadoop) & Power BI”
    Cuadros de mando con Tableau y Apache Kylin (OLAP con Big Data)
    BI meet Big Data, a Happy Story
    7 Ejemplos y Aplicaciones practicas de Big Data
    Analysis Big Data OLAP sobre Hadoop con Apache Kylin
    Real Time Analytics, concepts and tools 
    Hadoop Hive y Pentaho: Business Intelligence con Big Data (Caso Practico)


    Hoy os vamos a contar sobre otras alternativas gracias a Roman Lementov:

    I want to compare ClickHouseDruid and Pinot, the three open source data stores that run analytical queries over big volumes of data with interactive latencies.
    ClickHouse, Druid and Pinot have fundamentally similar architecture, and their own niche between general-purpose Big Data processing frameworks such as Impala, Presto, Spark, and columnar databases with proper support for unique primary keys, point updates and deletes, such as InfluxDB.
    Due to their architectural similarity, ClickHouse, Druid and Pinot have approximately the same “optimization limit”. But as of now, all three systems are immature and very far from that limit. Substantial efficiency improvements to either of those systems (when applied to a specific use case) are possible in a matter of a few engineer-months of work. I don’t recommend to compare performance of the subject systems at all, choose the one which source code you are able to understand and modify, or in which you want to invest.
    Among those three systems, ClickHouse stands a little apart from Druid and Pinot, while the latter two are almost identical, they are pretty much two independently developed implementations of exactly the same system.
    ClickHouse more resembles “traditional” databases like PostgreSQL. A single-node installation of ClickHouse is possible. On small scale (less than 1 TB of memory, less than 100 CPU cores). 

    ClickHouse is much more interesting than Druid or Pinot, if you still want to compare with them, because ClickHouse is simpler and has less moving parts and services. I would say that it competes with InfluxDB or Prometheus on this scale, rather than with Druid or Pinot.
    Druid and Pinot more resemble other Big Data systems in the Hadoop ecosystem. They retain “self-driving” properties even on very large scale (more than 500 nodes), while ClickHouse requires a lot of attention of professional SREs. Also, Druid and Pinot are in the better position to optimize for infrastructure costs of large clusters, and better suited for the cloud environments, than ClickHouse.
    The only sustainable difference between Druid and Pinot is that Pinot depends on Helix framework and going to continue to depend on ZooKeeper, while Druid could move away from the dependency on ZooKeeper. On the other hand, Druid installations are going to continue to depend on the presence of some SQL database.
    Currently Pinot is optimized better than Druid. (But please read again above — “I don’t recommend to compare performance of the subject systems at all”, and corresponding sections in the post.)