powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Кодировка для всего?
14 сообщений из 14, страница 1 из 1
Кодировка для всего?
    #39280062
azsx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Программа парсит страницы интернет и складывает их в поле text в utf-8. Чтобы не было ошибок типа такая последовательность байтов недопустима в utf-8 я предварительно специальным модулем убираю проблемные места.
Сейчас надо написать нормальный поиск по полю. Я хочу разбить поле text по словам и записать слова в другую таблицу, соответственно также в кодировке utf-8. Вопросы:
Правильно ли хранить всё это именно в utf-8? Может надо было изначально создать БД в utf-16 (или utf-32)?
Есть ли какой то способ ваще забить на кодировки при этом сохранив полноценный поиск.
зы
сегодня около 6 миллионов строк, около 80 гб данных в таблице.
...
Рейтинг: 0 / 0
Кодировка для всего?
    #39280234
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
azsxПрограмма парсит страницы интернет и складывает их в поле text в utf-8. Чтобы не было ошибок типа такая последовательность байтов недопустима в utf-8 я предварительно специальным модулем убираю проблемные места.
Сейчас надо написать нормальный поиск по полю. Я хочу разбить поле text по словам и записать слова в другую таблицу, соответственно также в кодировке utf-8. Вопросы:
Правильно ли хранить всё это именно в utf-8? Может надо было изначально создать БД в utf-16 (или utf-32)?
Есть ли какой то способ ваще забить на кодировки при этом сохранив полноценный поиск.
зы
сегодня около 6 миллионов строк, около 80 гб данных в таблице.

postgresql не умеет utf16/utf32
и совершенно непонятно чем вам utf16/utf32 помогут (ну кроме вероятного увеличения размера базы в 2 или 4 ре раза).
и чем вас utf8 не устраивает?

>>Есть ли какой то способ ваще забить на кодировки при этом сохранив полноценный поиск.
так не бывает... так как лексика и морфология от используемого языка зависят.

--
Maxim Boguk
www.postgresql-consulting.ru
...
Рейтинг: 0 / 0
Кодировка для всего?
    #39280242
azsx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автори чем вас utf8 не устраивает?
меня не устраивает utf-8 так как при сохранении некоторых страниц, например, японских или арабских выходит ошибка "не могу сохранить так как используется неверная последовательность UTF-8". Ну или что-то подобное.
Как же тогда решают проблему остальные?
...
Рейтинг: 0 / 0
Кодировка для всего?
    #39280245
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
azsxавтори чем вас utf8 не устраивает?
меня не устраивает utf-8 так как при сохранении некоторых страниц, например, японских или арабских выходит ошибка "не могу сохранить так как используется неверная последовательность UTF-8". Ну или что-то подобное.
Как же тогда решают проблему остальные?

значит это не валидный utf там.... и ни utf16 ни utf32 вам не помогут.
И возможно у вас вообще на входе не utf там.
В utf8 помещаются все теже символы что и в utf16/32.

--
Maxim Boguk
www.postgresql-consulting.ru
...
Рейтинг: 0 / 0
Кодировка для всего?
    #39280254
azsx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тогда я совсем запутался. Бывает какая нибудь кодировка, которая решает проблему с шрифтами арабов, азиатов и европейцов сразу?
...
Рейтинг: 0 / 0
Кодировка для всего?
    #39280284
dimonz80
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
azsxтогда я совсем запутался. Бывает какая нибудь кодировка, которая решает проблему с шрифтами арабов, азиатов и европейцов сразу?
bytea
...
Рейтинг: 0 / 0
Кодировка для всего?
    #39280292
qwwq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimonz80azsxтогда я совсем запутался. Бывает какая нибудь кодировка, которая решает проблему с шрифтами арабов, азиатов и европейцов сразу?
bytea

(body bytea, codepage ?text)
...
Рейтинг: 0 / 0
Кодировка для всего?
    #39280311
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
azsxтогда я совсем запутался. Бывает какая нибудь кодировка, которая решает проблему с шрифтами арабов, азиатов и европейцов сразу?

utf8 решает (он прекрасно представляет любые символы) при условии что у вас именно входные данные в UTF8 а не в shift-js или что там еще у японцев с корейцами напридумано.
А если вам произвольный бинарный мусор хранить надо то bytea но как вы это на слова будете делить и text search прикручивать - я не знаю.

--
Maxim Boguk
www.postgresql-consulting.ru
...
Рейтинг: 0 / 0
Кодировка для всего?
    #39280739
azsx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Maxim Boguk вот и получается, что во всем мире чо только не напридумывали, в том числ японцы. А я хочу по этой каше кодировок сделать поиск. Как - не знаю.
...
Рейтинг: 0 / 0
Кодировка для всего?
    #39280843
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
azsxMaxim Boguk вот и получается, что во всем мире чо только не напридумывали, в том числ японцы. А я хочу по этой каше кодировок сделать поиск. Как - не знаю.

так вам надо входные данные в utf8 конвертировать, и уже сконвертированный результат сохранять в базе.
даже у русского языка минимум 3 активно используемые кодировки есть (если не 4ре).
По другому - никак.


--
Maxim Boguk
www.postgresql-consulting.ru
...
Рейтинг: 0 / 0
Кодировка для всего?
    #39280848
dimonz80
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
azsxMaxim Boguk вот и получается, что во всем мире чо только не напридумывали, в том числ японцы. А я хочу по этой каше кодировок сделать поиск. Как - не знаю.

Ну и своди все к UTF-8. Нагугли транскодинг для всякой дичи типа Shift JIS в UTF-8 для ЯП на котором тебе надо. На жабе например как-то так:
Код: java
1.
2.
byte[] japaneseBullshit = downloadFromIntornets("http://japanese-bullshit.jp");
byte[] utfBullshit = new String(japaneseBullshit,"Shift_JIS").getBytes("UTF-8");



Потом разберись с грамматиками языков, по которым ищещь. Морфология и словообразование прежде всего. Иначе
azsxЯ хочу разбить поле text по словам и записать слова в другую таблицу
не получится от слова никак.
...
Рейтинг: 0 / 0
Кодировка для всего?
    #39280998
azsx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
очень сложно мне будет, под паскаль всякие конверторы с японской кодировки искать. Но я попробую.
Спрошу, чтобы отдельно темы не создавать, верно я понимаю, что если у меня данные записаны в text но я не знаю какой язык используется и чаще всего язык не один в записи, а несколько - то значит ловить с полнотекстового поиска встроенного в postgresql мне абсолютно нечего так как прежде всего при создании поля tsvector мне обязательно требуется указать язык для которого я создаю (индекс).
...
Рейтинг: 0 / 0
Кодировка для всего?
    #39281059
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
azsxочень сложно мне будет, под паскаль всякие конверторы с японской кодировки искать. Но я попробую.
Спрошу, чтобы отдельно темы не создавать, верно я понимаю, что если у меня данные записаны в text но я не знаю какой язык используется и чаще всего язык не один в записи, а несколько - то значит ловить с полнотекстового поиска встроенного в postgresql мне абсолютно нечего так как прежде всего при создании поля tsvector мне обязательно требуется указать язык для которого я создаю (индекс).

в каком то смысле да... FTS работает по какому то конкретному языку.
Но можно иметь несколько FTS индексов по разным языкам, но вот иметь FTS на postgres который бы на многоязычных документах нормально работал - по моему нереально.

--
Maxim Boguk
www.postgresql-consulting.ru
...
Рейтинг: 0 / 0
Кодировка для всего?
    #39281202
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
azsxочень сложно мне будет, под паскаль всякие конверторы с японской кодировки искать.
Ну так используй ICU, например. А кодировка данных вытаскивается из заголовков HTTP ответа или метаданных страницы.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Кодировка для всего?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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