Clone Tools
  • last updated 17 mins ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Move Pregelix and Hivesterix codebase to new repositories: 1. Move Pregelix codebase to https://github.com/pregelix/pregelix; 2. Move Hivesterix codebase to https://code.google.com/p/hivesterix .

Change-Id: Iede698fcb92a0ad0a7a4918ea69b54886fd64fc7

Reviewed-on: http://fulliautomatix.ics.uci.edu:8443/155

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Ian Maxon <imaxon@uci.edu>

  1. … 943 more files in changeset.
Support big vertex in Pregelix. --For those vertice beyond page size, we store them on HDFS as immutable files. --Updates on those big vertice will trigger creations of new immutable files.

Change-Id: I6b6f0528b6b5360c96dcdace1fa360d42c517f22

Reviewed-on: http://fulliautomatix.ics.uci.edu:8443/72

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Pouria Pirzadeh <pouria.pirzadeh@gmail.com>

  1. … 15 more files in changeset.
Several major changes in hyracks: -- reduced CC/NC communications for reporting partition request and availability; partition request/availability are only reported for the case of send-side materialized (without pipelining) policies in case of task re-attempt. -- changed buffer cache to dynamically allocate memory based on needs instead of pre-allocating -- changed each network channel to lazily allocate memory based on needs, and changed materialized connectors to lazily allocate files based on needs -- changed several major CCNCCFunctions to use non-java serde -- added a sort-based group-by operator which pushes group-by aggregations into an external sort -- make external sort a stable sort

1,3,and 4 is to reduce the job overhead.

2 is to reduce the unecessary NC resource consumptions such as memory and files.

5 and 6 are improvements to runtime operators.

One change in algebricks:

-- implemented a rule to push group-by aggregation into sort, i.e., using the sort-based gby operator

Several important changes in pregelix:

-- remove static states in vertex

-- direct check halt bit without deserialization

-- optimize the sort algorithm by packing yet-another 2-byte normalized key into the tPointers array

Change-Id: Id696f9a9f1647b4a025b8b33d20b3a89127c60d6

Reviewed-on: http://fulliautomatix.ics.uci.edu:8443/35

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Till Westmann <westmann@gmail.com>

    • -0
    • +71
    ./main/java/edu/uci/ics/pregelix/api/graph/VertexContext.java
    • -0
    • +28
    ./main/java/edu/uci/ics/pregelix/api/io/Pointable.java
  1. … 263 more files in changeset.
fix conflict in comment

support heterogenous cluster

  1. … 36 more files in changeset.
use Counters as partial value to simplify HadoopCountersAggregator

add support for Hadoop Counters via job.setCounterAggregatorClass

The PregelixJob.setCounterAggregatorClass sets up a (user-specified)

global aggregator and an iterationComplete hook to save Counter values.

The user-specified Counter-based aggregator (must extend

HadoopCountersAggregator) is saved to HDFS in each iteration and should

be restart/snapshot-aware.

The usage for setting up counters is to make a call to

job.setCounterAggregatorClass. After job completion, the Counters may

be retrieved from HDFS using BspUtils.getCounters(job).

Note that there is currently only one spot for iterationComplete hooks

and this behavior occupies it.

  1. … 3 more files in changeset.
add an "iteration complete" hook for aggregation/reporting across iterations

This commit allows the user to specify a class which will be called upon

completion of each pregelix iteration. This allows us to perform a user-

specified action between iterations.

As an example, a PerIterationGlobalAggregatesHook is provided which

saves the complete set of global aggregator states from every iteration,

allowing the user to observe aggregates from all iterations.

The default hook does nothing.

The hook instance is attached directly to the PregelixJob so that it can

be retrieved by the Driver's caller.

  1. … 3 more files in changeset.
fix NPE when no custom aggregator is set

api for specifying update state for activate() and voteToHalt()

allow global aggregators to be specified in xml

explicitly setting the aggregator in the PregelixJob constructors would

override any values read in from the conf's resources.

Instead, this commit doesn't set the conf explicitly and instead

specifies an array of aggregator class names which will always be in

place when `getGlobalAggregatorClasses` is called.

add the dyanmic optimization skeleton

  1. … 3 more files in changeset.
Merge branch 'master' into zheilbron/hyracks_msr_demo

  1. … 2 more files in changeset.
support multiple user-defined global aggregators

  1. … 33 more files in changeset.
fix IIndexAccessor interface, add a boolean exclusiveMode parameter for the createSearchCursor method

  1. … 43 more files in changeset.
fix file write race condition

  1. … 22 more files in changeset.
turn the default configuration to be variable-sized vertex

  1. … 9 more files in changeset.
make failure-recovery work in multi-JVM test

  1. … 5 more files in changeset.
set the test checkpointing peroid to be 2

fix fault-tolerance and error reporting to handle disk failures

  1. … 29 more files in changeset.
1. fix the node failure scenario in job scheduler; 2. add fault-tolerance support and tests in pregelix

  1. … 20 more files in changeset.
fix the checkpoint writing for vertex checkpointing and message checkpointing

  1. … 4 more files in changeset.
support large-size global aggreate values

  1. … 22 more files in changeset.
implemented checkpoint read

  1. … 24 more files in changeset.
Merge branch 'master' into dev/hyracks_msr

Conflicts:

hyracks/hyracks-control/hyracks-control-cc/src/main/java/edu/uci/ics/hyracks/control/cc/job/JobRun.java

hyracks/hyracks-dataflow-std/src/main/java/edu/uci/ics/hyracks/dataflow/std/sort/FrameSorter.java

hyracks/hyracks-storage-am-common/src/main/java/edu/uci/ics/hyracks/storage/am/common/impls/AbstractTreeIndex.java

pregelix/pregelix-api/src/main/java/edu/uci/ics/pregelix/api/graph/Vertex.java

pregelix/pregelix-example/src/main/java/edu/uci/ics/pregelix/example/io/VLongWritable.java

pregelix/pregelix-example/src/test/java/edu/uci/ics/pregelix/example/lib/io/SizeEstimationTest.java

pregelix/pregelix-runtime/src/main/java/edu/uci/ics/pregelix/runtime/function/ComputeUpdateFunctionFactory.java

pregelix/pregelix-runtime/src/main/java/edu/uci/ics/pregelix/runtime/simpleagg/AccumulatingAggregatorFactory.java

  1. … 4 more files in changeset.
add vertex checkpointing support

    • -0
    • +24
    ./main/java/edu/uci/ics/pregelix/api/job/ICheckpointHook.java
  1. … 4 more files in changeset.
avoid btree update code path when the target entry has sufficient space

  1. … 3 more files in changeset.
add runtime checks to improve pregelix debug-ability

  1. … 4 more files in changeset.
merge from zheilbron/hyracks_msr

  1. … 277 more files in changeset.
use hadoop's vlong and fix driver's re-attempt to be 1

  1. … 1 more file in changeset.