![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
p.s. базы не заточены на работу с таймсериями. - неправда Ваша ! реально не хочу обидеть -- нужны заточенные руки - скорости я Вам показал
ОК. Есть таблица тиков: datetime2(7)[Time] - первичный индекс, double[Bid]; пускай будет 50 млн. записей.
Нужно построить таймфрейм М1.
Как будете делать, и сколько времени займет?
ОК. Есть таблица тиков: datetime2(7)[Time] - первичный индекс, double[Bid]; пускай будет 50 млн. записей.
Нужно построить таймфрейм М1.
Как будете делать, и сколько времени займет?
саму технологию сборки м1 можно реализовать одной серверной процедурой что я и воспроизвел
но у меня есть лишь на 5 миллионов ТИКОВ
время сборки минутки из 5 миллионов ЗАНЯЛО 0.02 СЕКУНДЫ
если у вас есть тиковая на 50 миллионов одним файлом пожалуйста дайте ссылку полагаю соберет примерно так жеНу, написать можно все, что угодно. Я делал с помощью курсоров, собирал из семи пар что-то типа индекса доллара. И строчка выходной таблицы создавалась по несколько милли(!)секунд. Т.е. 4 миллиона на выходе занимает почти сутки.
Ну, написать можно все, что угодно. Я делал с помощью курсоров, собирал из семи пар что-то типа индекса доллара. И строчка выходной таблицы создавалась по несколько милли(!)секунд. Т.е. 4 миллиона на выходе занимает почти сутки.
а минутка по времени сколько собиралась ? по одной паре!
( у меня 5 миллионов строк тиков собирались в минутку за 0.02 сек ) только это не одна строка а ВСЯ минутка !!!
Да не помню я уже - давно это было. Но ощущение, что работаешь на Квик Бейсике ))
понятно , гораздо медленней - если Вы это делали на SQL - то очевидно = делали неправильно
Туда тоже можно.
А вообще, это пустая трата времени: базы не заточены на работу с таймсериями. На mssql сводил несколько тиковых котировок за 10 лет - это караул: за 8 часов около 2% обработалось. За пару часов написал на С++ конвертер, и еще за пару часов все перелопатил.
пару часов - это тоже ужасно медленно - тем более на СИ ...
объем данных ведь просто смешной... на SQL , быстрее будет
А вообще, это пустая трата времени: базы не заточены на работу с таймсериями.
Ну вот собственно - это Ваше высказывание мы разметали с Вами же в пух и прах - просто камня на камне не оставили ... ;-)
Ну вот собственно - это Ваше высказывание мы разметали с Вами же в пух и прах - просто камня на камне не оставили ... ;-)
А чем разметали то? Запрос продемонстрируете?
Да даже простой insert bulk будет несколько часов 10Гб файл импортировать.
А чем разметали то? Запрос продемонстрируете?
Да даже простой insert bulk будет несколько часов 10Гб файл импортировать.
Проверяли на чем ?
даже тиковая история не вытягивает на серьезные объемы
считайте за сколько прольется 10 гб - если 340 мегов проливается за 30 секунд но это на моем сервере
в районе 15 минут - о каких часах Вы говорите ?
вообще 10ггб это не объемы для MS SQL - это даже не напрягает более менее серьезный сервер
в практике работаю с базами 0.5 тб - 4 тб ..
10ггб это просто детский лепет ...
Хм, так и пришлось заводить шарманку:
csv размером 760Мб 21,5 млн. строк из трех полей: время, бид, аск.
bulk insert первый раз - 2:55, второй, третий раз 2:30 примерно.
Т.е. 10Гб будет минут 30. Но раньше я загонял 5 полей (+объемы по бид и аск). Ну, и оперативки тогда было поменьше - 16Гб, сейчас 48Гб. Но оперативка здесь вряд ли актуальна.
База с журналом стоит на RAID 0 из четырех дисков, довольно быстром: из оперативки 10Гб записывается где-то за 6,5 сек. Два процессора Е5-2450.
за месяц тики прогружу в ms sql за 15-20 секунд - по крайне мере файл в 320 мегобайт гружу за 30 секунд
одной операция считает эту мелочь - второй операцией сразу поместит в базу
а уже выборки на таком смешном объеме по времени даже не летать будут - а просто мелькать
Тиковые данные грузятся в виде "как есть" или с обработкой?
У меня не просто грузятся тики, а делается семплирование с периодом 1 сек. Делал профайлинг, много времени уходит на преобразование даты-времени в текстовом формате в Матлабовский формат времени
2015.10.30 05:25:52,1.09766,1.09776
Вот функция парсинга строки, вроде ускорить уже нельзя