Apache Spark is a multi-language engine for executing data engineering, data science, and machine learning on single-node machines or clusters.
N/A
Hortonworks Data Platform
Score 5.0 out of 10
N/A
Hortonworks Data Platform (HDP) is an open source framework for distributed storage and processing of large, multi-source data sets. HDP modernizes IT infrastructure and keeps data secure—in the cloud or on-premises—while helping to drive new revenue streams, improve customer experience, and control costs.
Hortonworks merged with Cloudera in eary 2019.
Apache Spark has rich APIs for regular data transformations or for ML workloads or for graph workloads, whereas other systems may not such a wide range of support. Choose it when you need to perform data transformations for big data as offline jobs, whereas use MongoDB-like distributed database systems for more realtime queries.
I recommend [Hortonworks Data Platform] as Big Data platform in order to start your developments. It's free. It's easy to use. You can install in more server or use a sandbox with you favorite virtualization platform ( vmware or oracle virtualbox). There is also a containerized version.
Manage our data in hdfs is simple; you can interact with server with REST API.
It performs a conventional disk-based process when the data sets are too large to fit into memory, which is very useful because, regardless of the size of the data, it is always possible to store them.
It has great speed and ability to join multiple types of databases and run different types of analysis applications. This functionality is super useful as it reduces work times
Apache Spark uses the data storage model of Hadoop and can be integrated with other big data frameworks such as HBase, MongoDB, and Cassandra. This is very useful because it is compatible with multiple frameworks that the company has, and thus allows us to unify all the processes.
As an open source project collection, it relies strongly on community activity. You still have the option to contract premium consulting or training services.
Altough it is quickly evolving into Data Science tools availability (eg. Tensorflow incorporate in HDP 3), it can be cumbersome from a developer transitioning from a traditional IDE, into the notebook vs. datalake metaphore.
As expected for a big data infranstructure, the resource requirements base line is rather high. This means that if used on premise, you need to think of about 10 machines for a minimal reasonable deploy.
If the team looking to use Apache Spark is not used to debug and tweak settings for jobs to ensure maximum optimizations, it can be frustrating. However, the documentation and the support of the community on the internet can help resolve most issues. Moreover, it is highly configurable and it integrates with different tools (eg: it can be used by dbt core), which increase the scenarios where it can be used
1. It integrates very well with scala or python. 2. It's very easy to understand SQL interoperability. 3. Apache is way faster than the other competitive technologies. 4. The support from the Apache community is very huge for Spark. 5. Execution times are faster as compared to others. 6. There are a large number of forums available for Apache Spark. 7. The code availability for Apache Spark is simpler and easy to gain access to. 8. Many organizations use Apache Spark, so many solutions are available for existing applications.
We used Surprise Kit for one of the other research works. It is more fine-tuned to Recommendation systems and their algorithms. Apache Spark has MLlib for majority of ML problems. Where as software like Surprse Kit - it suitable for a specific task of Recommendations only
While Apache Hadoop is completely open sourced, Hortonworks Data Platform offers support as well as keeps pace with the open source versions. Also, the HDP open sources its own products, thus giving back to the community. I find using the Hortonworks Data Platform more intuitive than Cloudera or MapR versions.
Faster turn around on feature development, we have seen a noticeable improvement in our agile development since using Spark.
Easy adoption, having multiple departments use the same underlying technology even if the use cases are very different allows for more commonality amongst applications which definitely makes the operations team happy.
Performance, we have been able to make some applications run over 20x faster since switching to Spark. This has saved us time, headaches, and operating costs.
It provides a convenient way of quickly setting up a big data environment, easily setting up clusters with different configurations. It provides several security architectures that can be used as well. Since it provides a big list of components and packaged together, it is a great tool for companies to get set and utilize it for their use cases.
Since it uses Ambari extensively to install, upgrade and manage software, it is very convenient and easy to support and operationalize the components. Alerting and notifications, ability to create custom alerts give you the capability to add any number of alerts to meet your custom needs. It provides a great way to maintain other software by creating mpacks and the ability to add custom code, and you can add other software to be managed in a centralized tool.
The use and support of popular and useful open source software and the company's contribution to the community makes HDP a very useful tool that enables a quick, secure, easily maintainable suite of components that can help companies meet the needs of the business. What is great is that new components keep getting added based on any new useful tool that comes available, like Druid, and made available as part of the suite of components. That helps businesses keep up with new capabilities as they become available, and use them to solve their problems.