All Projects → emmalanguage → emma

emmalanguage / emma

Licence: Apache-2.0 license
A quotation-based Scala DSL for scalable data analysis.

Programming Languages

scala
5932 projects
java
68154 projects - #9 most used programming language
CSS
56736 projects
javascript
184084 projects - #8 most used programming language
HTML
75241 projects
shell
77523 projects
python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to emma

dlink
Dinky is an out of the box one-stop real-time computing platform dedicated to the construction and practice of Unified Streaming & Batch and Unified Data Lake & Data Warehouse. Based on Apache Flink, Dinky provides the ability to connect many big data frameworks including OLAP and Data Lake.
Stars: ✭ 1,535 (+2416.39%)
Mutual labels:  flink
dockerfiles
Multi docker container images for main Big Data Tools. (Hadoop, Spark, Kafka, HBase, Cassandra, Zookeeper, Zeppelin, Drill, Flink, Hive, Hue, Mesos, ... )
Stars: ✭ 29 (-52.46%)
Mutual labels:  flink
hadoopoffice
HadoopOffice - Analyze Office documents using the Hadoop ecosystem (Spark/Flink/Hive)
Stars: ✭ 56 (-8.2%)
Mutual labels:  flink
doorboy.vim
Vim plugin for auto closing brackets ( => (|) and quotations " => "|" , and more
Stars: ✭ 19 (-68.85%)
Mutual labels:  quotations
Websockets-Vertx-Flink-Kafka
A simple request response cycle using Websockets, Eclipse Vert-x server, Apache Kafka, Apache Flink.
Stars: ✭ 14 (-77.05%)
Mutual labels:  flink
scarf
Toolkit for highly memory efficient analysis of single-cell RNA-Seq, scATAC-Seq and CITE-Seq data. Analyze atlas scale datasets with millions of cells on laptop.
Stars: ✭ 54 (-11.48%)
Mutual labels:  scalable-data-analysis
SANSA-Stack
Big Data RDF Processing and Analytics Stack built on Apache Spark and Apache Jena http://sansa-stack.github.io/SANSA-Stack/
Stars: ✭ 130 (+113.11%)
Mutual labels:  flink
flink-connectors
Apache Flink connectors for Pravega.
Stars: ✭ 84 (+37.7%)
Mutual labels:  flink
odoo-py3o-report-templates
Sample reports (quotation, PO, picking, invoice...) for report_py3o
Stars: ✭ 25 (-59.02%)
Mutual labels:  quotations
coolplayflink
Flink: Stateful Computations over Data Streams
Stars: ✭ 14 (-77.05%)
Mutual labels:  flink
open-stream-processing-benchmark
This repository contains the code base for the Open Stream Processing Benchmark.
Stars: ✭ 37 (-39.34%)
Mutual labels:  flink
apache-flink-jdbc-streaming
Sample project for Apache Flink with Streaming Engine and JDBC Sink
Stars: ✭ 22 (-63.93%)
Mutual labels:  flink
flink-demo
Flink Demo
Stars: ✭ 39 (-36.07%)
Mutual labels:  flink
logparser
Easy parsing of Apache HTTPD and NGINX access logs with Java, Hadoop, Hive, Pig, Flink, Beam, Storm, Drill, ...
Stars: ✭ 139 (+127.87%)
Mutual labels:  flink
flink-learn
Learning Flink : Flink CEP,Flink Core,Flink SQL
Stars: ✭ 70 (+14.75%)
Mutual labels:  flink
flink-connector-kudu
基于Apache-bahir-kudu-connector的flink-connector-kudu,支持Flink1.11.x DynamicTableSource/Sink,支持Range分区等
Stars: ✭ 40 (-34.43%)
Mutual labels:  flink
flink-streaming-source-analysis
flink 流处理源码分析
Stars: ✭ 47 (-22.95%)
Mutual labels:  flink
Real-time-Data-Warehouse
Real-time Data Warehouse with Apache Flink & Apache Kafka & Apache Hudi
Stars: ✭ 52 (-14.75%)
Mutual labels:  flink
flink-training-troubleshooting
No description or website provided.
Stars: ✭ 41 (-32.79%)
Mutual labels:  flink
Archived-SANSA-Query
SANSA Query Layer
Stars: ✭ 31 (-49.18%)
Mutual labels:  flink

Emma

A quotation-based Scala DSL for scalable data analysis.

Build Status

Goals

Our goal is to improve developer productivity by hiding parallelism aspects behind a high-level, declarative API which maximises reuse of native Scala syntax and constructs.

Emma supports state-of-the-art dataflow engines such as Apache Flink and Apache Spark as backend co-processors.

Features

DSLs for scalable data analysis are embedded through types. In contrast, Emma is based on quotations (similar to Quill). This approach has two benefits.

First, it allows to reuse Scala-native, declarative constructs in the DSL. Quoted Scala syntax such as for-comprehensions, case-classes, and pattern matching are thereby lifted to an intermediate representation called Emma Core.

Second, it allows to analyze and optimize Emma Core terms holistically. Subterms of type DataBag[A] are thereby transformed and off-loaded to a parallel dataflow engine such as Apache Flink or Apache Spark.

Examples

The emma-examples module contains examples from various fields.

Learn More

Check emma-language.org for further information.

Build

  • JDK 7+ (preferably JDK 8)
  • Maven 3

Run

mvn clean package -DskipTests

to build Emma without running any tests.

For more advanced build options including integration tests for the target runtimes please see the "Building Emma" section in the Wiki.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].