powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Формат обмена табличными данными
25 сообщений из 172, страница 2 из 7
Формат обмена табличными данными
    #39825124
Сергей Фролов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergueiЖесть... Сколько избыточной и повторяющейся информации сбер гоняет по проводам. Это пример как НЕ надо делать.
А почему тебя это беспокоит?
Машине пофигу, сам файл в zip пакуется, а человеку все понятно в любом текстовом редакторе. А Excel так вообще по колонкам раскидает.
...
Рейтинг: 0 / 0
Формат обмена табличными данными
    #39825190
Serguei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей ФроловSergueiЖесть... Сколько избыточной и повторяющейся информации сбер гоняет по проводам. Это пример как НЕ надо делать.
А почему тебя это беспокоит?
Машине пофигу, сам файл в zip пакуется, а человеку все понятно в любом текстовом редакторе. А Excel так вообще по колонкам раскидает.

Во первых я думаю, что когда в обмене передают какие то названия - это изначально ориентировано не на автоматизированную обработку информации, а на ручную. Человек сидит что то там читает и понимает. Компьютеру эти буквы безразличны.

Во вторых- формат "прибит гвоздями". Данные передаются в "жестко специализированных столбцах" и передают исключительно плоские данные. Более сложная структура невозможна, либо если туда запихнуть такие данные -вызовет избыточную передачу данных. Это такой "привет" из 70х годов прошлого столетия.
...
Рейтинг: 0 / 0
Формат обмена табличными данными
    #39825232
МодальноеОкно
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergueiБолее сложная структура невозможна

а зачем она. в чем будет экономический эффект от "сложной структуры"? этот формат в состоянии осилить любая ос, даже embedded система от кофеварки
...
Рейтинг: 0 / 0
Формат обмена табличными данными
    #39825323
Фотография Alex_496
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Megadragon,

когда речь идет о действительно огромных массивах, то массовая вставка из csv или txt
Еще быстрее работает, когда столбцы фиксированной ширины, но размер csv или txt тогда огромнейший.

в качестве разделителя использовал |

JSON, XML, DBF - это потеря скорости
...
Рейтинг: 0 / 0
Формат обмена табличными данными
    #39825358
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex_496JSON, XML, DBF - это потеря скорости
на сколько процентов?
...
Рейтинг: 0 / 0
Формат обмена табличными данными
    #39825395
МодальноеОкно
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзопропилAlex_496JSON, XML, DBF - это потеря скорости
на сколько процентов?

в рамках того что xml например открыть нечем т.к. он слишком велик - порядок цифр важен?
...
Рейтинг: 0 / 0
Формат обмена табличными данными
    #39825403
L_argo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JSON, XML ценны, если нужно передать структурированную инфу.

Для передачи плоских таблиц более пригодны CSV.
...
Рейтинг: 0 / 0
Формат обмена табличными данными
    #39825410
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МодальноеОкноИзопропилпропущено...

на сколько процентов?

в рамках того что xml например открыть нечем т.к. он слишком велик - порядок цифр важен?
важен.

в память целиком что текст, что JSON, что XML - обязательно?
...
Рейтинг: 0 / 0
Формат обмена табличными данными
    #39825415
Arm79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропил,

Не нужно троллить ))


МодальноеОкнов рамках того что xml например открыть нечем т.к. он слишком велик
XML можно читать и обрабатывать без предварительной загрузки в память, читайте отличие DOM от SAX
...
Рейтинг: 0 / 0
Формат обмена табличными данными
    #39825417
Serguei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МодальноеОкноSergueiБолее сложная структура невозможна

а зачем она. в чем будет экономический эффект от "сложной структуры"? этот формат в состоянии осилить любая ос, даже embedded система от кофеварки

Если требования бизнеса передавать сложные структуры, а не какие то агрегаты простые, то что тогда делать? Сказать что бизнес не правильно думает? Или искусственно разбивать на несколько более простых посылок?
...
Рейтинг: 0 / 0
Формат обмена табличными данными
    #39825422
МодальноеОкно
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропилв память целиком что текст, что JSON, что XML - обязательно?

вы пользователя спрашиваете? он работает с тем что есть

я например сталкивался с ситуацией неоднократно - софтина генерит xml с данными. и открыть ее на компутере "рядового обывателя" ее по сути нечем. причем csv/txt открывается, а xml - нет.

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

и собственно опять возвращаемся к экономическому эффекту от замены txt на стильное-модное-молодежное
...
Рейтинг: 0 / 0
Формат обмена табличными данными
    #39825424
МодальноеОкно
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergueiЕсли требования бизнеса передавать сложные структуры, а не какие то агрегаты простые, то что тогда делать?

там где эти требования есть - уже и так все передается xml или более узкоспециализированные производные от него типа xbrl
...
Рейтинг: 0 / 0
Формат обмена табличными данными
    #39825425
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МодальноеОкновы пользователя спрашиваете?
пользователь в блокноте эти простыни открывает?
...
Рейтинг: 0 / 0
Формат обмена табличными данными
    #39825427
МодальноеОкно
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзопропилМодальноеОкновы пользователя спрашиваете?
пользователь в блокноте эти простыни открывает?

ну, чем богаты...

браузер тоже на бок ложится
...
Рейтинг: 0 / 0
Формат обмена табличными данными
    #39825431
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МодальноеОкно,

а зачем "рядовому обывателю" открывать в текстовом редакторе эти простыни,
предназначенные для программ обмена данными?
...
Рейтинг: 0 / 0
Формат обмена табличными данными
    #39825446
МодальноеОкно
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропила зачем "рядовому обывателю" открывать в текстовом редакторе эти простыни,

патамушта "там ошибка". и ему такой же пользователь с принимающей стороны (или система проверки выдает лог с ошибкой) поправьте реквизит "xxx"... сдавать надо как обычно "вчера", пограммиста или нет или он будет тупить неделю, а надо срочно
...
Рейтинг: 0 / 0
Формат обмена табличными данными
    #39825610
Фотография Alex_496
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзопропилAlex_496JSON, XML, DBF - это потеря скорости
на сколько процентов?

в моем конкретном давнем случае на средненьком сервере - это раза в 2-3,
словом, бросил эту затею.

Скажу так, что импорт в Oracle через SQLoader 150+ млн записей высокой плотности с пару десятком полей занял ~ 2 часа
...
Рейтинг: 0 / 0
Формат обмена табличными данными
    #39825621
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergueiСергей Фроловпропущено...

А почему тебя это беспокоит?
Машине пофигу, сам файл в zip пакуется, а человеку все понятно в любом текстовом редакторе. А Excel так вообще по колонкам раскидает.

Во первых я думаю, что когда в обмене передают какие то названия - это изначально ориентировано не на автоматизированную обработку информации, а на ручную. Человек сидит что то там читает и понимает. Компьютеру эти буквы безразличны.
Плохо думаете, индексы можно использовать только для внутреннего обмена связанных систем, где они "железные". Для внешнего экспорта нужны само-понятные элементы с избыточностью, для "надёжности понимания".
Это гораздо важнее, чем скорость импорта, которая больше тормозится не парсингом, а принимающей БД.
...
Рейтинг: 0 / 0
Формат обмена табличными данными
    #39825660
Serguei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kealon(Ruslan)Sergueiпропущено...
Во первых я думаю, что когда в обмене передают какие то названия - это изначально ориентировано не на автоматизированную обработку информации, а на ручную. Человек сидит что то там читает и понимает. Компьютеру эти буквы безразличны.

Плохо думаете, индексы можно использовать только для внутреннего обмена связанных систем, где они "железные". Для внешнего экспорта нужны само-понятные элементы с избыточностью, для "надёжности понимания".

Это гораздо важнее, чем скорость импорта, которая больше тормозится не парсингом, а принимающей БД.

Не совсем понял при чем тут индексы..
А вся вот эта мегаизбыточность согласен - без нее никак, если слабые бизнес аналитики, разработчики, архитекторы.
...
Рейтинг: 0 / 0
Формат обмена табличными данными
    #39825779
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропилпользователь в блокноте эти простыни открывает?
У нас заказчик отрывает. Ровно эти простыни, от Сбербанк Бизнес Онлайн.
Только не в блокноте, а научились в Excel открывать

И, даже, правит. Исправляет ошибки Сбербанковской проги ))). Когда она файлы не правильно присылает (файлы не соответствуют реальным платежным документам поступившим через банк). Такое бывает редко, но раза 2-3 за год точно было.
...
Рейтинг: 0 / 0
Формат обмена табличными данными
    #39855908
Gerros
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Megadragon,

Во-первых, при разработке JSON и XML задача эффективной работы с большими (десятки тысяч элементов) объемами данных даже не ставилась. Поэтому загрузка JSON или XML требует вычитки файла целиком - вдруг там в конце скобку забыли или тэг не закрыт, поэтому импорт больших объёмов данных из JSON или XML, как правило, потребляет гораздо больше памяти, чем импорт из CSV файлов, которые можно обрабатывать построчно. Если очень-очень хочется JSON, можно сделать гибрид - текстовый файл, в котором каждая строка - это JSON.

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

В-третьих, смены формата плохи тем, что отладку придётся вести одновременно с двух сторон - со стороны банков будут отлаживать экспорт, с вашей стороны - импорт. Это сложно. Поэтому на Вашем месте я бы оставил формат как есть, просто сделал индивидуальные "коннекторы" для каждого банка. Так как в данный момент какой-то импорт у вас уже есть, новый импорт можно организовать в параллель и спокойно, без спешки отладить.
...
Рейтинг: 0 / 0
Формат обмена табличными данными
    #39855921
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GerrosВо-первых, при разработке JSON и XML задача эффективной работы с большими (десятки тысяч элементов) объемами данных даже не ставилась.
хм...

к примеру mongoimport поддерживает JSON, CSV, или TSV
лично я только первым пользуюсь и проблем "работы с большими (десятки тысяч элементов) объемами данных" ни разу не наблюдал
начнём с того, что это далеко не большой объём
...
Рейтинг: 0 / 0
Формат обмена табличными данными
    #39855941
Gerros
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий Мухлично я только первым пользуюсь и проблем "работы с большими (десятки тысяч элементов) объемами данных" ни разу не наблюдалА вы наблюдали потребление памяти? А сравнивали с построчным чтением TSV файла?
...
Рейтинг: 0 / 0
Формат обмена табличными данными
    #39855951
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gerros,

сравнивать построчное чтение с построчным мне в голову не приходило
вы же сами себе уже ответили: каждая строка файла - это один документ в формате JSON

типа того:
Код: javascript
1.
2.
3.
{"_id":{"$oid":"57d7a121fa937f710a7d486e"},"last_name":"Pham","quote":"Aliquam est reiciendis alias neque ad." ... }
{"_id":{"$oid":"57d7a121fa937f710a7d4871"},"last_name":"Franklin","quote":"Id provident eius natus quasi minima nobis." ... }
{"_id":{"$oid":"57d7a121fa937f710a7d4872"},"last_name":"Herrera","quote":"Sit perferendis nostrum suscipit cumque mollitia." ... }


данный кусок взят из файла с тестовыми данными для курса M201 - MongoDB Performance, в котором 50475 документов :)
...
Рейтинг: 0 / 0
Формат обмена табличными данными
    #39856057
Gerros
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий Мух,

Всё правильно. Много мелких JSON-записей в одном файле - это нормальное решение. Я его назвал "гибрид" потому что такой файл не является корректным JSON-объектом. Вы не сможете в коде его открыть простым
Код: javascript
1.
var myobj = parse( myfile.readall());

Когда я говорил про десятки тысяч элементов, я имел в виду десять тысяч элементов одного объекта, а не тысяча объектов по десять элементов.
...
Рейтинг: 0 / 0
25 сообщений из 172, страница 2 из 7
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Формат обмена табличными данными
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]