spark internals