function sortF(ob1,ob2) {
if (ob1.strength > ob2.strength) {return 1}
else if (ob1.strength < ob2.strength) {return -1}
else if (ob1.name > ob2.name) {return 1}
return -1;
};
EDIT: Сортировка по силе, тогда, если сила равна, сортируйте по имени. Случай, когда сила и имя равны в обоих объектах, не нужно учитывать отдельно, так как окончательный возврат -1 указывает на отношения менее или равные. Результат сортировки будет правильным. Это может заставить его работать быстрее или медленнее, я не знаю. Если вы хотите быть явным, просто замените
return -1;
на
else if (ob1.name < ob2.name) {return -1}
return 0;
Да, Google Dataproc является эквивалентом AWS EMR.
Да, вы можете ssh войти в главный узел Dataproc с помощью команды gcloud compute ssh ${CLUSTER}-m
и отправить задания Spark вручную , но рекомендуется использовать API Dataproc и / или [ 112] команда отправить задания в кластер Dataproc. Обратите внимание, что вы можете использовать команду gcloud
для отправки заданий в кластер Dataproc с любого компьютера, на котором установлено gcloud
, вам не нужно делать это из Google Cloud VM, например, Главный узел Dataproc.
Вы можете отправить задание PySpark в кластер Dataproc с помощью команды (обратите внимание, сначала вам нужно скопировать файл задания PySpark в GCS и использовать его при отправке задания Dataproc):
gsutil cp spark.py gs://<BUCKET>/path/spark.py
gcloud dataproc jobs submit pyspark --cluster=${CLUSTER} \
gs://<BUCKET>/path/spark.py