2013-02-12 3 views
0

db2 테이블 항목을 사용하여 열에 대한 쿼리를 만들 수 있습니까? 열에 압축 된 XML이 포함되어 있습니까?압축 된 XML 데이터에 액세스

그렇다면 간단한 예는 무엇입니까?

| id | zipped_content 
| 0 | some zipped content here that was once xml 

같은 압축 된 내용을 볼 수 있습니다 :

<animals> 
    <cat> 
     <name>fluffy</name> 
     <age>12</age> 
    <cat> 
    <dog> 
     <name>snoopy</name> 
     <age>32</age> 
    <dog> 
</animals> 

내가, 주어진 id 인의 특정 데이터를 끌어 쿼리를 실행할 수, 테이블을 주어

zipped_content?

즉, 각 동물의 이름과 나이를 알아야합니까? xml db2를 사용하면 조금 까다 롭습니다. 그러나 아마도 여러분은 저의 표류를 얻을 것입니다. 지퍼를 풀고 테이블 물건을 사용할 수 있습니까, 아니면 불가능합니까?

답변

0

하지만 성능으로 인해 응용 프로그램이 완전히 종료 될 수 있습니다. 실제로 압축 된 XML의 구조에 인덱스를 사용할 수 없습니다. 또한 압축 해제에는 임시 메모리 공간이 필요하므로 캐싱에 대해서도 고려해야합니다.

왜 XML을 압축하고 있습니까? 솔직히 나는 그럴만한 이유가 거의 없다고 생각할 수 있습니다.

일부 REST API 또는 그 이상을 통해 전송하려는 경우 웹 서버가 deflate 또는 gzip을 사용할 것인지 확인하고 지나치게 성능을 저하시키지 않으면 서 압축을 얻습니다.

공간을 절약하려면 DB2 to compress the table으로 문의하십시오.

다른 이상한 요구 사항의 경우 압축 된 버전과 압축되지 않은 버전을 모두 저장하십시오. 다른 트리거가 변경되면 트리거를 사용하여 다른 트리거를 업데이트하십시오.

정말로 압축 필드를 사용하려면 stored procedures과 SQL 쿼리를 조합하여 사용해야합니다. 압축/압축 해제 프로 시저를 개발하여 임시 테이블을 사용하여 결합하거나 쿼리를 완전히 처리 할 수있는 프로 시저를 개발하거나 두 가지를 모두 조합 할 수 있습니다. 예, C/C++/Java 개발이 필요합니다.

관련 문제