![]() |
Модераторы: skyboy |
![]() ![]() ![]() |
|
alligator |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 730 Регистрация: 28.1.2004 Репутация: нет Всего: 1 |
Всем доброго времени суток.
Есть куча с сайтов с xml данными, собираю файлики через cUrl, по количеству их ~700 Вопрос, как лучше хранить полученную информацию? 1. Парсить в массив и распихивать по полям\таблицам? 2. Просто хранить полученный XML? если да то в каком типе поля лучше хранить в дальнейшем потребуется обработка информации из этих файлов Это сообщение отредактировал(а) alligator - 30.8.2014, 16:03 -------------------- |
|||
|
||||
ТоляМБА |
|
|||
![]() Котэ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1607 Регистрация: 15.12.2004 Репутация: 10 Всего: 252 |
alligator, если потом будешь обрабатывать, то первый вариант.
|
|||
|
||||
Aliance |
|
|||
![]() I ♥ <script> ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6418 Регистрация: 2.8.2004 Где: spb Репутация: нет Всего: 137 |
Лучше бы более-менее полностью задачу описать. Что парсится, как используется потом, etc...
|
|||
|
||||
alligator |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 730 Регистрация: 28.1.2004 Репутация: нет Всего: 1 |
Есть множество файлов вида :
В будущем планируется делать выборку информации по разным банкам, сортировка по типу вклада и др. сортировки. Предварительно вижу структуру базы такую: Таблица Банков: uid \ regnum \ name \ docdate 3 таблицы валют: rur bankuid \ calldep \ up90 \ 91-180 \ 181-1 \ 1-3 \ 3 \ docdate usd bankuid \ calldep \ up90 \ 91-180 \ 181-1 \ 1-3 \ 3 \ docdate eur bankuid \ calldep \ up90 \ 91-180 \ 181-1 \ 1-3 \ 3 \ docdate Это сообщение отредактировал(а) alligator - 1.9.2014, 09:01 -------------------- |
||||
|
|||||
ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 2 Всего: 386 |
alligator, Срочные вклады на несколько месяцев не рассматриваются? На сроки не в 3, а в 5 лет тоже?
Все xml от всех банков унифицированны по тегам xml? Нужно бы формировать более гибкую схему хранения данных. Ну или постоянно дорабатывать структуру -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! ![]() |
|||
|
||||
alligator |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 730 Регистрация: 28.1.2004 Репутация: нет Всего: 1 |
Xml - везде одинаковый 3 и более - согласно данным из xml Добавлено через 1 минуту и 30 секунд согласно данным из xml - только вклады до 90 дней -------------------- |
|||
|
||||
ТоляМБА |
|
|||
![]() Котэ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1607 Регистрация: 15.12.2004 Репутация: 10 Всего: 252 |
первая таблица Valute id nValute 1 rur 2 usd 3 eur вторая таблица calldep id nCalldep 1 До востребования Третья таблица bank id nBank 1 Дагэнергобанк Четвертая таблица RegNum id nRegNum 1 3286 Пятая таблица srok (тут придется повозиться с унификацией периодов, но если для всех банков одинаковые периоды тогда так:) id nSrok 1 up90 2 91-180 3 181-1 4 1-3 5 3 Шестая таблица All id bankId regnumId calldepId valuteId srokId Value docdate где value - соответствующее значение ставки. На предоставленных тобой данных мое видение такое. |
|||
|
||||
alligator |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 730 Регистрация: 28.1.2004 Репутация: нет Всего: 1 |
Тогда получается что-то типа того:
1. Банк -> uid \ name 2. Регистрационный номер -> bankuid \ regnum 3. валюта -> uid \ currency_type Значения: rur usd eur 4. тип вклада -> currency_uid \ type Значения: up90 91-180 81-1 1-3 3 5. дата -> uid \ currency_uid \ type_uid \ bank_uid 6. Данные по ставкам -> uid \ currency_uid \ type_uid \ date_uid \rate ставка 1 \валюта 1 \ дата \10% ставка 2 \валюта 2 \ дата \1% ставка 3 \валюта 2 \ дата \7% -------------------- |
|||
|
||||
Aliance |
|
|||
![]() I ♥ <script> ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6418 Регистрация: 2.8.2004 Где: spb Репутация: нет Всего: 137 |
Эм, а данные, которые парсятся в XML - разве неизменные/редко изменяемые? Если да - то зачем нужен XML, конечно нужно хранить в удобном вам виде у себя в БД. Но мне что-то подсказывает, что данные динамически, в таком случае либо парсить при каждом обращении к скрипту (плоховато) / кешировать у себя локально и обновлять, скажем, кроном раз в несколько минут/часов/дней.
Думаю все же тему перенести в раздел по MySQL... |
|||
|
||||
alligator |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 730 Регистрация: 28.1.2004 Репутация: нет Всего: 1 |
согласен Данные будут обновлятся примерно раз в месяц или вручную Просто нужна оптимальная структура БД Это сообщение отредактировал(а) alligator - 1.9.2014, 19:08 -------------------- |
|||
|
||||
Aliance |
|
|||
![]() I ♥ <script> ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6418 Регистрация: 2.8.2004 Где: spb Репутация: нет Всего: 137 |
Раз в месяц это редко. Тогда незачем хранить XML. Ведь обращаться к данным скрипт будет явно чаще раза в месяц, а значит уйдут лишние операции по парсингу XML, плюс доступна будет сортировка с поиском.
|
|||
|
||||
frops |
|
|||
![]() Music / Web / Design Профиль Группа: Участник Сообщений: 10 Регистрация: 28.5.2009 Репутация: нет Всего: нет |
А можно еще формировать csv и его по крону запихивать в БД. Думаю, что вы знаете как )
|
|||
|
||||
tzirechnoy |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1173 Регистрация: 30.1.2009 Репутация: 3 Всего: 16 |
700 файлов? Я бы, для начала, просто свалил их в одну папку, и ковырял по мере необходимости чем-то вроде xsl. Вместе с make. А когда типичные операцыи станут привычными, а торможэние -- неприятным -- тогда и подумал бы об оптимизацыи опреацый вроде засовывания всего или частотребуемых вещей в RDBMS.
|
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | MySQL | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |