SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 06.08.2008 18:06:28

ady
Завсегдатай
Зарегистрирован: 02.04.2007
Сообщений: 38

Язык обработки данных из базы, отличный от SQL

В работе приходится много и по-разному обрабатывать данных из базы. Причем:

1) Данных много (> 2 млн. записей).
2) Нужно анализировать подвыборки и, на основе их обработки, строить и заполнять новые таблицы.
3) Данные могут пополняться => нужно пересчитывать все вычисляемые значения.
4) Логика обработки не всегда простая (хотя все и достаточно просто описывается в реляционных терминах).

Самая лучшая технология (не привязанная к СУБД), которую я выработал такова:
Java + JPA (Hibernate) + GenericDAO + MySQL + NetBeans (генерирует Entity классы).

Логика работы значительно упростилась (по сравнению с работой через JDBC), но все равно остается много (достаточно тупого) кодинга sad (плюс не всегда удачная реализация обработки, как правило из-за неэффективных промежуточных звеньев обработки или загрузка в запрос множества значений).

1) Однако, может есть другие подходы к решению задач другого плана?
2) Может есть альтернативные языки, на которых можно эффективно писать обработку реляционных данных? Я, например, присматриваюсь к Groovy...
3) Может быть использовать XML Native базы данных (только где они, бесплатные, стабильные и (относительно) производительные)?

Ссылка:

GenericDAO: http://code.google.com/p/generic-dao/

Отредактированно ady (06.08.2008 19:03:46)

Неактивен

 

#2 06.08.2008 19:01:41

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: Язык обработки данных из базы, отличный от SQL

Можете ли привести пример объекта и как он в итоге хранится в базе? И пример операций с объектами? Интересно взглянуть

Неактивен

 

#3 06.08.2008 19:13:22

ady
Завсегдатай
Зарегистрирован: 02.04.2007
Сообщений: 38

Re: Язык обработки данных из базы, отличный от SQL

rgbeast написал:

Можете ли привести пример объекта и как он в итоге хранится в базе? И пример операций с объектами? Интересно взглянуть

Для Java + JPA?
В базе - это обычные таблички (с PRIMARY KEY) с обычными записями.
В java - это объекты (Entity), у которых поля совпадают с именами столбцов (с точностью до переобозначения).

Работа с объектами: нада создать EntityDao класс, унаследовав его от GenericDAO. Затем:
1) хранение: EntityDao.save(Entity);
2) извлечение: EntityDao.get(EntityPK);
3) запросы: EntityDao.getSomeThingBySomeThing(someData); - нада реализовывать, но для для простых запросов есть много упрощений. В JPA есть язык JPQL, на котором запросы формулируются в терминах Entity.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson