sql >> データベース >  >> NoSQL >> MongoDB

OverflowError:MongoDBは最大8バイトのintしか処理できませんか?

    BSON仕様 — MongoDBのネイティブバイナリ拡張JSON形式/データ型— 32ビット(符号付き)および64ビット(符号付き)の整数のみをサポートします—8バイトは64ビットです。

    64ビット整数に格納できる最大整数値は次のとおりです:9,223,372,036,854,775,807

    あなたの例では、より大きなIDを持っているように見えます。例:11,611,747,760,398,664,000

    このデータを生成するアプリはuint64タイプを使用していると思います(符号なしはx2-1の値を保持できます)。

    可能であれば、これらの潜在的な解決策のいずれかを検討することから始めます。

    • IDにint64(符号付き)タイプを使用するように反対側を変更します。
    • ObjectId() を使用して着信IDを置き換える 次に、12バイト〜一意のIDのGUIDを取得します。



    1. HBaseサンプルテーブル

    2. EVEを使用したRESTAPIの構築

    3. LikeでMongoDBをクエリする方法

    4. pymongoのcollection.getIndexes()シェルコマンドに相当するものは何ですか?