MCPcopy Index your code
hub / github.com/ddf-project/DDF

github.com/ddf-project/DDF @v1.4.19.3

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.4.19.3 ↗ · + Follow
1,794 symbols 5,575 edges 165 files 263 documented · 15% updated 5y agov1.4.19 · 2016-07-07★ 16923 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

DDF

Distributed DataFrame: Productivity = Power x Simplicity For Big Data Scientists & Engineers

DDF - Distributed DataFrame

DDF aims to make Big Data easy yet powerful, by bringing together the best ideas from R Data Science, RDBMS/SQL, and Big Data distributed processing.

It exposes high-level abstractions like RDBMS tables, SQL queries, data cleansing and transformations, machine-learning algorithms, even collaboration and authentication, etc., while hiding all the complexities of parallel distributed processing and data handling.

DDF is a general abstraction that can be implemented on multiple execution and data engines. We are providing a native implementation on Apache Spark, as it is today the most expressive in its DAG parallelization and also most powerful in its in-memory distributed dataset abstraction (RDD). With this release, DDF provides native Spark support for R, Python, Java, Scala.

An aim of the DDF project is to shine a focus of Big Data conversations on top-down, user-focussed simplicity and power, where "users" include business analysts, data scientists, and high-level Big Data engineers.


Directory Structure

Directory Description
bin useful helper scripts
exe DDF execution/launch scripts and executables
conf DDF configuration files
R DDF in R
python DDF in python
core DDF core API
spark DDF Spark implementation
examples DDF example API-user code
project Scala build config files

Getting Started

First clone or fork a copy of DDF, e.g.:

$ git clone https://github.com/ddf-project/DDF 

Now set up the neccessary environment variables (MAVEN_OPTS, JAVA_TOOL_OPTIONS) for the build.

$ cd DDF
$ bin/set-env.sh

If you don't want to set up the environment variables every time, please add the commands into ~/.bashrc or ~/.bash_profile.

If you don't have sbt and want to install, run the following command

$ bin/get-sbt.sh

This command will install a local sbt under bin/sbt

(Optional) The following regenerates Eclipse .project and .classpath files:

$ bin/make-eclipse-projects.sh

Building DDF_core or DDF_spark

$ mvn clean install -DskipTests

Or if you want to just build separate modules, you can go into module directories and build, for example,

$ (cd core ; mvn clean install -DskipTests)
$ (cd spark ; mvn clean install -DskipTests)

Or if you are more familar with the sbt tool,

sbt (bin/sbt) clean compile publishLocal

Running tests

mvn test

Or if you want to run test for individual modules,

$ (cd core ; mvn test)
$ (cd spark ; mvn test)

Or if you are more familar with the sbt tool,

sbt (bin/sbt) test

Extension points exported contracts — how you extend this code

IGloballyAddressable (Interface)
Interface for objects that are globally addressable by namespace and name [4 implementers]
core/src/main/java/io/ddf/types/IGloballyAddressable.java
IHandleDDFFunctionalGroup (Interface)
(no doc) [8 implementers]
core/src/main/java/io/ddf/misc/IHandleDDFFunctionalGroup.java
ISupportML (Interface)
Interface for handling tasks related to Machine Learning [4 implementers]
core/src/main/java/io/ddf/ml/ISupportML.java
ISupportPhantomReference (Interface)
(no doc) [9 implementers]
core/src/main/java/io/ddf/util/ISupportPhantomReference.java
IHandleTransformations (Interface)
(no doc) [4 implementers]
core/src/main/java/io/ddf/etl/IHandleTransformations.java

Core symbols most depended-on inside this repo

get
called by 232
core/src/main/java/io/ddf/content/AMetaDataHandler.java
getDDF
called by 175
core/src/main/java/io/ddf/misc/IHandleDDFFunctionalGroup.java
add
called by 162
core/src/main/java/io/ddf/content/IHandleRepresentations.java
size
called by 103
core/src/main/java/io/ddf/DDFCache.java
getName
called by 93
core/src/main/java/io/ddf/ml/IModel.java
contains
called by 81
core/src/main/java/io/ddf/IDDFManager.java
getColumnNames
called by 79
core/src/main/java/io/ddf/DDF.java
put
called by 75
core/src/main/java/io/ddf/content/ConvertFunctionFactory.java

Shape

Method 1,555
Class 185
Interface 34
Enum 13
Function 7

Languages

Java98%
Python2%

Modules by API surface

core/src/main/java/io/ddf/DDF.java135 symbols
core/src/main/java/io/ddf/content/ViewHandler.java64 symbols
core/src/main/java/io/ddf/content/Schema.java60 symbols
core/src/main/java/io/ddf/util/Utils.java56 symbols
core/src/main/java/io/ddf/DDFManager.java49 symbols
core/src/main/java/io/ddf/content/RepresentationHandler.java38 symbols
spark/src/main/java/io/ddf/spark/content/SchemaHandler.java36 symbols
core/src/main/java/io/ddf/content/APersistenceHandler.java35 symbols
core/src/main/java/io/ddf/content/AMetaDataHandler.java34 symbols
core/src/main/java/io/ddf/analytics/AStatisticsSupporter.java34 symbols
spark/src/test/java/io/ddf/spark/etl/TransformationHandlerTest.java30 symbols
spark/src/main/java/io/ddf/spark/SparkDDFManager.java28 symbols

Datastores touched

(mysql)Database · 1 repos
testdataDatabase · 1 repos

For agents

$ claude mcp add DDF \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact