powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / FB 2.5.5 игнорирует индекс по UDF
25 сообщений из 78, страница 3 из 4
FB 2.5.5 игнорирует индекс по UDF
    #39182007
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
asviridenkov,

конечно спасибо
" index is created in connection charset X but used in connections with charset other than X "
додуматься же надо.
...
Рейтинг: 0 / 0
FB 2.5.5 игнорирует индекс по UDF
    #39182017
asviridenkov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvasviridenkov,

конечно спасибо
" index is created in connection charset X but used in connections with charset other than X "
додуматься же надо.

А что тебя смущает?
С каких пор работа оптимизатора зависит от клиентской кодировки?
...
Рейтинг: 0 / 0
FB 2.5.5 игнорирует индекс по UDF
    #39182020
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdv> додуматься же надо

И что?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FB 2.5.5 игнорирует индекс по UDF
    #39182081
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdv,

ты просто привык к типовому "один чарсет на всех", но это никогда не было ни требованием, ни даже рекомендацией. Клиентские чарсеты для того и нужны, чтобы каждый юзал тот, что удобнее лично ему.
...
Рейтинг: 0 / 0
FB 2.5.5 игнорирует индекс по UDF
    #39182618
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и как тогда ?

вот есть N индексов с M литералами в каждом, созданные в чарсетax X[1]...X[N]

пришел запрос с M литералами в чарсете Y

получается, нужно выбрать наилучший индекс, в котором все литералы запроса переводятся без потерь Y->X[i] ? И потом запрос тоже перевести к этому чарсету ?

Иначе как индекс использовать, если "в байтах" одни и те же литералы по-разному будут
...
Рейтинг: 0 / 0
FB 2.5.5 игнорирует индекс по UDF
    #39182628
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arioch,

успокойся, поправили уже
...
Рейтинг: 0 / 0
FB 2.5.5 игнорирует индекс по UDF
    #39182631
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис,

так интересно же
...
Рейтинг: 0 / 0
FB 2.5.5 игнорирует индекс по UDF
    #39182636
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AriochИ потом запрос тоже перевести к этому чарсету ?
15 лет назад я предлагал выкинуть чарсеты из движка на клиента, а внутри оставить только
unicode. Но всем тогда было жалко ОЗУ.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FB 2.5.5 игнорирует индекс по UDF
    #39182645
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

не согласен. А как же тогда специализированные чарсеты типа OCTETS. Да и увеличение места под строковые поля в 4 раза (для однобайтовых чарсетов) совсем не мало с точки зрения IO.

А вот метаданные да, тут согласен. Впрочем сейчас только исключения не хранятся как UNICODE.
...
Рейтинг: 0 / 0
FB 2.5.5 игнорирует индекс по UDF
    #39182656
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов ДенисА как же тогда специализированные чарсеты типа OCTETS.
Множественного числа не надо. Он один. И давно напрашивается на свой собственный тип
BINARY/VARBINARY.

Симонов ДенисДа и увеличение места под строковые поля в 4 раза (для однобайтовых
чарсетов) совсем не мало с точки зрения IO.
Откуда 4? Подавляющее большинство символов укладываются в два байта. И дополнение при
хранении до объявленной длины - давно себя исчерпавшая идея. Собственно, она никогда и не
работала после внедрения сжатия.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FB 2.5.5 игнорирует индекс по UDF
    #39182663
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
asviridenkov,

ок, перегнул.
...
Рейтинг: 0 / 0
FB 2.5.5 игнорирует индекс по UDF
    #39182742
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov15 лет назад

...тогда и юникод был другой

один чёрт в итоге получилось бы несколько чарсетов, правда все юникодные.

хотя, конечно, на порядок меньше чем сейчас

вторая проблема - это поддержка старых ODS
вот в тройке теоретически можно чарсеты сбрость в модуль backup/restore и там похоронить.
Но FB/Yaffil - которые работали с ODS 9 - как ты в них порежешь чарсеты, котoрые реально испoльзуются на годами работающих базах?
...
Рейтинг: 0 / 0
FB 2.5.5 игнорирует индекс по UDF
    #39182754
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AriochНо FB/Yaffil - которые работали с ODS 9 - как ты в них порежешь чарсеты,
котoрые реально испoльзуются на годами работающих базах?
А кто это старьё сейчас вообще будет править-то?.. А так в принципе это не так уж и сложно
разделить чарсет хранения, чарсет обработки и чарсет API.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FB 2.5.5 игнорирует индекс по UDF
    #39182789
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov15 лет назад я предлагал выкинуть чарсеты из движка на клиента, а внутри оставить только
unicode. Но всем тогда было жалко ОЗУ.
про ОЗУ 15 лет назад не скажу, а сейчас основных проблем вижу две:

- тащить INTL на клиента и требовать его привязку к ICU
- все не-ASCII строки станут как минимум в два раза длиннее

Второе лично мне более важно, чем первое.
...
Рейтинг: 0 / 0
FB 2.5.5 игнорирует индекс по UDF
    #39182791
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakovдавно напрашивается на свой собственный тип BINARY/VARBINARY
редкий случай, когда хочется тебе плюсануть :-)
...
Рейтинг: 0 / 0
FB 2.5.5 игнорирует индекс по UDF
    #39182816
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitrсейчас основных проблем вижу две:

- тащить INTL на клиента и требовать его привязку к ICU
- все не-ASCII строки станут как минимум в два раза длиннее
INTL и ICU тащить не надо. Всё, что нужно на клиенте, это преобразование UTF-8 в
текущую/заданную локаль и обратно. С этим справится и сама OS. ICU нужно для
преобразований регистра, коллейтов и прочего в этом роде, что остаётся на сервере.

А если наглеть по максимуму, то можно взять пример с SQLite, где API - чистый UTF-8 и
никак иначе.

dimitrВторое лично мне более важно, чем первое.
Из trade-off CPU<->RAM ты выбираешь CPU, это понятно. Проблема в том, что постоянные
преобразования, которые сейчас творятся в движке, и ОЗУ пожирают как не в себя.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FB 2.5.5 игнорирует индекс по UDF
    #39182829
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitrредкий случай, когда хочется тебе плюсануть :-)

1. а кто мешает, boolean же ввели?
2. чем это должно отличаться от BLOB ? для небольших битовых полей и Int32 хватает и даже Int16
...
Рейтинг: 0 / 0
FB 2.5.5 игнорирует индекс по UDF
    #39182832
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovИз trade-off CPU<->RAM

Тут ещё два фактора на самом деле

HDD bandwidth и network bandwidth

к вопросу о "где лучше преобразовывать" - если преобрaзования вытащить на клиента, то распухнет сетевой протокол, например
...
Рейтинг: 0 / 0
FB 2.5.5 игнорирует индекс по UDF
    #39182835
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ariochдля небольших битовых полей и Int32 хватает и даже Int16
А для UUID - уже не хватает.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FB 2.5.5 игнорирует индекс по UDF
    #39182837
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

ну допустим

можно ещё разные SHA256 хранить

а зачем VARbinary, за компанию ?
...
Рейтинг: 0 / 0
FB 2.5.5 игнорирует индекс по UDF
    #39182842
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AriochТут ещё два фактора на самом деле

HDD bandwidth и network bandwidth
Первое решается аппаратно. Второе не играет заметной роли: всё решает латентность.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FB 2.5.5 игнорирует индекс по UDF
    #39182852
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

> Первое решается аппаратно

так вообще всё решается, включая объём ОЗУ и скорость процессора

> всё решает латентность.

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

2. размер пакетов конечен, пакеты нужно подтверждать как приём в рамках TCP, так и выполнение в рамках FB.
Так что объём данных пропорционален количеству roundtrip'ов
...
Рейтинг: 0 / 0
FB 2.5.5 игнорирует индекс по UDF
    #39182882
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arioch2. размер пакетов конечен, пакеты нужно подтверждать как приём в рамках TCPTCP вполне себе может подтвердить приём целой пачки при отправке очередного пакета.
...
Рейтинг: 0 / 0
FB 2.5.5 игнорирует индекс по UDF
    #39183210
Фотография Tonal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AriochDimitry Sibiryakov,
2. размер пакетов конечен, пакеты нужно подтверждать как приём в рамках TCP, так и выполнение в рамках FB.
Добавить сжатие в протокол?

--оффтоп
Ой, ща канделябры полетят...
--оффтоп
...
Рейтинг: 0 / 0
FB 2.5.5 игнорирует индекс по UDF
    #39183217
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tonal,

в тройке сжатие уже есть, но по умолчанию оно выключено
...
Рейтинг: 0 / 0
25 сообщений из 78, страница 3 из 4
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / FB 2.5.5 игнорирует индекс по UDF
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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