Principle 1. Good Architectures and framework
Principle 2. Support a variety of analytical methods
Principle 3. No size fits all
Principle 4. Bring the analysis to data
Principle 5. In-memory computation (Distributed)
Principle 6. In-memory storage (Distributed)
Principle 7. Coordination of processes and data units.