ฉันจะใช้งาน MurmurHash ของ Scala ได้อย่างไร: scala.util.MurmurHash3

ฉันกำลังเขียน BloomFilter และต้องการใช้การติดตั้ง MurmurHash3 เริ่มต้นของ Scala: scala.util.MurmurHash3 การคอมไพล์ของฉันล้มเหลว แต่มีข้อผิดพลาดในการคอมไพล์ดังต่อไปนี้:

[error] /mnt/hgfs/dr/sandbox/dr-commons/src/main/scala/dr/commons/collection/BloomFilter.scala:214: MurmurHash3 is not a member of scala.util
[error]   import scala.util.{MurmurHash3 => MH}

ฉันใช้ Scala 2.9.1 และ sbt 0.11.2

คลาส MurmurHash3 ไม่ได้อยู่ในไลบรารี 2.9.1 เป็นค่าเริ่มต้นหรือไม่ ฉันคิดว่ามันเป็นเพราะมันถูกใช้บ่อยในห้องสมุด ชั้นเรียนไม่ใช่แพ็คเกจส่วนตัวเท่าที่ฉันเห็น


person dr.    schedule 06.04.2012    source แหล่งที่มา


คำตอบ (3)


เรียกว่า scala.util.MurmurHash ไม่มี 3 แต่จริงๆแล้วมันเป็นอัลกอริทึม Murmurhash 3 (ดู ความคิดเห็นในแหล่งที่มา)

แก้ไข ฉันเพิ่งเห็นว่า Rex Kerr เป็นผู้เขียน scala.util.MurmurHash ฉันขอแนะนำให้คุณอย่ายอมรับคำตอบนี้ (สมมติว่าเป็นคำตอบที่ถูกต้อง) เนื่องจาก Rex Kerr อยู่ใน StackOverflow เขาอาจพูดคุยและมอบสิ่งที่ดีกว่ามากให้กับคุณ...

person Paolo Falabella    schedule 06.04.2012
comment
ขอบคุณ. แล้วคลาส scala.util.MurmurHash3 คืออะไร? - person dr.; 07.04.2012
comment
ดูเหมือนว่าจะเป็นเวอร์ชันใหม่ใน scala 2.10 - person Paolo Falabella; 07.04.2012

ฉันใช้ scala 2.11 และ spark apache 1.6.2 มันทำงานได้ดี ด้วยเวอร์ชันเหล่านี้ ฉันไม่ได้รับข้อผิดพลาดใดๆ

import scala.util.hashing.{ MurmurHash3 => MH3 }
    val data="I am SANTHOSH"
    val sample = MH3.stringHash(data, MH3.stringSeed)
    println(":Hash Value: "+sample)
<dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-core_2.11</artifactId>
            <version>1.6.2</version>
        </dependency>
        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-sql_2.11</artifactId>
            <version>1.6.2</version>
        </dependency>
        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-mllib_2.11</artifactId>
            <version>1.6.2</version>
        </dependency>
person Santhosh Hirekerur    schedule 02.02.2017
comment
จริงๆ แล้วฉันพลาดที่จะเพิ่มเวอร์ชันที่ฉันใช้ ฉันใช้สกาล่า 2.11.8 และ apache 1.6.2 - person Santhosh Hirekerur; 03.02.2017

งานต่อไปนี้สำหรับฉัน:

import scala.util.hashing.MurmurHash3

person conradlee    schedule 18.02.2016