Розмір блока Hadoop композитний-XDF
MapReduce розділення кожного вхідному текстовому файлі, до одного або кількох вводу розколи, які за промовчанням розмір блока HDFS наприклад 128 Мб.
-
Кожен вводу розділити перетворюється зі звичайними, нерозібрані текст стиснутий і проаналізованої виводу, що двійкові xdfd файлу в підкаталозі "дані" вихідного каталогу-заголовок інформація для набору xdfd на, що знаходиться в одному xdfm метадані файлу в каталозі "Метадані"
-
Для подальшого аналізу ефективності кожного вихідного файлу з xdfd має приблизно відповідати розміру блоку HDFS
-
Компенсації XDF стискання, тому зазвичай потрібно збільшити розмір файлу виводу xdfd, збільшивши вводу для розділення, розмір цього параметра значення RxHadoopMR():
-
hadoopSwitches="-Dmapred.min.split.size=1000000000"
-
Пізніші Hadoop установки, використовуючи ПРЯЖІ параметр, — mapreduce.input.fileinputformat.split.minsize
-
-
Збільшення вводу, розділити розмір надалі може зменшити кількість XDF файли, і таким чином кількість распараллеліть карта завдань у наступних аналізу. Це може бути корисним, якщо номер доступна карта слотів або контейнери невеликих щодо кількості розпадається. З іншого боку, багато зіставлення слотів або контейнери доступні, міститься в невеликих вводу та додаткові xdfd може спричинити швидше завершення.
-
Приклад
Імпортування вводу CSV, 670 МБ на Hortonworks ізольоване Програмне середовище, яке використання вводу за промовчанням, розділити розмір (32 Мб), створений 670/32 = 21 xdfd з на rxSummary виконання 185". Збільшити розмір вхідних розділити 150 Мб, створені 5 xdfd за кожен приблизно 32 МБ на продуктивність rxSummary від 68".
rxSetComputeContext (RxHadoopMR(hadoopSwitches =
"-Dmapreduce.input.fileinputformat.split.minsize=150000000"))
rxImport (myCSV, myCXdf, перезаписати = TRUE)
набір # rxSetComputeContext(RxHadoopMR()), знову після завершення