If you need to use SSJS, I would use the SSJS Web Services capability to do a Retrieve Request API call. From there you can do a ContinueRequest until all data has been collected. See below:
<script runat="server">
Platform.Load("Core","1.1.1");
var rr = Platform.Function.CreateObject("RetrieveRequest");
Platform.Function.SetObjectProperty(rr, "ObjectType", "DataExtensionObject[YourDEKey]");
Platform.Function.AddObjectArrayItem(rr, "Properties", "NOMBRE");
Platform.Function.AddObjectArrayItem(rr, "Properties", "YourAttribute1");
Platform.Function.AddObjectArrayItem(rr, "Properties", "YourAttribute2");
do {
var results = [0,0];
var rows = Platform.Function.InvokeRetrieve(rr, results);
var runstatus = results[0];
var requestId = results[1];
if (rows != null) {
//var valueStr = '[';
for (var i in rows) {
var rNOMBRE = rows[i].NOMBRE;
Write(i + ": " + rNOMBRE + " <br/>");
}
}
rr.ContinueRequest = requestId;
} while (runstatus == "MoreDataAvailable")
</script>
If you are not restricted to SSJS, you can pull this via AMPScript. It is a bit more limited in that it requires a filter, which means you need to have a field with the same value for each record. E.g. I tend to place a field named 'Secret' with a value of '1' in all my DEs, to help me pull via AMPscript.
%%[
SET @Rows = LookupOrderedRows(@YourDE, DataExtensionRowCount(@YourDE),"SortableAttribute asc", "FlagField", "Value")
]%%