การค้นหาวลีที่คนรอบข้างบอกว่าอาจเป็นเรื่องยาก แล้วการอัปเดตแบบไดนามิกของชุดข้อมูลนี้ล่ะ? พื้นที่เก็บข้อมูลที่ปรับขนาดได้และเวลาแฝงต่ำ? เป้าหมายหลักของฉันในโปรเจ็กต์นี้คือการสร้างระบบที่ตอบสนองความต้องการเหล่านี้ และช่วยให้ได้รับข้อมูลล่าสุดเกี่ยวกับแนวโน้มที่นำเสนอในทวีตแบบเรียลไทม์
ตามแนวคิดของดัชนีกลับหัว ฉันจึงนำแอปนี้ไปใช้ซึ่งจะค้นหาทวีตที่มีเนื้อหาเฉพาะแบบเรียลไทม์ จัดเก็บไว้ในระบบไฟล์ในเครื่อง และอนุญาตให้ทำการค้นหาโดยใช้คำได้ทันทีหลังจากเริ่มต้นการเชื่อมต่อไคลเอ็นต์
ในการเรียกใช้แอป คุณต้องมี:
git clone https://github.com/cyberpunk317/inverted_index.git
TWITTER_APP_KEY = 'YOUR APP KEY'
TWITTER_APP_SECRET = 'YOUR APP SECRET'
TWITTER_KEY = 'YOUR KEY'
TWITTER_SECRET = 'YOUR SECRET'
สร้าง Dockerfiles สำหรับไคลเอนต์และเซิร์ฟเวอร์:
./gradlew clean build createClientDockerfile createMainDockerfile
สิ่งนี้จะสร้าง app_server.Dockerfile และ app_client.Dockerfile ในไดเร็กทอรีราก
เริ่มการสมัคร:
docker-compose up
เปิดตัวเซสชั่นไคลเอนต์:
docker build -f app_client.Dockerfile -t client:latest . && docker run -it --rm --network=host client:latest bash
เริ่มพิมพ์คำที่น่าสนใจ เซิร์ฟเวอร์จะส่งคืนตำแหน่งของทวีตในรูปแบบ 'dataset_v2//twitter_N.txt' ตัวอย่างเช่น:
You entered: war
Server response: [dataset_v2/Veeresh Dambal/tweet_30.txt, dataset_v2/pedro schliesser/tweet_1.txt]
ดูปัญหาที่เปิดอยู่สำหรับรายการคุณลักษณะที่นำเสนอ (และปัญหาที่ทราบ)
เผยแพร่ภายใต้ใบอนุญาต MIT ดู LICENSE
สำหรับข้อมูลเพิ่มเติม