파이썬으로 plist 바이너리 출력

개요


  • AWS Lambda에서 JSON 파일을 출력하고 iOS 애플리케이션에서 읽습니다.
  • iPad가 낡은 (초대 iPad Air)와, 여러가지 사정으로 25만 레코드를 1파일에 가져야 하고, JSON이라고 퍼스 때에 죽는다
  • plist의 바이너리가되면 퍼스 불필요하고 부하도 감소



  • JSON
    plist 바이너리


    파일 크기
    12MB
    7MB

    메모리 사용량
    112MB
    45MB


    ※파일 사이즈는 그 후의 조정으로 JSON에서도 그다지 변하지 않게 되었으므로, 사이즈에 관해서는 그다지 기대하지 않는 편이 좋을지도

    파이썬으로 plist 바이너리 출력하기



    plistlib 을 사용합니다.
    plistlib.dump(value, fp, *, fmt=FMT_BINARY, sort_keys=True, skipkeys=False)
    

    import plistlib
    
    :
    
    def save_to_plist(data):
        data_set = []
        for record in data:
            data_set.append(
                (
                    record['code'],
                    record['name']
                )
            )
        save_path = "/tmp/article.plist"
        with open(save_path, "wb") as fp:
            plistlib.dump(data_set, fp, fmt=plistlib.FMT_BINARY, sort_keys=True, skipkeys=False)
        return save_path
    

    이것뿐입니다. 간단합니다.

    좋은 웹페이지 즐겨찾기