GolosSQL - это публичная база данных MS-SQL со всеми данными блокчейна внутри.
Предыдущие посты:
- Вступительный пост
- GolosSQL Обновление 1 - Распознавание языка (english only - только на английском)
- GolosSQL Обновление 2
Что нового?
Два дня назад, я анонсировал о обслуживания моего инфраструктуры серверов.
Я вижу, что всё больше и больше людей пользуются GolosSQL и полагаются на его доступность и производительность для предоставления услуг и информации всем пользователям Golos.
Нескончаемая растущая база данных
Одна из основных проблем, с которыми мы сталкиваемся, это неуклонное возрастание объема данных, ежедневно обрабатываемых сервером.
Чтобы вам было понятно, что я имею ввиду, ниже представлен график, показывающий объем данных, ежедневно добавляемых в блокчейн:
Как вы можете видеть, каждый день в базу данных добавляется около 35000 KB данных.
И чем больше активных пользователей будет присоединяться к Голосу, тем быстрее будет продолжать увеличиваться этот объем.
Фактор производительности
Когда вам приходиться иметь дело со столь внушительным объемом данных, главными загвоздками становятся:
Производительность хранилища
Скорость выдачи хранилищем данных для обработки - ключевой фактор. Чем быстрее сервер способен считывать данные, тем быстрее он может производить с ними вычисления.
И так как пользователи Голоса становятся всё активнее, их серверу приходится непрерывно записывать появляющиеся новые данные. Это способно повлиять на производительность, так как когда вы записываете данные, сервер блокирует свою базу данных, предотвращая считывание незафиксированных данных другими, дабы избежать вычислительных ошибок.Вычислительная мощность
Когда вам нужно собрать несколько миллионов значений, чтобы вычислить сумму или среднее, вам потребуется большая вычислительная мощность; также предпочтительно, чтобы вас не прерывали, пока вы производите вычисления.
Новая инфраструктура, заточенная на высокую производительность
Раньше GolosSQL хостился на существующей общей инфраструктуре. Даже если это высококлассный сервер, он всё равно использует некоторые более старые технологии, такие как SAS жесткие диски, и делит свою экосистему с некоторыми другими процессами (например, с моими делегатами и сид-нодами).
Учитывая успех GolosSQL и всё быстрее растущую нагрузку на сервер, я решил переместиться на новую, высокопроизводительную, отдельную инфраструктуру.
This is the very latest storage technology and it is BLAZZING FAST !!!
To give you an idea, here a performance comparison chart:
Новый сервер, хостящий GolosSQL, обладает следующими характеристиками:
4 CPU, работающих на 3.5Ghz с новой технологией Intel Xeon v5
Этого более чем достаточно для обработки самых требовательных вычислительных запросов. На самом деле, загрузка CPU сейчас составляет примерно 6.7%2x500GB RAID SSD, работающий на новой технологии NVMe
Это самые новейшие технологии хранения и молниеносно !!!
Чтобы дать вам представление, вот график сравнения производительности:
Предыдущий сервер использовал SAS HDD с высококлассным кэшем (вроде первого красного столбца), новый же сервер использует NVMe RAM (зеленый столбец).
Раньше, чтобы собрать все необходимые данные для публикации моей ежедневной статистики мне приходилось ждать около 1 минуты. Теперь же я получаю результат за несколько секунд. Должен признаться, я был весьма впечатлен его производительностью, когда впервые запустил свои запросы.
Вдобавок ко всему, сервер обладает гарантированной выделенной пропускной способностью интернета в 500Mb/s.
Нет пределов… нет чая
Эта миграция на новую инфраструктуру позволит мне и моим коллегам-статистам Голоса снабжать вас еще более удивительной статистикой и красивыми графиками.
Единственный недостаток в том, что ни у кого из нас не осталось времени на чашку чая.
C'est la vie (Это жизнь) ...
Выплата за этот пост целиком пойдет на поддержание работы GolosSQL. Спасибо за вашу поддержку.
Спасибо @rusteemitblog за вычитку этого поста перед публикацией.
Голосуйте за меня в качестве делегата
Вы также можете проголосовать прямо с платформы Голос здесь. Для этого нужно проделать следующее. Каждый голос важен. Спасибо !
Если Вам понравился этот пост,
не забудьте проголосовать, подписаться на меня или поделиться
NVMe - вещь. Поставил на домашний десктоп. Подключил к M.2 - быстрый PCIx4 порт. Вещь. Даже материнку пришлось подбирать с M.2 только ради этого. Жаль что порт только один и нельзя поставить рейд :-(
@arcange Подскажите, пожалуйста. Есть ли схема БД, описание полей где что лежит в таблицах, что является ключами между таблицами? Хочу для себя пару отчётов сделать :)
В настоящее время, не существует описание базы данных и ее таблиц.
Вы увидите список полей, доступных с любой хороший клиент для Microsoft SQL Server.
О взаимосвязи между различными таблицами, их видно на схеме, которые публикуются в пост. Поля можно также легко определить: они имеют одинаковое имя.
Есть информация о поддержке в предыдущих постах
Ок, спасибо! Я уже сделал sql запрос, вытащил наименования всех таблиц и полей в excel .
Спасибо! Я тоже заметил прирост производительности! Это очень круто!