• Stars
    star
    749
  • Rank 60,348 (Top 2 %)
  • Language
    Java
  • License
    Other
  • Created about 10 years ago
  • Updated 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

An open source framework for building data analytic applications.
https://cdap-users.herokuapp.com/badge.svg?t=1

Introduction

CDAP is an integrated, open source application development platform for the Hadoop ecosystem that provides developers with data and application abstractions to simplify and accelerate application development, address a broader range of real-time and batch use cases, and deploy applications into production while satisfying enterprise requirements.

CDAP is a layer of software running on top of Apache Hadoop® platforms such as the Cloudera Enterprise Data Hub or the Hortonworks® Data Platform. CDAP provides these essential capabilities:

  • Abstraction of data in the Hadoop environment through logical representations of underlying data;
  • Portability of applications through decoupling underlying infrastructures;
  • Services and tools that enable faster application creation in development;
  • Integration of the components of the Hadoop ecosystem into a single platform;
  • Metadata management that automatically captures metadata and lineage;
  • CDAP pipelines with an integrated UI for click-and-drag development; and
  • Higher degrees of operational control in production through enterprise best-practices.

CDAP exposes developer APIs (Application Programming Interfaces) for creating applications and accessing core CDAP services. CDAP defines and implements a diverse collection of services that land applications and data on existing Hadoop infrastructure such as HBase, HDFS, YARN, MapReduce, Hive, and Spark.

You can run applications ranging from simple MapReduce Jobs and complete ETL (extract, transform, and load) pipelines all the way up to complex, enterprise-scale data-intensive applications.

Developers can build and test their applications end-to-end in a full-stack, single-node installation. CDAP can be run either as a Sandbox, deployed within the Enterprise on-premises or hosted in the Cloud.

For more information, see our collection of Developers' Manual and other documentation.

Getting Started

Prerequisites

To install and use CDAP, there are a few simple prerequisites:

  1. JDK 8+ (required to run CDAP; note that $JAVA_HOME should be set)
  2. Node.js (required to run the CDAP UI; we recommend any version greater than v4.5.0)
  3. Apache Maven 3.0+ (required to build the example applications; 3.1+ to build CDAP itself)

Build

You can get started with CDAP by building directly from the latest source code:

git clone https://github.com/caskdata/cdap.git
cd cdap
mvn clean package

After the build completes, you will have built all modules for CDAP.

For more build options, please refer to the build instructions.

Introductory Tutorial

Visit our web site for an introductory tutorial for developers that will guide you through installing CDAP and running an example application.

Where to Go Next

Now that you've had a look at the CDAP Sandbox, take a look at:

How to Contribute

Interested in helping to improve CDAP? We welcome all contributions, whether in filing detailed bug reports, submitting pull requests for code changes and improvements, or by asking questions and assisting others on the mailing list.

For quick guide to getting your system setup to contribute to CDAP, take a look at our Contributor Quickstart Guide.

Filing Issues: Bug Reports & Feature Requests

Bugs and suggestions should be made by filing an issue.

Existing issues can be browsed at the CDAP project issues.

Pull Requests

We have a simple pull-based development model with a consensus-building phase, similar to Apache's voting process. If you’d like to help make CDAP better by adding new features, enhancing existing features, or fixing bugs, here's how to do it:

  1. If you are planning a large change or contribution, discuss your plans on the [email protected] mailing list first. This will help us understand your needs and best guide your solution in a way that fits the project.
  2. Fork CDAP into your own GitHub repository.
  3. Create a topic branch with an appropriate name.
  4. Work on the code to your heart's content.
  5. Once you’re satisfied, create a pull request from your GitHub repo (it’s helpful if you fill in all of the description fields).
  6. After we review and accept your request, we’ll commit your code to the caskdata/cdap repository.

Thanks for helping to improve CDAP!

Mailing Lists

CDAP User Group and Development Discussions:

The cdap-user mailing list is primarily for users using the product to develop applications. You can expect questions from users, release announcements, and any other discussions that we think will be helpful to the users.

The cdap-dev mailing list is essentially for developers actively working on the product, and should be used for all our design, architecture and technical discussions moving forward. This mailing list will also receive all JIRA and GitHub notifications.

License and Trademarks

Copyright © 2014-2017 Cask Data, Inc.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Cask is a trademark of Cask Data, Inc. All rights reserved.

Apache, Apache HBase, and HBase are trademarks of The Apache Software Foundation. Used with permission. No endorsement by The Apache Software Foundation is implied by the use of these marks.

More Repositories

1

tigon

High Throughput Real-time Stream Processing Framework
C++
283
star
2

tephra

Apache Tephra: Transactions for HBase.
Java
158
star
3

netty-http

Netty based HTTP service with JAX-RS
Java
126
star
4

hadoop_cookbook

Cookbook to install Hadoop 2.0+ using Chef
Ruby
82
star
5

hydrator-plugins

Cask Hydrator Plugins Repository
Java
66
star
6

coopr

A template-based cluster provisioning system
Java
61
star
7

cdap-apps

CDAP Applications
JavaScript
43
star
8

cdap-operator

CDAP Kubernetes Operator
Go
20
star
9

cdap-ui

CDAP UI
JavaScript
19
star
10

cdap-build

Repository for building CDAP and additional external projects
Dockerfile
15
star
11

cdap-hbase-increments

Efficient read-less increments for HBase
Java
10
star
12

cask-tracker

Cask Tracker is a CDAP Extension that provides the ability to track data changes and provide input to data governance processes on a cluster.
Java
10
star
13

cdap_cookbook

Cookbook to install Cask Data Application Platform (CDAP) using Chef
Ruby
6
star
14

cdap-security-extn

CDAP Security Extensions
Java
6
star
15

cm_csd

CDAP Custom Service Descriptor (CSD) for Cloudera Manager (CM)
Shell
6
star
16

tigon-apps

Repository for reference applications for Tigon
Java
6
star
17

cdap-ambari-service

Ambari custom service definition for easily installing and managing CDAP on HDP cluster
Python
6
star
18

cdap-integration-tests

CDAP integration tests
Java
5
star
19

cdap-ingest

Agent based ingest into CDAP
Java
5
star
20

coopr-provisioner

Provisioner service for Coopr (caskdata/coopr)
Ruby
3
star
21

hadoop_wrapper_cookbook

Wrapper cookbook for caskdata/hadoop_cookbook to initialize various Hadoop components
Ruby
3
star
22

sample-spark-app

Examples on how-to run existing Spark applications in CDAP.
Java
3
star
23

ng-capsules

Cask Angular Components - shared module sources
JavaScript
3
star
24

krb5_utils_cookbook

DEPRECATED: use krb5 LWRPs - Utility cookbook for configuring Kerberos
Ruby
2
star
25

cdap-docs

CDAP Documentation Repository
HTML
2
star
26

gh-runners

Dockerfile
2
star
27

cdap-maven-plugin

Collection of CDAP Maven Plugins
Java
2
star
28

hadoop_mapr_cookbook

Cookbook to install the MapR Distribution for Apache Hadoop
Ruby
2
star
29

coopr-templates

Coopr Cluster Templates
Shell
2
star
30

cdap-e2e-tests

Java
2
star
31

release-tools

Python
1
star
32

impala_cookbook

Cookbook to install Impala using Chef
Ruby
1
star
33

events-writer-extension

Java
1
star
34

omnibus-coopr

Packaging for Cask Data's COOPR using omnibus from Chef
Shell
1
star
35

cdap-ops-tools

Tools for monitoring Cask Data Application Platform (CDAP) installations
Java
1
star
36

common

Common library
Java
1
star
37

cdap-odbc-driver

CDAP ODBC Driver
C++
1
star
38

cdap-navigator

CDAP Navigator Integration
Java
1
star
39

website

CDAP IO website
HTML
1
star