7.1에서 새롭게 등장한 기능들과 많이 바뀐 부분들에 대한
간략한 설명입니다.
>>정재익 님께서 쓰시길<<
:: 지금 ChageLog 보는 중입니다. 기대가 되는군요. :/)
:: 그런데 너 요즘 여기 들어오긴 들어오는구나. :/)
:: README 에 대략적으로 바뀐 내용이 적혀 있네요. 다음이 그 원문입니다.
::
:: Release 7.1 (2001/??/??)
::
::
:: This release focuses on removing limitations that have existed in the
:: PostgreSQL code for many years.
::
:: Major changes in this release:
::
:: Write/ahead Log (WAL) / To maintain database consistency in
:: case of an operating system crash, previous releases of PostgreSQL
:: have forced all data modifications to disk before each transaction
:: commit. With WAL, only one log file must be flushed to disk, greatly
:: improving performance. If you have been using /F in previous releases
:: to disable disk flushes, you may want to consider discontinuing its
:: use.
::
기존 시스템 보호 기능이 강화되었습니다.
pg_log 자료가 이제는 pg_xlog라는 디렉토리안으로 이동되고,
여기서 완벽하게(?) 관리된다고 합니다.
:: TOAST / Previous releases had a compiled/in row length limit,
:: typically 8 / 32 kB. This limit made storage of long text fields
:: difficult. With TOAST, long rows of any length can be stored with
:: good performance.
이것에 대한 자세한 이야기 PgSQL 강좌에서
::
:: Outer Joins / We now support outer joins. The UNION/NOT IN
:: workaround for outer joins is no longer required. We use the SQL92
:: outer join syntax.
이 또한 꼭 필요했던 기능이었지요.
오라클의 (+) 조인과 같은 일을 해내는데,
이곳의 문법은 SQL92 규약을 따릅니다.
select .... left outer join select .... on (join조건)
::
:: Function Manager / The previous C function manager did not
:: handle NULLs properly, nor did it support 64/bit CPU's (Alpha). The
:: new function manager does. You can continue using your old custom
:: functions, but you may want to rewrite them in the future to use the
:: new function manager call interface.
::
사용자 정의 함수 처리 부분이 바뀌었는데,
이것은 좀더 살펴봐야겠습니다.
일단 C 일경우는 자료형선언과 그 사용하는 것이 많이 바뀌었더군요.
:: Complex Queries / A large number of complex queries that were
:: unsupported in previous releases now work. Many combinations of
:: views, aggregates, UNION, LIMIT, cursors, subqueries, and inherited
:: tables now work properly. Inherited tables are now accessed by
:: default. Subqueries in FROM are now supported.
::
Oracle에서 아주 유용하게 사용했던
select 구문에서 from 다음에 쿼리를 사용할 수 있는 기능을
7.1에서 구현했습니다.
select * from (select ....) a
이 쿼리와 outer join을 적절히 사용하면,
하나의 쿼리로 멋진 보고서를 만들어낼 수도 있지요.
////////
전체적으로 Oracle을 많이 닮아가는 것같네요.
어쩌면, 8.X 부터는 tablespace 기법을 도입하는 것은 아닐지... ^.^
|