Стяжка под паркет


делаем сами стяжку под паркетную доску, фото и видео примеры

Содержание:

Определение горизонтали
Выведение нулевого уровня
Подготовительные работы
Установка маяков
Приготовление раствора и заливка несущей основы
Проверка прочности и качества

Уровень стяжки напрямую зависит от вида финишного напольного покрытия – нельзя залить единую стяжку, когда в одном помещении планируется укладка линолеума, в другом паркета или паркетной доски, а в третьем плитки. Только после выбора желаемого покрытия можно рассчитывать высоту будущей несущей основы.

Стяжка пола под паркет обязана быть максимально ровной и гладкой, недопустимы большие перепады высоты и какие-либо дефекты. Сделать её своими руками несложно, главное – чётко соблюдать порядок действий и ответственно отнестись ко всем этапам.


Определение горизонтали

Высота будущей стяжки напрямую зависит от неровностей основания – чем больше их, тем выше придётся заливать несущую основу. Важный нюанс: высота стяжки во всех комнатах должна быть одинаковой.

Для выставления контрольной горизонтали помещения предпочтительнее всего использовать лазерный уровень – он позволяет максимально точно разметить необходимую высоту и не допускает больших перепадов. Если лазерного уровня нет в наличии, можно использовать ватерпас. Реечный уровень не подойдёт, с ним невозможно достаточно точно сделать разметку.


На произвольно выбранной и комфортной высоте (обычно это 1 – 1,5 м от пола) делается метка. Затем при помощи уровня размечаются все стены, на каждой стене должны быть как минимум три метки. Лазерный уровень позволяет сделать эту работу за считанные минуты, если же используется ватерпас, разметка займёт гораздо больше времени. Нанесённые метки соединяются малярным отбивочным шнуром. Результат – все стены размечены на одной горизонтали и на одинаковой высоте.

Выведение нулевого уровня

Чтобы вывести нулевой уровень, необходимо определить колебание высот. Для этого в нескольких местах по стене замеряется высота от пола до проведённой горизонтали. Скорее всего, все данные будут разными. Нужно найти самое большое и самое маленькое значение – разница между ними будет величиной перепада высоты.

От высоты контрольной горизонтали отнимается планируемая высота стяжки. Для примера: горизонталь проведена на высоте 120 см, а планируемая высота стяжки 20 см, следовательно, разница между этими показателями – 100 см. Параллельно контрольной горизонтали и ниже на 100 см размечается ещё одна линия – это и будет нулевой уровень, по которому выставляются маяки.

Все полученные параметры необходимо записать, и в дополнение сделать фото разметок и расчётов. Эта информация поможет рассчитать количество сухой смеси для работы и станет ориентиром для будущих разметок.

Подготовительные работы

Не только стяжка под паркет должна быть идеально ровной, к основанию также существуют свои требования.

Перед началом необходимо:

  • Залатать большие трещины в основании при помощи цементного раствора;
  • Зачистить все отслоившиеся участки;
  • Вычистить всю грязь и пыль, для этой цели лучше всего подойдёт строительный пылесос;
  • Загрунтовать основание для будущей стяжки;
  • Прикрепить временную изоляцию для защиты стен (подойдёт рубероидная лента, выступающая на 15 – 20 см от пола).

Все эти действия помогут максимально качественно выполнить работы по заливке основания.

Установка маяков

Маяки, или направляющие, выставляются по размеченному нулевому уровню. Для этой цели подойдёт металлический профиль, трубы или же специальные маяки, которые можно купить в магазине строительных материалов. Использование деревянных направляющих недопустимо, так как дерево обладает способностью впитывать влагу. Эта особенность деревянных направляющих может привести к снижению качества раствора и к появлению трещин.


Правильно установленные маяки располагаются параллельно друг другу, на расстоянии, равном строительному правилу и перпендикулярно стене с дверным проёмом. Если используются специализированные маяки, их высота корректируется при помощи дюбелей. Направляющие можно закрепить при помощи небольшого количества густого раствора, такой метод требует времени для схватывания и высыхания закрепителя.

Приготовление раствора и заливка несущей основы

В зависимости от конечного объёма раствора, для облегчения вымешивания смеси до однородного состояния можно использовать как строительный миксер, так и бетономешалку. Чтобы стяжка пола под паркетную доску или паркет была ровной, нужно брать специальную готовую смесь. Для большей прочности поверхности в разведённую по инструкции смесь можно добавить пластификатор и вымещать будущую стяжку до консистенции густого теста.


Стяжка под паркет заливается с дальнего угла помещения. Лучше всего выделить один день на одно помещение и не делать слишком больших перерывов, так как раствор быстро схватывается. Читайте также: "Укладка паркета на стяжку по проверенной технологии".

По строительным нормам, для получения ровной и прочной поверхности определён следующий порядок действий:

  1. Между выставленными маяками кладётся часть приготовленного раствора.
  2. При помощи правила раствор растягивается по всему периметру и выравнивается по установленным маякам.
  3. Чтобы избежать пустот в основании, свежезалитый раствор нужно прокалывать металлической спицей или стержнем.
  4. Хорошенько смочить готовое основание и оставить его до полного высыхания на 3 – 4 недели.
  5. Раствор не должен пересохнуть, иначе он растрескается, а стяжка потеряет часть прочности. Готовую поверхность необходимо регулярно смачивать водой (в идеале 3 – 4 раза в сутки).
  6. Если для заливки стяжки были использованы специальные маяки, их можно оставить в готовом основании. Все остальные направляющие (трубы, металлический профиль и т.д.) через 2 -3 дня нужно удалить и заделать оставшиеся следы.

Проверка прочности и качества

После того, как стяжка выстоит максимально возможное время, необходимо проверить её характеристики. Выполненная по всем правилам стяжка под паркет должна быть прочной, ровной, после ударов молотком на ней не могут оставаться следы (максимум – незначительные щербинки).


Обязательно нужно проверить, есть ли в стяжке воздушные пустоты. Сделать это можно, простучав готовое основание по периметру деревянной рейкой или бруском – качественная стяжка будет издавать звонкий и плотный звук.

С помощью двухметрового правила проверяется ровность стяжки, зазоры не должны быть больше пяти миллиметров.

Посмотрите видеоинструкцию по созданию стяжки под паркет или паркетную доску:

Написание паркетных файлов на Python с помощью Pandas, PySpark и Koalas

В этом сообщении блога показано, как преобразовать файл CSV в Parquet с помощью Pandas, Spark, PyArrow и Dask.

В нем обсуждаются плюсы и минусы каждого подхода и объясняется, как оба подхода могут успешно сосуществовать в одной экосистеме.

Parquet - это столбчатый формат файла, тогда как CSV-файл основан на строках. Столбчатые форматы файлов более эффективны для большинства аналитических запросов. Вы можете ускорить выполнение многих запросов Panda DataFrame, конвертируя файлы CSV и работая с файлами Parquet.

Весь код, используемый в этом блоге, находится в этом репозитории GitHub.

Панды приближаются

Предположим, у вас есть следующий файл data / us_presidents.csv :

 ФИО, год рождения тедди рузвельт, 1901 г. Эйб Линкольн, 1809 

Вы можете легко прочитать этот файл в Pandas DataFrame и записать его как файл Parquet, как описано в этом ответе на Stackoverflow.

 импортировать панд как pd def write_parquet_file (): df = pd.read_csv ('данные / us_presidents.csv ') df.to_parquet ('tmp / us_presidents.parquet') write_parquet_file () 

Этот код записывает данные в файл tmp / us_presidents.parquet .

Давайте прочитаем данные Parquet в фрейм данных Pandas и просмотрим результаты.

 df = pd.read_parquet ('tmp / us_presidents.parquet') печать (df) полное_имя_год рождения 0 тедди рузвельт 1901 1 Эйб Линкольн 1809 

Pandas предоставляет красивый интерфейс Parquet. Pandas использует библиотеку PyArrow для записи файлов Parquet, но вы также можете писать файлы Parquet непосредственно из PyArrow.

PyArrow

PyArrow позволяет вам читать файл CSV в таблицу и записывать файл Parquet, как описано в этом сообщении в блоге. Код прост для понимания:

 импортировать pyarrow.csv как pv импортировать pyarrow.parquet как pq таблица = pv.read_csv ('./ data / people / people1.csv') pq.write_table (таблица, './tmp/pyarrow_out/people1.parquet') 

PyArrow заслуживает изучения, поскольку он обеспечивает доступ к схеме файла и другим метаданным, хранящимся в нижнем колонтитуле Parquet. Изучение PyArrow научит вас больше о Parquet.

Даск

Dask - это среда параллельных вычислений, которая упрощает преобразование большого количества файлов CSV в файлы Parquet с помощью одной операции, как описано в этом посте.

Вот фрагмент кода, но вам нужно прочитать сообщение в блоге, чтобы полностью понять его:

 импортировать dask.dataframe как dd df = dd.read_csv ('./ data / people / *. csv') df.to_parquet ('./ tmp / people_parquet2', write_index = False) 

Dask похож на Spark и проще в использовании для людей с опытом работы на Python.Spark по-прежнему стоит изучить, особенно потому, что он очень эффективен для больших наборов данных.

PySpark

Давайте прочитаем данные CSV в DataFrame PySpark и запишем их в формате Parquet.

Мы начнем с создания SparkSession , который предоставит нам доступ к программе чтения Spark CSV.

 из pyspark.sql import SparkSession spark = SparkSession.builder \ .master ("местный") \ .appName ("parquet_example") \ .getOrCreate () df = искра.read.csv ('данные / us_presidents.csv', заголовок = True) df.repartition (1) .write.mode ('перезапись'). parquet ('tmp / pyspark_us_presidents') 

Нам нужно указать header = True при чтении CSV, чтобы указать, что первая строка данных является заголовками столбцов.

Spark обычно записывает данные в каталог с большим количеством файлов. В этом примере каталог содержит только один файл, потому что мы использовали repartition (1) . Spark может записывать несколько файлов параллельно для больших наборов данных, и это одна из причин, по которой Spark является таким мощным механизмом обработки больших данных.

Давайте посмотрим на содержимое каталога tmp / pyspark_us_presidents :

 pyspark_us_presidents / _УСПЕХ part-00000-81610cf2-dc76-481e-b302-47b59e06d9b6-c000.snappy.parquet 

Файл part-00000-81 ... snappy.parquet содержит данные. Spark по умолчанию использует алгоритм сжатия Snappy для файлов Parquet.

Считаем данные tmp / pyspark_us_presidents Parquet в DataFrame и распечатаем их.

 df = spark.read.parquet ('tmp / pyspark_us_presidents') df.show () + --------------- + ---------- + | полное_имя | год рождения | + --------------- + ---------- + | тедди рузвельт | 1901 | | Эйб Линкольн | 1809 | + --------------- + ---------- + 

Настроить проект PySpark на локальном компьютере на удивление легко, подробности см. В этом сообщении в блоге.

Коалы

koalas позволяет использовать Pandas API с механизмом выполнения Apache Spark под капотом.

Давайте прочитаем CSV и запишем его в папку Parquet (обратите внимание, как код выглядит как Pandas):

 import databricks.koalas as ks df = ks.read_csv ('данные / us_presidents.csv') df.to_parquet ('tmp / koala_us_presidents') 

Прочтите вывод Parquet и отобразите содержимое:

 df = ks.read_parquet ('tmp / koala_us_presidents') печать (df) полное_имя_год рождения 0 тедди рузвельт 1901 1 Эйб Линкольн 1809 

Koalas выводит данные в каталог, аналогично Spark.Вот что содержит каталог tmp / koala_us_presidents :

 koala_us_presidents / _УСПЕХ part-00000-1943a0a6-951f-4274-a914-141014e8e3df-c000.snappy.parquet 

Панды и Спарк могут счастливо сосуществовать

Pandas отлично подходит для чтения относительно небольших наборов данных и записи одного файла Parquet.

Spark отлично подходит для чтения и записи огромных наборов данных и параллельной обработки тонны файлов.

Предположим, ваше озеро данных в настоящее время содержит 10 терабайт данных, и вы хотите обновлять его каждые 15 минут.Каждые 15 минут вы получаете 100 МБ данных. Возможно, вы настроите легкую работу Pandas, чтобы постепенно обновлять озеро каждые 15 минут. С помощью Spark вы можете выполнять большие экстракции и анализ данных по всему озеру.

Следующие шаги

Проект Delta Lake делает озера данных Parquet намного более мощными за счет добавления журнала транзакций. Это упрощает выполнение таких операций, как уплотнение с обратной совместимостью и т. Д.

Я собираюсь попытаться создать проект с открытым исходным кодом, который упростит взаимодействие с Delta Lakes от Pandas.Философия проектирования озера Delta должна значительно упростить пользователям Pandas управление наборами данных Parquet. Следите за обновлениями!

.

Укладка паркета: это просто!

Черный пол должен быть сухим, ровным, прочным и чистым. Остаточная влажность минеральных полов, измеренная методом CM, должна составлять не более 2 процентов (1,8 процента для полов с подогревом), а для ангидритных стяжек - максимум 0,5 процента (0,3 процента для полов с подогревом). Любые неровности чернового пола в три или более миллиметра на каждый начальный метр и два или более миллиметра на каждый последующий непрерывный метр должны быть выровнены.

Перед укладкой паркета следует нанести подходящую звукопоглощающую подушку. Это не только снижает уровень шума в комнате этажом ниже, но и снижает шум от шагов в самой комнате. Кроме того, для компенсации неровностей пола можно использовать высококачественную звукоизоляцию, обеспечивая максимальную устойчивость и дополнительный комфорт при ходьбе. Подложка, необходимая для паркета, зависит от свойств чернового пола.

Если площадь пола длиннее или шире 10 м, необходимо предусмотреть компенсатор.Закройте это переходным профилем. Также важно обеспечить эти стыки между двумя соседними комнатами, в дверных проемах, коридорах и комнатах с большим углом наклона. Всегда используйте соединительный профиль для чистых переходов к соседним, более низким участкам или напольным покрытиям, а также торцевой профиль рядом с более высокими смежными порогами, плиткой и т.п. Придайте лестнице чистую отделку с помощью профиля края лестницы.

.

Schluter®-BEKOTEC | Модульные системы стяжки

1. BEKOTEC устанавливается на ровное и достаточно несущее основание. Если требуется дополнительная изоляция, поместите слой панелей из вспененного или экструдированного пенополистирола поверх основания и накройте листом полиэтилена.

2. По периметру, где покрытие встречается со стенами или ограничивающими поверхностями, поместите кромочную полосу толщиной 5/16 дюйма (8 мм), Schluter®-BEKOTEC-BRS или -BRSK.Крайние планки имеют встроенную фольгу, которую необходимо переносить поверх разделительного слоя, покрывающего изоляцию. Если необходимо уложить стяжку, используйте кромочную полосу Schluter®- BEKOTEC-BRS / KF или -BRS / KSF с клеящейся ножкой. Кромочная планка -BRS / KF прикрепляется к стене с помощью липкой ленты на ее обратной стороне, а краевая планка -BRS / KSF является самонесущей. Панель стяжки кладется на ножку из самоклеящейся пены -BRS / KF или -BRS / KSF, чтобы предотвратить обратный поток стяжки под панель.

3. Модульная плита стяжки обрезана так, чтобы точно соответствовать краю. Панели BEKOTEC соединяются шпоночно-врезными швами.

4. Для изготовления полов с водяным обогревом можно вклинить подходящие нагревательные трубы с наружным диаметром 3/8 "- 5/8" (10-16 мм) между срезанными стойками. Урезанная конструкция шпилек гарантирует, что трубы надежно удерживаются без зажимов на прямых участках. Зажимы могут потребоваться там, где трубы повернуты на относительно небольшой радиус.Зажимы Schluter®-BEKOTEC-THERM-RH 75 можно использовать для крепления трубок к пенопластовым панелям BEKOTEC. Расстояние между трубками определяется исходя из желаемой тепловой мощности.

5. Заполните модульную стяжку раствором или гипсовой стяжкой, обеспечив минимальное покрытие стяжки 5/16 дюйма (8 мм) над стойками. Если требуется выравнивание, толщину раствора можно увеличить до 1 дюйма (25 мм) над шпильками. Стяжку можно отделить у порога с помощью профиля деформационного шва Schluter®-BEKOTEC-DFP, чтобы предотвратить образование звуковых мостиков.

6. Как только по строительной стяжке можно ходить, можно наносить разъединяющую мембрану DITRA или DITRA-XL. В случае наливных гипсовых стяжек максимальная остаточная влажность должна составлять 2,0 процента по объему. Керамическую плитку или облицовку из камня можно укладывать поверх DITRA или DITRA-XL тонким методом.

7. Покрытие поверхности поверх DITRA или DITRA-XL разделено на области с деформационными швами в соответствии с Руководством по установке Schluter®-DITRA и отраслевыми стандартами.Семейство готовых профилей для деформационных швов Schluter®-DILEX включает в себя различные формы, размеры и материалы, подходящие для различных областей применения. При установке профиля DILEX по периметру или в форме бухты на переходе между полом и стеной необходимо сначала обрезать выступающие части кромочной планки.

8. При использовании модульной стяжки для лучистого отопления готовое напольное покрытие можно нагреть через 7 дней. Начиная с 77 ° F (25 ° C), температура запуска

.

Паркет Apache

Мотивация

Мы создали Parquet, чтобы сделать преимущества сжатого, эффективного столбчатого представления данных доступными для любого проекта в экосистеме Hadoop.

Parquet создается с нуля с учетом сложных вложенных структур данных и использует алгоритм измельчения и сборки записей, описанный в статье Dremel. Мы считаем, что этот подход превосходит простое сглаживание вложенных пространств имен.

Parquet поддерживает очень эффективные схемы сжатия и кодирования.Несколько проектов продемонстрировали влияние на производительность правильной схемы сжатия и кодирования данных. Parquet позволяет указывать схемы сжатия на уровне столбцов и рассчитан на будущее, чтобы можно было добавлять больше кодировок по мере их изобретения и внедрения.

Паркет создан для использования кем угодно. Экосистема Hadoop богата фреймворками для обработки данных, и мы не заинтересованы в том, чтобы играть в фавориты. Мы считаем, что эффективная, хорошо реализованная основа для хранения столбцов должна быть полезна для всех фреймворков без затрат на обширные и сложные в настройке зависимости.

Модули

Проект формата parquet содержит спецификации формата и определения Thrift метаданных, необходимых для правильного чтения файлов Parquet.

Проект parquet-mr содержит несколько подмодулей, которые реализуют основные компоненты чтения и записи вложенного, ориентированного на столбцы потока данных, сопоставляют это ядро ​​с форматом parquet и предоставляют форматы ввода-вывода Hadoop, загрузчики Pig и другие Java-утилиты для взаимодействия с Parquet.

Проект parquet-cpp - это библиотека C ++ для чтения и записи файлов Parquet.

Проект parquet-rs - это библиотека на Rust для чтения и записи файлов Parquet.

Проект совместимости parquet содержит тесты совместимости, которые можно использовать для проверки того, что реализации на разных языках могут читать и записывать файлы друг друга.

Дом

Ресурсы

Java могут быть собраны с использованием пакета mvn. Текущая стабильная версия всегда должна быть доступна в Maven Central.

C ++ сберегательных ресурсов можно сгенерировать с помощью make.

Thrift также может быть сгенерирован на любом другом языке, поддерживаемом экономией.

Освобождение

См. Как выпустить.

Глоссарий

  • Блок (блок hdfs): это означает блок в hdfs, и значение без изменений для описания этого формата файла. Формат файла разработан для хорошей работы поверх hdfs.

  • Файл: файл hdfs, который должен включать метаданные для файла. Фактически он не должен содержать данные.

  • Группа строк: логическое горизонтальное разбиение данных на строки. Для группы строк не существует физической структуры, которая гарантирована. Группа строк состоит из блока столбцов для каждого столбца в наборе данных.

  • Блок столбца: блок данных для определенного столбца. Эти живые в определенной группе строк и гарантированно непрерывно в файле.

  • Страница: фрагменты столбцов разделены на страницы. Страница концептуально неделимая единица (с точки зрения сжатия и кодирования).Там может быть несколькими типами страниц, которые чередуются в блоке столбца.

Иерархически файл состоит из одной или нескольких групп строк. Группа строк содержит ровно один фрагмент столбца на столбец. Чанки столбца содержат один или больше страниц.

Блок распараллеливания

  • MapReduce - группа файлов / строк
  • IO - блок столбца
  • Кодирование / сжатие - страница

Формат файла

Этот файл и определение комиссионного вознаграждения следует читать вместе, чтобы понять формат.

  4-байтовое магическое число "PAR1" <Столбец 1, фрагмент 1 + метаданные столбца> <Столбец 2, фрагмент 1 + метаданные столбца> ... <Столбец N, блок 1 + метаданные столбца> <Столбец 1, фрагмент 2 + метаданные столбца> <Столбец 2, фрагмент 2 + метаданные столбца> ... <Столбец N, фрагмент 2 + метаданные столбца> ... <Столбец 1, блок M + метаданные столбца> <Столбец 2, блок M + метаданные столбца> ... <Столбец N, фрагмент M + метаданные столбца> Метаданные файла 4 байта в байтах метаданных файла 4-байтовое магическое число "PAR1"  

В приведенном выше примере в этой таблице N столбцов, разделенных на M строк. группы.Метаданные файла содержат расположение всех метаданных столбца. начальные локации. Более подробную информацию о том, что содержится в метаданных, можно найти в сберегательных файлах.

Метаданные записываются после данных, чтобы обеспечить возможность записи за один проход.

Ожидается, что читатели сначала прочитают метаданные файла, чтобы найти весь столбец фрагменты, которые им интересны. Затем фрагменты столбцов следует читать последовательно.

Есть три типа метаданных: метаданные файла, метаданные столбца (блока) и страницы. метаданные заголовка.Все экономичные структуры сериализуются с использованием TCompactProtocol.

Типы

Типы, поддерживаемые форматом файла, должны быть минимальными, с акцентом на то, как типы влияют на дисковое хранилище. Например, 16-битные целые числа явно не поддерживаются в формате хранения, поскольку они охватываются 32-битные int с эффективным кодированием. Это снижает сложность реализации читатели и писатели для формата. Типы:

  • BOOLEAN : 1 бит логический
  • INT32 : 32-битные целые числа со знаком
  • INT64 : 64-битные целые числа со знаком
  • INT96 : 96-битные целые числа со знаком
  • FLOAT : 32-битные значения с плавающей запятой IEEE
  • DOUBLE : 64-битные значения с плавающей запятой IEEE
  • BYTE_ARRAY : массивы байтов произвольной длины.

Логические типы

Логические типы используются для расширения типов, которые можно использовать для хранения паркета, указав, как следует интерпретировать примитивные типы. Это сохраняет набор примитивных типов до минимума и повторно использует эффективные кодировки паркета. За Например, строки хранятся в виде байтовых массивов (двоичных) с аннотацией UTF8. Эти аннотации определяют, как дальше декодировать и интерпретировать данные. Аннотации сохраняются как ConvertedType в метаданных файла и задокументировано в Логические типы.мкр.

Вложенная кодировка

Для кодирования вложенных столбцов Parquet использует кодировку Dremel с определением и уровни повторения. Уровни определения указывают, сколько дополнительных полей в пути для столбца определены. Уровни повторения указывают, в каком повторяющемся поле в пути повторяется значение. Максимальные уровни определения и повторения могут вычисляться из схемы (т.е. сколько существует вложенности). Это определяет максимальное количество битов, необходимых для хранения уровней (уровни определены для всех значения в столбце).

Поддерживаются две кодировки для уровней BIT PACKED и RLE. Теперь используется только RLE, поскольку он заменяет BIT PACKED.

Нулевые

Нулевое значение кодируется на уровнях определения (которое кодируется по длине серии). NULL значения не закодированы в данных. Например, в невложенной схеме столбец с 1000 NULL будет закодирован с кодированием длин серий (0, 1000 раз) для уровней определения и ничего больше.

Страницы данных

Для страниц данных 3 части информации кодируются спина к спине, после страницы заголовок.У нас есть

  • определение уровней данных,
  • повторение данных уровней,
  • закодированных значений. Размер указан в шапке для всех 3 штук вместе взятых.

Данные для страницы данных требуются всегда. Уровни определения и повторения являются необязательными, в зависимости от определения схемы. Если столбец не вложен (т.е. путь к столбцу имеет длину 1), мы не кодируем уровни повторения (это бы всегда имеют значение 1).Для требуемых данных уровни определения: пропущено (если закодировано, оно всегда будет иметь значение максимального уровня определения).

Например, в случае, когда столбец не является вложенным и является обязательным, данные в страница - это только закодированные значения.

Поддерживаемые кодировки описаны в Encodings.md

Части столбца

Блоки столбцов состоят из страниц, переписанных друг за другом. Страницы имеют общие заголовок, и читатели могут пропустить страницу, которая им не интересна.Данные для страница следует за заголовком и может быть сжата и / или закодирована. Сжатие и кодировка указывается в метаданных страницы.

Контрольная сумма

Страницы данных могут быть индивидуально подсчитаны контрольной суммой. Это позволяет отключить контрольные суммы в Уровень файла HDFS для лучшей поддержки поиска по одной строке.

Исправление ошибок

Если метаданные файла повреждены, файл теряется. Если метданные столбца повреждены, этот фрагмент столбца теряется (но фрагменты столбца для этого столбца в других группах строк Ладно).Если заголовок страницы поврежден, оставшиеся страницы в этом фрагменте теряются. Если данные на странице повреждены, эта страница потеряна. Файл будет больше устойчивость к повреждениям с меньшими группами строк.

Возможное расширение: при меньших группах строк самая большая проблема - это размещение файла метаданные в конце. Если при записи метаданных файла произошла ошибка, все Записанные данные будут нечитаемыми. Это можно исправить, записав метаданные файла. каждую N-ю группу строк.
Метаданные каждого файла будут кумулятивными и включать все группы строк, записанные таким образом. далеко.В сочетании со стратегией, используемой для файлов rc или avro с использованием маркеров синхронизации, читатель мог восстанавливать частично записанные файлы.

Формат специально разработан для отделения метаданных от данных. Этот позволяет разбивать столбцы на несколько файлов, а также иметь одни метаданные файл ссылается на несколько файлов паркета.

Конфигурации

  • Размер группы строк: большие группы строк позволяют использовать большие блоки столбцов, что делает его возможно выполнить более крупный последовательный ввод-вывод.Большие группы также требуют большей буферизации в путь записи (или двухпроходная запись). Мы рекомендуем большие группы строк (512 МБ - 1 ГБ). Поскольку может потребоваться прочитать всю группу строк, мы хотим, чтобы она полностью умещалась на один блок HDFS. Следовательно, размеры блока HDFS также должны быть больше. An оптимизированная настройка чтения: группы строк 1 ГБ, размер блока HDFS 1 ГБ, 1 блок HDFS на файл HDFS.
  • Размер страницы данных: страницы данных следует считать неделимыми, поэтому страницы данных должны быть меньше позволяют более мелкозернистое чтение (например,грамм. поиск по одной строке). Большие размеры страницы меньше накладных расходов на пространство (меньше заголовков страниц) и потенциально меньше накладных расходов на синтаксический анализ (обработка заголовков). Примечание: при последовательном сканировании не ожидается чтение страницы вовремя; это не блок ввода-вывода. Мы рекомендуем 8 КБ для размеров страниц.

Расширяемость

В формате много мест для совместимых расширений:

  • Версия файла: метаданные файла содержат версию.
  • Кодировки
  • : Кодировки указываются с помощью enum, и в будущем могут быть добавлены другие.
  • Типы страниц: можно добавлять и безопасно пропускать дополнительные типы страниц.
.

Смотрите также